1

セキュリティ クラス ( CipherRandomDataおよびMessageDigest) を使用するアプレットをインストールしようとしていますが、インストールしようとすると常に6F50エラーが発生します。パッケージは正しくロードされていますが、アプレットをインスタンス化できません。コンストラクターですべてのオブジェクトを割り当てており、アルゴリズムはカードでサポートされています (少なくともデータシートによると)。すべてのセキュリティ クラスの参照をコメント アウトすると、アプレットは適切にロードおよびインストールされます。byte[]とを割り当ててみましたがObject、動作するので、これはスペースに関連する問題ではありません (他に何もない 64K カード)。SIM Alliance Loader v2 を使用してアプレットをロードしています。「通常の」(非暗号および STK) アプレットは正常に動作します。

このカードは、Java Card 2.1.1 および Global Platform 2.1.1 のサブセットをサポートします。仕様はこちら: http://shop.shadytel.com/sim_datasheet.pdf

問題が何であるかについてのアイデアはありますか?

4

1 に答える 1

2

カードが通常返すべきではない独自のステータス ワードを返すため、何が問題なのかを判断するのは困難です。6Fxxエラー コードは、ISO/IEC 7816-4 規格の不明なエラーに使用されます。したがって、この値50はスマート カードの実装に固有のものです。ベンダーに連絡してください。

データシートには、非常に限定された Java Card プラットフォームが示されています。次の暗号化アルゴリズムのサポートのみが示されています。

  • DES および TDEA (トリプル DES)
  • 安全な疑似乱数
  • SHA-1

したがって、これらの仕様から外れると、エラーを示すステータス ワードが表示されるはずです。ただし、通常は6A80、コマンド データ内で何かが間違っていることを示します。アプレットのインスタンス化中にエラーが発生するという事実は、コードが受け入れられていることを示していますが、暗号化アルゴリズムの 1 つのインスタンス化または初期化は失敗しています。

適切なデバッグ環境 (Java Card 開発に必須の環境) があれば、Java Cardstatic installメソッドとアプレット コンストラクターをステップ実行できるはずです。

于 2013-09-14T15:46:14.380 に答える