Лекция 4 ПАЗИ.Smartcard.pptx
- Количество слайдов: 6
LOGO Смарт – карты. Протоколы передачи данных Лекция № 4
Протоколы передачи данных ISO 7816 -3 Протоколы: • Т=0 • Т=1 Протокол типа Т = 0 – передача символов, всегда однонаправленный, осуществляется с помощью команд, структура которых имеет вид: class INStruction P 1 P 2 P 3 Optional Data P 1, P 2 – параметры определенной команды, если P 3 = 0, то предполагается, что длина передаваемой информации – 256 байт. Optional Data – для команды записи данных. Возвращаемые данные Optional Data SW 1 SW 2 SW 1, SW 2 – статус выполняемых команд. SW 1 = 90 h, SW 2 = 00 h – успешное завершение. Если осуществляется команда чтения данных, то Optional Data предназначается для считывания данных.
Протоколы передачи данных ISO 7816 -3 (2) Протокол типа Т = 1 – блочная передача данных, т. е. передаваемые блоки символов помещаются в специальную оболочку. При этом можно осуществить следующие операции: • Контроль передачи; • Сцепление блоков символов; • Коррекция ошибок. В терминах приложений данные определяют операции: работа с файлами, команды аутентификации, команды изменения прав доступа и команды криптографических преобразований. NAD (указывается адрес источника и приемника) PCB LEN (для контроля) (длина) EDC INF (блок коррекции ошибок) Т = 1 отличатся от Т = 0 тем, что информацию можно передавать поблочно, а не посимвольно, и облекать их в оболочки.
Поля протокола передачи T=1 Поле NAD (Node Address Destination) – адрес точки назначения. Отводится 1 байт, он состоит из двух полубайт: источник и приемник. Источником является приложение, приемником – карта. Поле PCB (Protocol Control Byte) – контрольный байт протокола. Содержит информацию, необходимую для контроля передачи. Существует 3 вида PCB: • I-block – информационный блок – передача информации (данных и команд), пересылка пойдет поблочно. • R-block – блок готовности к приему, сигнализирует о том, что пойдет пересылка цепочки блоков. • S-block – блок контроля – для обмена контрольной информацией между считывателем и карточкой, а также информация о правильности приема блоков данных. Поле LEN – число байт, которые находятся в поле INF. Поле INF – информационное поле, содержит данные и команды, которые необходимо переслать карточке или данные, получаемые от карточки. Поле EDC (Error Detection Code) – блок коррекции ошибок.
Протокол ISO 7816 -4 Связан с прикладным уровнем передачи информации, межиндустриальные команды для обмена данными между картами различных производителей. CLA INS Le P 1 P 2 Данные Lc Заголовок описывает класс команды и тип передаваемой инструкции. Параметры P 1 и P 2 характеризуют конкретный тип команды. Данные. Максимальный размер 255 байт. Поле Le – длина передаваемых на карточку данных. Поле Lc – количество считываемых байтов с карточки. Выдается карточкой Данные SW 1 SW 2 • • SW 1, SW 2 – статус, ситуация. Данные. Считываются с карточки, определяется Lс. Максимальный размер 255 байт. Команды уровня ISO 7816 -4 позволяют: Стереть байты из файла на карточке Выбрать файл Получить ответ Получить данные Записать байты в текущий файл Получить от карты случайное число (важно для аутентификации) Внешняя аутентификация Внутренняя аутентификация
Некоторые стандартные байты состояния SW 1 SW 2 Описание 9 0 0 0 Нормальное прохождение команды 6 1 * * 6 2 0 0 Нормальное прохождение данные для чтения Информация отсутствует. 6 2 8 1 Часть возвращаемых данных может быть повреждено. 6 7 0 0 Неправильная длина. 6 9 8 2 Не соответствующее состояние безопасности. 6 9 8 6 Команда не поддерживается. 6 А * * Неправильные параметры P 1, P 2. 6 А 8 2 Файл не найден. 6 Е 0 0 Класс не поддерживается. команды. Доступны


