Мне удалось подключиться по протоколу T = 1 Согласно документации ISO / IEC 7816-3 Чтобы получить ответ в цепочке, мы должны проверить PCB (байт управления протоколом) Prologue поле. PCB указывает тип принимаемого блока:
- I-блок - если он начинается с байта 0XXXXXX
- R-блок - если он начинается с байта 10XXXXX
- S -block - если он начинается с байта 11XXXXX
Полученные данные состоят из данных заголовка и данных, обернутых TPDU:
1.
80 24 00 00 00 00 06 00 00 00
00 20 20 76 72 30 81 98 00 81 98 00 00 00 85 80 20 00 23 80 00 00 00 00 00 00 00 00 20 20 06 03 54 19 15 ef
Обернутые данные TPDU состоят из: поля пролога; Поле ИНФО (необязательно); Поле эпилога.
Поле пролога: 002020
Информационное поле: 76723081980081980000008580200023800000000000000020200603541915
Поле эпилога: ef - контрольная сумма
Поле пролога состоит из NAD 00 + PCB 20 + LEN 20
NAD: 0x00 PCB: 0x20 = 00100000 LEN: 0x20 - длина информационного поля
Как мы видим, тип блока - I-Block. Бит 6 печатной платы I-блока указывает, что есть дополнительные данные, которые необходимо запросить. Чтобы получить другие данные, мы должны отправить подтверждение R-блока
RCB 100-N (R) -0000, где N (R ) - порядковый номер запрашиваемых данных (0x80 или 0x90)
Данные для отправки:
6f 08 00 00 00 00 06 00 00 00 00 80 00 80