7

次の ATR を持つスマート カードを持っています。

ATR = 3B 9E 94 80 1F 42 80 31 00 73 BE 21 10 66 54 59 53 04 4C 25 CF.

atr-parse.appspot.comの出力に基づいて、 MCI (Mobile Communication Company of Iran) SIM カードであることがわかりました。

これらは、Historical Bytes から得た情報です。

(コンパクト TLV データ オブジェクト)

Tag: 3, Len: 1 (カードサービスデータバイト)

カードサービスデータバイト: 0

  • EF.DIR および EF.ATR アクセス サービス: GET RECORD(s) コマンドによる

  • MF付カード

タグ: 7、レン: 3 (カード機能)

選択方法:190

  • レコード番号対応

  • 短い EF 識別子がサポートされています

  • 暗黙の DF 選択

  • ファイル識別子による DF の選択

  • パスによる DF 選択

  • 完全な DF 名による DF の選択

データコーディングバイト: 33

  • 書き込み関数の動作: 独自仕様

  • BER-TLV タグ フィールドの最初のバイトの値「FF」: 有効

  • カルテットのデータ単位: 1

コマンド チェーン、長さフィールド、および論理チャネル: 16

  • 論理チャネル番号の割り当て: カードによる

  • 論理チャネルの最大数: 1

Tag:6、Len:6(発行前データ)

データ: 54 59 53 04 4C 25 "TYS.L%"

上記のように、カードにはMF.

問題は、このカードで何もできないことです。最初のステップでは、その内容をリストします。TS 11.11TS 102.221、TS 131.102、およびTS 151.011の仕様を調べました。

上記のドキュメントから私が理解している限り、カードのシステム ファイルは、Master Fileその AID3F00といくつかの DF-s および EF-s で構成されています。たとえば、TS 151.011仕様の下の表に基づいて、いくつかの DF-s を選択しようとしました。

ここに画像の説明を入力

これらは結果です:

Connected to RTP CCID USB Reader 0
ATR: 3B 9E 94 80 1F 42 80 31 00 73 BE 21 10 66 54 59 53 04 4C 25 CF

> APDU
> A0 A4 04 00 02 5F 30
< 6A 82

> APDU
> A4 A4 04 00 00
< 6E 00

> APDU
> A0 A4 04 00 00
< 67 00

> APDU
> 00 A4 04 00 00
< 61 13

> APDU
> 00 C0 00 00 13
< 6F 11 84 09 A0 00 00 00 62 03 01 08 01 A5 04 9F 65 01 FF
< 90 00

> APDU
> 00 A4 04 00 09 A0 00 00 00 62 03 01 08 01
< 61 13

> APDU
> A0 A4 04 00 09 A0 00 00 00 62 03 01 08 01
< 6E 00

> APDU
> 00 A4 04 00 09 A0 00 00 00 62 03 01 08 01
< 61 13

> APDU
> 00 C0 00 00 13
< 6F 11 84 09 A0 00 00 00 62 03 01 08 01 A5 04 9F 65 01 FF
< 90 00

> APDU
> 00 A4 04 00 02 3F 00
< 6A 82

> APDU
> A0 A4 04 00 02 3F 00
< 6E 00

上記のように、私はそれらすべてに失敗し、ISD の AID のみを見つけることができました。

GlobalPlatformProツールでもコンテンツを一覧表示しようとしましたが、カードが Initial Update APDU コマンドをサポートしていないようです:

C:\Users\User\Desktop\today>java -jar gp.jar -visa2 -key 47454D5850524553534F53414D504C45 -unlock -list -v -d -i
# Detected readers from SunPCSC
[*] RTP CCID USB Reader 0
SCardConnect("RTP CCID USB Reader 0", T=*) -> T=0, 3B9E94801F4280310073BE211066545953044C25CF
SCardBeginTransaction("RTP CCID USB Reader 0")
Reader: RTP CCID USB Reader 0
ATR: 3B9E94801F4280310073BE211066545953044C25CF
More information about your card:
    http://smartcard-atr.appspot.com/parse?ATR=3B9E94801F4280310073BE211066545953044C25CF

A>> T=0 (4+0000) 00A40400 00
A<< (0019+2) (249ms) 6F118409A00000006203010801A5049F6501FF 9000
Auto-detected ISD AID: A00000006203010801
***** Card info:
A>> T=0 (4+0000) 80CA9F7F 00
A<< (0000+2) (73ms) 6A86
GET DATA(CPLC) returned SW: 6A86
NO CPLC
***** CARD DATA
A>> T=0 (4+0000) 80CA0066 00
A<< (0000+2) (81ms) 6E00
NO CARD DATA
***** KEY INFO
A>> T=0 (4+0000) 80CA00E0 00
A<< (0000+2) (82ms) 6E00
A>> T=0 (4+0000) 00CA00E0 00
A<< (0000+2) (60ms) 6E00
GET DATA(Key Information Template) not supported
A>> T=0 (4+0008) 80500000 08 FE44F8E8DF60349B 00
A<< (0000+2) (61ms) 6D00
pro.javacard.gp.GPException: INITIALIZE UPDATE failed SW: 6D00
        at pro.javacard.gp.GlobalPlatform.check(GlobalPlatform.java:1092)
        at pro.javacard.gp.GlobalPlatform.openSecureChannel(GlobalPlatform.java:398)
        at pro.javacard.gp.GPTool.main(GPTool.java:371)

C:\Users\User\Desktop\today> 

何が悪いのか知りたいですか?この SIM カードに Java カード アプレットをインストールするにはどうすればよいですか?

私はすでに Java Card でうまく機能していることに注意してください。しかし、私はこれらの種類の SIM カードについて完全に混乱しています。誰でもこの問題に光を当てることができて感謝しています。よろしく。

4

2 に答える 2

1

Initialize Update コマンドの最後のログによると、いくつかの可能性があります。 1. Scp02/Scp03 はカードでサポートされていません。2. ISD が SCP でサポートされているパラメータで構成されていません。3. カード上の同じ論理チャネルで以前に進行中の別のセキュア チャネルがあります。

私の見解では、最後の 2 つの可能性があります。

3 番目のものを確認するには、次の一連の手順で Scp02 の起動を試行する必要があります。 1. コールド リセット (電源オン-電源オフ) を送信します。 2. ISD を選択します。

それが機能しない場合は、ISD アプリケーション パラメータの情報が必要です。これらのパラメータから、ISD が SCP02/03 をサポートしているかどうかを識別できますか?

これらのパラメーターは次のようになります: 'C9 04 81 02 XX YY' (ここでは XX がサポートする SCP と YY パラメーターは SCP の 'i' 値です)。

于 2015-07-02T18:23:07.323 に答える