2

ご存じのとおり、次のようなツールを使用して、Java Card に常駐するアプレットを一覧表示できGlobalPlaformProます。

GP: gp -list
AID: A000000003000000 (|........|)
     ISD OP_READY: Security Domain, Card lock, Card terminate, Default selected
 CVM (PIN) management

AID: 010203040506 (|......|)
     App SELECTABLE: (none)

AID: 0102030405 (|.....|)
     Exe LOADED: (none)

GP:

質問は次のとおりです。

  1. これらのアプレットはカードのどこにありますか? ( MF? またはDF? 内)
  2. 誰が選ぶ?(アプレットがインストールされるディレクトリ)
  3. カードのAIDと他のMFすべての およびを表示する方法はありますか?EFDF
  4. 私の現在のディレクトリは何ですか? 変更できますか?
  5. そして、どうすれば作成できますDFか?

DF以下に定義されているコマンドに関してを作成しようとしましたISO7816-part9が、エラーしか表示されません!

ここに画像の説明を入力

GP: gp -s 00e00000 -d -v
# Detected readers from SunPCSC
[*] ACS CCID USB Reader 0
SCardConnect("ACS CCID USB Reader 0", T=*) -> T=0, 3Bxxxxxxxxxxxxxxxxxxxxxx
SCardBeginTransaction("ACS CCID USB Reader 0")
Reader: ACS CCID USB Reader 0
ATR: 3Bxxxxxxxxxxxxxxxxxxxxxx
More information about your card:
    http://smartcard-atr.appspot.com/parse?ATR=3Bxxxxxxxxxxxxxxxxxxxxxx

A>> T=0 (4+0000) 00A40400 00
A<< (0018+2) (60ms) 6F108408A000000003000000A5049F6501FF 9000
Auto-detected ISD AID: A000000003000000
A>> T=0 (4+0008) 80500000 08 78FF1563FF46D23B
A<< (0028+2) (166ms) 0000116001008A790AF9FF020138983B77E636B6C12237B087216130 90
00
Host challenge: 78FF1563FF46D23B
Card challenge: 0138983B77E636B6
Card reports SCP02 with version 255 keys
Master keys:
Version 0
ENC: Ver:0 ID:0 Type:DES3 Len:16 Value:404142434445464748494A4B4C4D4E4F
MAC: Ver:0 ID:0 Type:DES3 Len:16 Value:404142434445464748494A4B4C4D4E4F
KEK: Ver:0 ID:0 Type:DES3 Len:16 Value:404142434445464748494A4B4C4D4E4F
Sequnce counter: 0138
Derived session keys:
Version 0
ENC: Ver:0 ID:0 Type:DES3 Len:16 Value:4544C6282153F89C2144A2C49784FCC3
MAC: Ver:0 ID:0 Type:DES3 Len:16 Value:017010873EFEC7A838D54C06A9AC2B40
KEK: Ver:0 ID:0 Type:DES3 Len:16 Value:A719298F33D1FECCD89334BA93FC3E70
Verified card cryptogram: C12237B087216130
Calculated host cryptogram: C1CF507F2B48CAEA
A>> T=0 (4+0016) 84820100 10 C1CF507F2B48CAEA7FFA4D851F5C0B1D
A<< (0000+2) (86ms) 9000
A>> T=0 (4+0008) 04E00000 08 08C1F21746AB8A16
A<< (0000+2) (24ms) 6E00
SCardEndTransaction()
SCardDisconnect("ACS CCID USB Reader 0", false)

GP: gp -s 00e000000a003400010101ffff0080 -d -v
# Detected readers from SunPCSC
[*] ACS CCID USB Reader 0
SCardConnect("ACS CCID USB Reader 0", T=*) -> T=0, 3Bxxxxxxxxxxxxxxxxxxxxxx
SCardBeginTransaction("ACS CCID USB Reader 0")
Reader: ACS CCID USB Reader 0
ATR: 3Bxxxxxxxxxxxxxxxxxxxxxx
More information about your card:
    http://smartcard-atr.appspot.com/parse?ATR=3Bxxxxxxxxxxxxxxxxxxxxxx

