Под моим предположением, что ваш JavaCard использует рамки Глобальной платформы (что почти каждый JavaCard делает), необходимо выполнить следующие действия:
- Выберите CardManager
- Идентифицироваться
- Удалить апплет
Возможно, вам удалось сделать первый шаг, хотя выбор Cardmanager по его AID - лучший способ пойти. Второй шаг выглядит немного странно для меня из того, что вы опубликовали. Третий шаг тоже выглядит хорошо.
Для аутентификации существуют различные протоколы, например. SCP01, SCP02 и т. Д. SCP02 является стандартом де-факто для современных карт. Тогда, конечно, вам также нужны правильные ключи для аутентификации, поскольку для большинства открываемых карт есть ключи по умолчанию, которые у вас уже есть. Точная процедура объясняется в спецификации Global Platform. Бревно образца из моего инструмента выглядит следующим образом:
=> 00 A4 04 00 08 A0 00 00 01 51 00 00 00 00 .........Q....
(9407 usec)
<= 6F 64 84 08 A0 00 00 01 51 00 00 00 A5 58 9F 65 od......Q....X.e
01 FF 9F 6E 06 47 91 23 47 41 00 73 49 06 07 2A ...n.G.#GA.sI..*
86 48 86 FC 6B 01 60 0B 06 09 2A 86 48 86 FC 6B .H..k.`...*.H..k
02 02 02 63 09 06 07 2A 86 48 86 FC 6B 03 64 0B ...c...*.H..k.d.
06 09 2A 86 48 86 FC 6B 04 02 55 65 0B 06 09 2B ..*.H..k..Ue...+
85 10 86 48 64 02 01 03 66 0C 06 0A 2B 06 01 04 ...Hd...f...+...
01 2A 02 6E 01 02 90 00 .*.n....
Status: No Error
cm> set-key 255/1/DES-ECB/404142434445464748494a4b4c4d4e4f 255/2/DES-ECB/404142434445464748494a4b4c4d4e4f 255/3/DES-ECB/404142434445464748494a4b4c4d4e4f
cm> init-update 255
=> 80 50 00 00 08 7D 62 4D F4 89 F6 07 E3 00 .P...}bM......
(55368 usec)
<= 00 00 42 87 00 17 97 93 24 74 FF 02 00 01 3C 2B ..B.....$t....<+
97 86 B8 3B 57 0A D0 9F 82 BF AD C2 90 00 ...;W.........
Status: No Error
cm> ext-auth plain
=> 84 82 00 00 10 EA 1A 9D A0 24 E6 00 9E F8 84 96 .........$......
1A 77 71 46 B4 .wqF.
(56879 usec)
<= 90 00 ..
Status: No Error
cm> delete ff4563686f4170706c6574
=> 80 E4 00 00 0D 4F 0B FF 45 63 68 6F 41 70 70 6C .....O..EchoAppl
65 74 00 et.
(956894 usec)
<= 00 90 00 ...
Status: No Error
Как вы не хотите, чтобы выполнить все криптографический протокол самостоятельно есть инструменты там, которые делают работу за вас. Самый лучший бесплатный инструмент, на мой взгляд, - GlobalPlatformPro от Martin Paljek. Помните, что есть много других инструментов, которые могут быть устаревшими.