2

リセット後にデフォルトで選択されたアプリケーションが RESET 特権のアプリケーションを持っています。

私のアプリケーションには、カードに対して行われた要求が何であったかを正確に伝えるロギング メカニズムがあります。現在の状態に応じて、いくつかの動的な応答があります。カードスパイで動作確認もしました。

アプリケーションに属さず、カード上の他のアプリケーションと一致しない SELECT を含め、すべての APDU がアプリケーションに正しく転送されています。

ただし、これは、SELECT DF Next Occurrence (A4 04 02) を受信した場合には発生しません。代わりに、次の SW がカードから返されます: 6A85-条件が満たされていません。

これで、カードが何をしているのか理解できました。つまり、指定された同じ AID で現在選択されているアプリケーションがあるかどうかを確認し、同じ ID を持つ次のアプリケーションを選択しようとします。(これは当てはまりません。カードに競合する AID はありません)。

私の質問は次のとおりです。一致するアプリケーションがインストールされていない場合、カード OS はこの APDU を転送すべきではありませんか? これは、アプリケーションが既に選択されている場合の選択の想定される動作です。

別の質問: これを修正/回避する方法はありますか、それとも OS のバグである可能性があると思いますか? それとも、これはまったく当てはまりませんか?

例:

Card Reset

-> 00 A4 04 00 07 AIDx7..
<- My Applet 90 00

-> 00 A4 04 02 07 AIDx7...
<- Card 6A 85

Moves on to other selects
My applet is still selected.

NXP JCOP3 カードを使用しています。

前もって感謝します。

4

1 に答える 1