A>> T=0 (4+0000) 00A40400 00
A<< (0018+2) (55ms) 6F108408A000000003000000A5049F6501FF 9000
Auto-detected ISD AID: A000000003000000
A>> T=0 (4+0008) 80500000 08 1B81F8C4D44CC86A
A<< (0028+2) (166ms) 0000116001008A790AF9FF0201391213E503ADE77D8CC6A546AE3537 90
00
Host challenge: 1B81F8C4D44CC86A
Card challenge: 01391213E503ADE7
Card reports SCP02 with version 255 keys
Master keys:
Version 0
ENC: Ver:0 ID:0 Type:DES3 Len:16 Value:404142434445464748494A4B4C4D4E4F
MAC: Ver:0 ID:0 Type:DES3 Len:16 Value:404142434445464748494A4B4C4D4E4F
KEK: Ver:0 ID:0 Type:DES3 Len:16 Value:404142434445464748494A4B4C4D4E4F
Sequnce counter: 0139
Derived session keys:
Version 0
ENC: Ver:0 ID:0 Type:DES3 Len:16 Value:F02DB909386D90DA638ACA4AB92501E1
MAC: Ver:0 ID:0 Type:DES3 Len:16 Value:FD6A2A492566BDE1940C54127C022126
KEK: Ver:0 ID:0 Type:DES3 Len:16 Value:98FAA5CF01E133557688FD90E1571FAC
Verified card cryptogram: 7D8CC6A546AE3537
Calculated host cryptogram: 14C22B8CE836A4D4
A>> T=0 (4+0016) 84820100 10 14C22B8CE836A4D4C2F1C20A8CD56F8C
A<< (0000+2) (85ms) 9000
A>> T=0 (4+0018) 04E00000 12 003400010101FFFF0080B9174FA320EEC470
A<< (0000+2) (24ms) 6E00
SCardEndTransaction()
SCardDisconnect("ACS CCID USB Reader 0", false)

GP:

目的のファイルを作成できないのはなぜですか?

4

1 に答える 1

4

これらのアプレットはカードのどこにありますか? (MFかDFか?)

各 Java Card アプリケーションを MF の直下の DF と見なします。ただし、Java Card は ISO 7816-4 ファイル システムの概念の一部しか利用していないこと、および MF 自体がデフォルトで選択可能であるとは限らないことに注意してください。

誰が選ぶ?(そこにアプレットがインストールされたディレクトリ)

Java Card 仕様は、これを部分的に定義しています (SELECT (AID による) コマンドの定義方法を通じて; Java Card がファイル システムの概念を利用しないこと以外は)。

MF の AID とカードの他のすべての EF と DF を確認する方法はありますか?

API の観点からは、DF 名のみが AID になることができます。AID は、特定の形式に準拠した DF 名であると考えてください。MF と EF にはファイル ID があります。ただし、Java カードにはファイル システムの概念がないため、デフォルトではアドレス指定可能な MF、EF はありません (アプレット コードを使用してこの機能をエミュレートできます)。したがって、Java Card 上にある唯一のリスト可能なコンポーネントは、アプレットとアプレット パッケージです (これらは、カードのグローバル プラットフォーム カード管理を通じてリスト可能であることが既にわかっています)。

私の現在のディレクトリは何ですか? 変更できますか?

上記を参照。ファイルシステムの概念なし -> 「現在のディレクトリ」の概念なし。アプリケーション (選択したアプレット) 内にいる場合、アプレットはファイル システムをエミュレートできます。その場合、「現在の」ディレクトリなどはアプレットの実装に依存します。

どうすればDFを作成できますか?

アプレットをインストール (および選択可能にする) する。

于 2015-03-12T07:18:05.940 に答える