人気の「Hello World」javacard コードの .cap ファイルを Eclipse で作成しました
そして今、GPShell と ACR38 スマート カード リーダーを介して実際の javacard にロードしたいと考えています。
質問: カードに .cap ファイルをロードするために何かキーが必要ですか? つまり、アプレットをカードにアップロードする前に認証する必要がありますか、それとも必要ありませんか? 認証は必須だと思います。認証なしで .cap をアップロードするのは不合理です。しかし、認証方法がわかりません。質問: これのどこが間違っていますか?
C:\Users\ghasemi>java -jar e:\gpj\gpj.jar -load e:\helloWorld.cap -install
Found terminals: [PC/SC terminal ACS CCID USB Reader 0]
javax.smartcardio.CardException: connect() failed
at sun.security.smartcardio.TerminalImpl.connect(Unknown Source)
at net.sourceforge.gpj.cardservices.GlobalPlatformService.main(Unknown S
ource)
Caused by: sun.security.smartcardio.PCSCException: SCARD_E_SHARING_VIOLATION
at sun.security.smartcardio.PCSC.SCardConnect(Native Method)
at sun.security.smartcardio.CardImpl.<init>(Unknown Source)
... 2 more
Found card in terminal: ACS CCID USB Reader 0
java.lang.NullPointerException
at net.sourceforge.gpj.cardservices.GlobalPlatformService.main(Unknown S
ource)
C:\Users\ghasemi>java -jar e:\gpj\gpj.jar -load e:\helloWorld.cap -install
Found terminals: [PC/SC terminal ACS CCID USB Reader 0]
Found card in terminal: ACS CCID USB Reader 0
ATR: 3B 7F 94 00 00 80 31 80 65 B0 85 02 02 ED 12 0F FF 82 90 00
DEBUG: Command APDU: 00 A4 04 00 07 A0 00 00 01 51 00 00
DEBUG: Response APDU: 6A 82
Failed to select Security Domain GP211 A0 00 00 01 51 00 00 , SW: 6A 82
DEBUG: Command APDU: 00 A4 04 00 08 A0 00 00 00 18 43 4D 00
DEBUG: Response APDU: 6F 65 84 08 A0 00 00 00 18 43 4D 00 A5 59 73 4A 06 07 2A 8
6 48 86 FC 6B 01 60 0C 06 0A 2A 86 48 86 FC 6B 02 02 01 01 63 09 06 07 2A 86 48
86 FC 6B 03 64 0B 06 09 2A 86 48 86 FC 6B 04 01 05 65 0B 06 09 2B 85 10 86 48 64
02 01 03 66 0C 06 0A 2B 06 01 04 01 2A 02 6E 01 02 9F 6E 06 12 91 20 11 02 02 9
F 65 01 FF 90 00
Successfully selected Security Domain GemaltoXpressPro A0 00 00 00 18 43 4D 00
DEBUG: Command APDU: 80 50 00 00 08 17 2A 53 4F AC DF 8D 16
DEBUG: Response APDU: 69 82
javax.smartcardio.CardException: Wrong initialize update, SW: 69 82
at net.sourceforge.gpj.cardservices.GlobalPlatformService.openSecureChan
nel(Unknown Source)
at net.sourceforge.gpj.cardservices.GlobalPlatformService.main(Unknown S
ource)
tnx