問題タブ [gemalto]
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.
c++ - WinBioEnrollCommit がエラー 0x80004005 (未特定のエラー) で失敗する
http://msdn.microsoft.com/en-us/library/windows/desktop/dd401620(v=vs.85).aspxの例に従って、指紋をスマート カードに登録しています。
フィンガープリントを取得できますが、WinBioEnrollCommit 中にエラー コード 0x80004005 の「WinBioEnrollCommit に失敗しました」というエラーが表示されます。
サンプルコードをコピーしただけで、他のすべてのサンプルは正常に動作します。
ここで何が欠けていますか?
これらの変更を行うには、スマート カードで認証する必要があると強く感じています。製造元 (gemalto) が提供するソフトウェアを使用する場合、チャレンジ/レスポンスで認証する必要があります。
編集: 既に登録されている指を登録しようとすると、適切なエラー WINBIO_E_DUPLICATE_TEMPLATE が表示されます。
java - ME キーストアから SE キーストアへ
元の SE キーストア ファイルを紛失したため、問題が発生しました。現在、ME キーストアを含む .bin ファイルしかありません。MEキーストアをSEキーストアに戻す方法を知っている人はいますか? SE to ME には、keytool と mekeytool を使用しました。ME から SE への変換に使用する「キー」を知っている人がいれば十分で、ME から SE へのツールがなければ手動で行うことができます。Gemalto BGS5 モジュールのロックを解除できるように、元の ME キーを取得する必要があります。
smartcard - スマート カードは常に 69 99 を返します - コマンドは許可されていません
どのコマンド (APDU) を使用しても (VERIFY であっても)、SW1=69 SW2=99 の応答が得られます。文字通りすべてを試します (デフォルトの PIN の変更、Gemalto MiniDriver Manager を使用した証明書の追加)
誰が何をすべきか考えていますか?これまでのところ、必要なのは単純なことだけです-カードのどこかに2バイトのデータを書き込み、後でそれらを読み取るだけです。こんなに複雑だなんて信じられない!
smartcard - Java Card および Global Platform との安全な接続を開く
エミュレーターでの Java Card 開発に成功した後、現在は実際の Java Card ( Gemalto IDCore 3010 )を扱っています。私はGlobal Platformで経験してきましたが、カード上のアプレットをリストする最も基本的なサンプル コードでも問題があります。
これは元のコードです:
私はこれを変更しましたが、現在は次のようになっています。
Global Platform ページで、これらがopen_scコマンドのスイッチであることがわかります。
しかし残念なことに、これらのスイッチに関する十分な情報を見つけることができませんでした。
- keyind : 私が見つけた唯一の情報は、それがキー インデックスであるということです。
- keyver : 鍵セットのバージョン。同上。
- key : 鍵派生を使用するカードを持っている場合、-keyDerivation オプションで派生モードを有効にする必要があり、-key でマスター (マザー) キーを指定する必要があることを読みました。そこで、ここで母の鍵 (4F454D5850524553534F53414D504C45) を提供しました。
- mac_key : マスター キーから計算されるため、関係ありません。
- enc_key : マスター キーから計算されるため、関係ありません。
- kek_key : マスター キーから計算されるため、関係ありません。
- security : 私が見つけた情報は次のとおりです: 0: クリア、1: MAC、3: MAC+ENC。カードのデータシートにこのようなものが見つからなかったので、「0」を選択しました。
- scp : セキュア チャネル プロトコル (1 SCP01、2 SCP02、デフォルト未設定)。明示的に記載する必要はありません。私のカードは SCP01 と SCP02 の両方をサポートしています。
- scpimpl : セキュア チャネルの実装 (デフォルトでは未設定)。明示的に記載する必要はありません。
- keyDerivation : 可能な値は、「none」、「visa2」、または「emvcps11」です。また、データシートでこれに関する情報を見つけることができなかったので、「なし」にスタックします。
これは、変更されたコードで表示されるエラー メッセージです。
何が問題なのか、open_scコマンドをパラメータ化して実行する方法を教えてもらえますか? どうもありがとうございました!
解決策:これは作業バージョンでした:
c# - C# PInvoke CryptImportKey が「指定された型が無効です」で失敗する
CryptImportKey 関数を使用して PFX を Gemalto .NET IDPrime スマート カートにインポートしようとしていますが、「指定された型が無効です」(2148073482) エラーが発生します。RSACryptoServiceProvider.ExportCspBlob(true) 呼び出しが間違った形式でキーを返していると思われます。http://www.idrix.fr/Root/Samples/PfxImporter.csのサンプル コードを使用しています。注: Microsoft Base Smart Card Crypto Provider の AllowPrivateExchangeKeyImport と AllowPrivateSignatureKeyImport を 0x1 に設定しましたが、変更はありません。Windows Server 2012 を実行していますが、それが問題だとは思いません。
このコード サンプルの何が問題なのか教えてください。
gsm - SIM カードの使用方法 (アプレットのインストール)
次の 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.11、TS 102.221、TS 131.102、およびTS 151.011の仕様を調べました。
上記のドキュメントから私が理解している限り、カードのシステム ファイルは、Master File
その AID3F00
といくつかの DF-s および EF-s で構成されています。たとえば、TS 151.011仕様の下の表に基づいて、いくつかの DF-s を選択しようとしました。
これらは結果です:
上記のように、私はそれらすべてに失敗し、ISD の AID のみを見つけることができました。
GlobalPlatformProツールでもコンテンツを一覧表示しようとしましたが、カードが Initial Update APDU コマンドをサポートしていないようです:
何が悪いのか知りたいですか?この SIM カードに Java カード アプレットをインストールするにはどうすればよいですか?
私はすでに Java Card でうまく機能していることに注意してください。しかし、私はこれらの種類の SIM カードについて完全に混乱しています。誰でもこの問題に光を当てることができて感謝しています。よろしく。
reverse-engineering - Javacard: ATR とプロトコルの変更
ロジック アナライザーでスマート カードのリバース エンジニアリングを行っています。元の SC と同じように応答するようにアプレットを作成しましたが、動作しません。さらに分析した結果、3 つの問題が見つかりました。
1-ATR: ATR を変更する必要があります
2-ATR 通信プロトコル: 理由はわかりませんが、元のスマート カードは標準のように ATR を送信していません (標準では: 偶数パリティ ビット) が、パリティ ビットなしで送信されます。
3-PTS: ATR の後、通信プロトコルを T=0 に設定する必要があります。ボーレートは 210526 で、パリティ (clk=6MHz) ではありません。
1 と 3 が可能であることはわかっていますが、誰がそれを行うべきかわかりません。また、2 番目の問題が解決できるかどうかもわかりません。
Gemalto IDcore30 カードを持っています。Gemalto IDbridge CT30 も持っていますが、ATR を読み取ることができないパリティ ビットの違いのため、元の ATR を読み取ることさえできません。
リンクやヘルプは非常に役立ちます。
ありがとう。
javacard - javacard は配列形式の最初の 1 バイトのみを送信します
私のアプレットには少し問題があります。一部の Java カードでは問題なく動作しますが、他の一部のカードではうまく動作しません。配列を送り返すように書かれていますが、最初のバイトしか送り返しません。さまざまな方法を試しましたが、常に最初のバイトのみが送信されます。カードエラーか、アプリの問題か? 関数の例を次に示します。この関数は正常に機能し、すべてのカードではなく、半分のカードのみに配列全体を送信します!
PS。私は 2 種類の Gemalto カードを使用していますが、そのうちの 1 つはおそらく NFC を備えています。
smartcard - スクリプトを使用して Gemalto Smartcard の PIN を変更する
Gemalto IDPrime .Net カード Smartcard を使用する必要があります。これらの USB ドングルを取得し、PIN を変更する必要があります。
Gemalto は Windows 経由で次のように言います。
http://support.gemalto.com/index.php?id=how_to_change_pin_in_a_idprime#.VWYTWUa8rV8
これは機能しますが、powershell または c# を介して、つまりプログラムの制御下で、新しい PIN/パスワードを設定したいと考えています。それを行う方法または不可能ですか?