1

私はJavaカード開発に不慣れです.jcop 31(36k)カードとscl010リーダーを持っています.eclipse用のjcopプラグインをインストールしています.(jcopシェルを使用して)シミュレーターでhelloworld Javaアプレットを実行すると正常に動作します. .cap ファイルをカードにアップロードします。.cap ファイルをアップロードして、リーダーでアプレットを実行する方法だと思いました (従ったプロセスを添付した最善の方法かどうかはわかりません)。capファイルをロードすると、このエラーが発生します

 **upload -b 250 "C:\Projects\Javacard\MytestThree\bin\hms\javacard\testthree\javacard\testthree.cap"
 => 80 E6 02 00 15 08 6D 79 61 70 70 6C 65 74 08 A0    ......myapplet..
    00 00 00 03 00 00 00 00 00 00 00                   ...........
 (26209 usec)
 <= 00 90 00                                           ...
Status: No Error
 => 80 E8 00 00 FA C4 82 01 65 01 00 29 DE CA FF ED    ........e..)....
    02 02 04 00 01 08 6D 79 61 70 70 6C 65 74 16 68    ......myapplet.h
    6D 73 2F 6A 61 76 61 63 61 72 64 2F 74 65 73 74    ms/javacard/test
    74 68 72 65 65 02 00 21 00 29 00 21 00 10 00 0B    three..!.).!....
    00 2E 00 0E 00 7F 00 18 00 12 00 00 00 71 02 F0    .............q..
    00 02 00 01 00 0B 01 01 00 04 00 0B 01 02 01 07    ................
    A0 00 00 00 62 01 01 03 00 10 01 0C 6D 79 61 70    ....b.......myap
    70 6C 65 74 2E 61 70 70 00 08 06 00 0E 00 00 00    plet.app........
    80 03 00 FF 00 07 01 00 00 00 1C 07 00 7F 00 01    ................
    10 18 8C 00 03 7A 05 30 8F 00 09 3D 8C 00 06 18    .....z.0...=....
    1D 04 41 18 1D 25 8B 00 02 7A 02 23 18 8B 00 01    ..A..%...z.#....
    60 03 7A 19 8B 00 05 2D 1A 03 25 11 00 FF 53 5B    `.z....-..%...S[
    32 1A 04 25 11 00 FF 53 5B 29 04 1F 10 80 6A 08    2..%...S[)....j.
    11 6E 00 8D 00 00 16 04 73 00 10 FF 80 FF 80 00    .n......s.......
    09 18 19 8C 00 07 70 08 11 6D 00 8D 00 00 7A 05    ......p..m....z.
    22 19 8B 00 05 2D 7B 00 0A 92 32 7B 00 0A 03 00    "....-{...2{....
 (779869 usec)
 <= 6A 80                                              j.
Status: Wrong data
jcshell: Error code: 6a80 (Wrong data)
jcshell: Wrong response APDU: 6A80
Unexpected error; aborting execution**

誰が何が間違っているのか教えてもらえますか?参考にしてください!

4

1 に答える 1

1

-b 230代わりに試してみてください。-b 250グローバル プラットフォーム チャネルが完全にプレーンな場合は機能しますが、コマンド データに 8 バイトの MAC が含まれている場合は、コマンド データの合計サイズが250 + 8 = 258になります。これは、サポートされている最大 255 バイトを超えています。

6A80間違ったデータは、非常に多くのことを意味する可能性があることに注意してください。たとえば、間違ったターゲット プラットフォームに対してコンパイル/変換した場合、同じメッセージが表示されることがあります。ISO 7816-4 ステータス ワードは、その点ではあまり役に立ちません。いくつかの構文エラーが表示される場合がありますが、通常、セマンティック エラーはこれらの構文エラーにも含まれます。

于 2013-07-02T22:54:18.333 に答える