問題タブ [jcop]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
smartcard - NXP には Java カードがありますか?
NXP Web サイトに「JCOP」または J2A040 や j3d081 などの用語に関する検索結果がないのはなぜですか? Java Card の開発を開始し、次の名前の市場で Java Card を見つけたい
- JCOP21-72
- J2A040 NXP Java ベースのスマート カード、40k EEPROM
- jcop31
- jcop41
- ...
ただし、NXP Web サイトの用語は次のとおりです。 - SmartMX、MIFARE DESFire など、または - P5CC021、P5CC040、P5CC073、P5CC080、P5CC144
なぜ市場とメーカーはこのように異なる用語を使用するのでしょうか?
アップデート:
SmartMX を購入した場合、OS は付属していますか? NXP がプログラムするのは OS ですか、それともベンダーですか? 私はそれを自分で行うことができますか?
各 JCOP OS の詳細な仕様はどこにありますか?
eclipse - JCOP の再起動後に DF が失われる?
私は小さな発券プロトタイプに取り組んでいます。私がやりたいことは、最上位の ADF が選択されている場合、含まれているすべての DF の AID を返したいということです。一見すると、非常にうまく機能します。
ADF と 1 つまたは 2 つの DF を作成します。ADF が選択されると、それらの DF の AID が正常に返され、EF (または DF) を追加できます...
全体を再起動すると (私は JCOP を使用しています)、ADF を選択することはできますが、DF からの AID は返されなくなりました。
私のデータ構造の場合 - 最初に、親を持たない ADF の最小限のコンストラクターが表示されます。
2 番目の構造は同じですが、parentDirectoryFile と Elementary Files の配列 (arrayFiles) を持つ「通常の」DirectoryFile の場合です。
どちらも同じ File.class から継承します
これは非常に基本的なファイルシステムである必要があり、カードが端末に接続されている限り機能しますが、プログラムの再起動後に情報が失われるようですが、一時的な配列はまったく使用していません。
戻りコードは常に「6F00 - 正確な診断なし」であり、参照されていない byte[] またはそのようなものにつながります。これは、新しいオブジェクトが作成されたときにインスタンス化される DF オブジェクト以外は見つかりません。
編集:それがより「一般的な」問題である可能性があることがわかりました。それが私が間違っていることです。
ここで、http: //umer555.wordpress.com/2012/05/17/java-card-hello-world-applet/のような「Hello World」を取得し、ここで行ったように INS を追加すると:
したがって、これは私の目には「Hello World」または「Hi World」を保存する必要がhelloWorld
あり、INS2 を使用すると、どちらが保存されているかを示すことができます。しかし、プログラムを再起動するたびに、helloWorld
開始のために空になりますよね? 結局のところ、それが私の問題である可能性がありますか? もしそうなら、どうすれば解決できますか?
javacard - NXP SmartMX カードのライフサイクル管理
NXP から多数の SmartMX デュアル インターフェイス カードを入手し、JCOP ツールをダウンロードしてセットアップしました。Java カード アプレットを NetBeans から Eclipse に移行するのはかなり簡単でしたが、コンパイル済みのアプレットをカード自体にインストールするのはかなり難しいことがわかりました。これらのサンプル カードでセキュリティ ドメイン アプレットを選択できません。これはカードの状態と関係があると思います。NXP は私にトランスポーテーション キーを提供し、最初になんらかの方法で融合せずにカードを敷地外に持ち出すことを固く禁じています。. 私は ACS カード (つまり、ACOS3) を扱ってきましたが、これらの SmartMX カードは、アプレットのアップロードやパーソナライゼーションを許可しないライフサイクルの状態にあると推測しています。私の問題は、NXP DocStore および Web で JCOP ライフサイクルに関するドキュメントを見つけることができないことです。私が探しているものを説明するのに最も近い唯一の文書は、GlobalPlatform Card Specification 2.2というタイトルの PDFであり、GP 2.2 と互換性のあるカードには少なくとも 5 つの異なる状態があると書かれています: OP_READY
、INITIALIZED
、SECURED
、CARD_LOCKED
およびTERMINATED
。その文書は、トランスポーテーション キーの使用を指定していません。
私の質問は、このトランスポーテーション キーを使用して、カードのステータスを から または に変更するにはどうすれOP_READY
ばよいですINITIALIZED
かSECURED
?
smartcard - Visa2 の主要な多様化と JCOP ツール
私は、SCP が 01 であり、重要な多様化アルゴリズムが Visa2 であるとサプライヤーが主張する Java カードをたくさん持っています。この 2 日間、JCOP ツールを使用して認証を試みましたが、うまくいきませんでした。
私が理解していることから、AID を選択した後、init-update
コマンドの応答は KEYDATA であり、KMC を使用して ENC、DEC、および MAC キーを生成するために使用する必要があります。しかし面白いことに、SW12 = 0x9000
に応答して 28 バイトのデータを取得してもinit-update
、JCOP ツールは次のように言います。
jcshell: エラーコード: -5 (認証失敗)
jcshell: APDU の応答が正しくありません
私の質問は、JCOP ツールには Visa2 鍵多様化アルゴリズムのサポートが組み込まれているのでしょうか? また、そうでない場合、Visa2 アルゴリズムを使用して ENC、DEC、および MAC キーを生成するための適切なイベント シーケンスは何ですか?
smartcard - JCOP アプレットのアップロードに関するリーダーの問題
私はかなり長い間、SCM SDI 010 Reader と組み合わせて JCOP Tools をうまく使用してきました。今カード リーダーを変更しようとしたとき、他のリーダー (SCM SCL 011 など) では、アップロード コマンドが応答 6D00 で失敗したことに気付きました (ロード用の GP インストール)。
=> 80 E6 02 00 13 06 64 65 2E 62 64 72 08 A0 00 00 01 51 00 00 00 00 00 00 00 (29683 秒)
<= 6D 00
ステータス: INS 値はサポートされていません
私は多くのことを試みましたが、成功しませんでした。
何か案は?
eclipse - Eclipse JCOP ツール エラー - 「ラベル Label の定義がありません: 15659979、ブロック 230、def null」
私は JavaCard アプレットに取り組んでいますが、私の NXP JCOP Tools Eclipse プラグインで奇妙なエラーに直面しています:
「ラベル ラベルの定義がありません: XXXXXXXX, , ブロック XXX, def null」.
それが何を意味するのか分かりますか?Eclipse はパッケージ名に下線を付けますが、パッケージ名が正しく、クラスが正しいパッケージに含まれていることは間違いありません。プロジェクト全体で他にエラーはありません (上記の 11 個のエラーのうち、「ラベル Label の定義がありません: ...」タイプの 2 個と、これら 2 個が直接原因である他の 9 個のエラーがあります)。プロジェクトをクリーンアップして更新し、すべてのバイナリを削除しようとしましたが、役に立ちません。
「タイプ」列には、「com.ibm.bluez.jcop.eclipse.jcopmarker」があります。
私のEclipseバージョン: バージョン: 4.2.2 ビルドID: M20130204-1200
smartcard - JCOP カードにアプレットをリストする方法は?
デュアル インターフェイス Java カードを使用しており、カードから以下の情報を取得します。
連絡先インターフェース - ATR =3B F8 13 00 00 81 31 FE 45 4A 43 4F 50 76 32 34 31 B7
非接触インターフェース - ATR =3B 88 80 01 4A 43 4F 50 76 32 34 31 5E
ネットでATRを検索したところ、連絡先インターフェースがNXP JCOP CJ3A080v241であることがわかりました
しかし、コンタクトレス ATR を検索しても何も得られません。
今質問:
- 1- 非接触インターフェイス (および接触インターフェイスも含む) に関する情報、およびこのカード (デフォルトのキー、アプレット、コマンド、および ISD AID) に関するすべての情報を取得するにはどうすればよいですか?
- 2- GPJ を使用してアプレットのリストを提供できないのはなぜですか?
GPJ出力:
- 3- JCOPカード用のツールの名前を教えてください。
注 : 私は ACR38 と ACR122U カード リーダーを持っています。
smartcard - JCOP のセキュリティ ドメインの AID と「Card Not Fused」または「Not Pre-Personalized」の意味
ここからJCOP Mangerという名前のソフトウェアをダウンロードして、CJ3A080 jcop Java カードを処理します。
それは私のカードを正しく認識します。しかし、アプレットをインストールまたはリストすることはできません! なぜ?
このソフトウェアの出力:
CardTool (APDU をカードに送信するために使用するソフトウェア) を使用して ISD を選択しようとしましたが、以下に示すように、カードに見つからない一般的な AID はありません。
CardToolの出力形式は以下のとおりです。
したがって、これはCardToolの出力です:
gp.exeツールも試してみました。これがその出力です。
質問は次のとおりです。
- 1-これはどういう意味ですか? 「融合されていない(事前にパーソナライズされていない)」
- 2- どのようにカスタマイズできますか?
- 3- カードが融合したかどうかをどのように確認できますか?
- 4- セキュリティ ドメインの AID とは?
これらは互いに密接に関連しているため、これら4つの質問すべてを1つのトピックで質問しました