ISO 7816
ISO 7816 — это международный стандарт, определяющий физические, электрические, протокольные и командные характеристики смарт-карт (интегральных схемных карт) с контактами. Стандарт разработан и поддерживается Международной организацией по стандартизации (ISO) и Международной электротехнической комиссией (IEC). Он является основой для подавляющего большинства банковских карт, SIM-карт, удостоверений личности и других идентификационных документов, использующих микропроцессорные чипы.
История
Разработка стандарта ISO 7816 началась в 1980-х годах, когда потребовалось унифицировать взаимодействие между смарт-картами и считывающими устройствами. Первая часть стандарта (ISO 7816-1) была опубликована в 1987 году и описывала физические характеристики карт. В последующие годы были выпущены части, регламентирующие расположение контактов (ISO 7816-2), электрические сигналы и протоколы передачи данных (ISO 7816-3), а также структуру команд и ответов (ISO 7816-4). Стандарт постоянно обновляется: последние редакции выходили в 2010-х и 2020-х годах, добавляя поддержку новых протоколов (например, T=1) и расширенных возможностей безопасности.
Структура стандарта
ISO 7816 состоит из нескольких частей, каждая из которых описывает отдельный аспект работы смарт-карт. Наиболее важные части:
- ISO 7816-1: Физические характеристики — размеры, толщина, материал карты, устойчивость к изгибу и температуре.
- ISO 7816-2: Расположение контактов — размеры и положение восьми контактных площадок на карте, их назначение (питание, земля, тактовый сигнал, сброс, данные).
- ISO 7816-3: Электрические сигналы и протоколы передачи — напряжение питания (5 В, 3 В, 1,8 В), тактовая частота, протоколы T=0 (асинхронный полудуплексный) и T=1 (асинхронный блочный).
- ISO 7816-4: Организация, безопасность и команды — структура файловой системы, команды для чтения, записи, верификации PIN-кода, криптографические операции.
- ISO 7816-5: Регистрация идентификаторов приложений — система AID (Application Identifier) для уникальной идентификации приложений на карте.
- ISO 7816-6: Элементы данных для межотраслевого обмена — кодирование информации о держателе карты, эмитенте, сроках действия.
- ISO 7816-7: Команды для структурированных карт запросов-ответов — расширенный протокол для сложных сценариев.
- ISO 7816-8: Команды для безопасности — криптографические операции (шифрование, хеширование, цифровая подпись).
- ISO 7816-9: Команды для управления файлами — создание, удаление, изменение прав доступа к файлам.
- ISO 7816-10: Электрические сигналы и протоколы для синхронных карт — устаревшая часть для карт с последовательным доступом.
- ISO 7816-11: Верификация личности через биометрические данные — интеграция отпечатков пальцев, радужной оболочки и т.д.
- ISO 7816-12: Карты с контактами и бесконтактным интерфейсом — гибридные карты (частично заменён стандартом ISO 14443).
- ISO 7816-13: Команды для управления приложениями в многоприложенческих картах.
- ISO 7816-15: Криптографическая информация — формат хранения сертификатов, ключей и алгоритмов (также известен как PKCS#15).
Физические характеристики
Размеры и форма
ISO 7816-1 определяет три основных формата карт:
- ID-1 (наиболее распространённый): 85,6 мм × 53,98 мм × 0,76 мм — соответствует размеру банковской карты.
- ID-00: 66 мм × 33 мм × 0,76 мм — используется в SIM-картах (mini-SIM).
- ID-000: 25 мм × 15 мм × 0,76 мм — используется в micro-SIM и nano-SIM (последняя не полностью соответствует стандарту).
Карты изготавливаются из пластика (обычно ПВХ или поликарбоната) и должны выдерживать изгиб, скручивание, воздействие температуры от -35°C до +50°C.
Контактная площадка
ISO 7816-2 задаёт расположение восьми контактных площадок (C1–C8) на лицевой стороне карты. Назначение контактов:
- C1 (VCC): напряжение питания (5 В, 3 В или 1,8 В).
- C2 (RST): сигнал сброса — инициализирует чип.
- C3 (CLK): тактовый сигнал — синхронизирует работу чипа.
- C4 (RFU): зарезервирован для будущего использования.
- C5 (GND): земля.
- C6 (VPP): программирующее напряжение — устаревший контакт, в современных картах не используется или используется для других целей.
- C7 (I/O): линия данных — полудуплексная передача данных.
- C8 (RFU): зарезервирован для будущего использования.
Электрические интерфейсы и протоколы
Напряжение и тактовая частота
ISO 7816-3 определяет три класса напряжения:
- Class A: 5 В ± 10% — устаревший, используется в старых картах.
- Class B: 3 В ± 10% — распространён в картах 2000-х годов.
- Class C: 1,8 В ± 10% — современный стандарт для энергоэффективных карт.
Тактовая частота обычно составляет 1–5 МГц, но может достигать 20 МГц.
Протоколы передачи
Стандарт поддерживает два основных протокола:
- T=0: асинхронный полудуплексный протокол с передачей байтов. Используется в большинстве SIM-карт и банковских карт. Карта инициирует обмен, отправляя ответ на команду считывателя.
- T=1: асинхронный блочный протокол, где данные передаются блоками с проверкой целостности (CRC). Используется в более сложных картах, требующих высокой надёжности.
Выбор протокола происходит во время инициализации (процедуры ATR — Answer To Reset).
Командная система (ISO 7816-4)
Структура команд
Команды и ответы передаются с помощью APDU (Application Protocol Data Unit). Команда APDU состоит из:
- CLA: класс команды (например, 0x00 для межотраслевых команд).
- INS: инструкция (например, 0xA4 для выбора файла).
- P1, P2: параметры команды.
- Lc: длина данных, отправляемых карте (опционально).
- Data: данные команды.
- Le: ожидаемая длина ответа.
Ответ APDU содержит:
- Data: ответные данные.
- SW1, SW2: статусные байты (например, 0x90 0x00 — успех, 0x63 0x00 — неверный PIN).
Файловая система
Карта организует данные в виде иерархической файловой системы:
- MF (Master File): корневой каталог.
- DF (Dedicated File): каталоги приложений.
- EF (Elementary File): файлы данных (например, PIN-код, сертификат, баланс).
EF могут быть:
- Transparent: простой массив байтов.
- Linear fixed: записи фиксированной длины.
- Linear variable: записи переменной длины.
- Cyclic: циклический буфер (например, для журнала транзакций).
Основные команды
- SELECT (0xA4): выбор файла или приложения.
- READ BINARY (0xB0): чтение данных из EF.
- UPDATE BINARY (0xD6): запись данных в EF.
- VERIFY (0x20): проверка PIN-кода.
- INTERNAL AUTHENTICATE (0x88): аутентификация карты с помощью криптографии.
- GET CHALLENGE (0x84): запрос случайного числа для аутентификации.
Применение
ISO 7816 является основой для множества систем:
- Банковские карты: EMV-карты (Europay, Mastercard, Visa) используют ISO 7816-4 для команд и протоколов. Карты содержат чип с криптографическими ключами для защиты транзакций.
- SIM-карты: в мобильной связи стандарт GSM использует ISO 7816 для идентификации абонента и хранения контактов.
- Удостоверения личности: в России биометрические загранпаспорта и водительские права с чипом основаны на ISO 7816. Электронные паспорта (например, в странах ЕС) также соответствуют стандарту.
- Электронные кошельки: карты для оплаты проезда, доступа к зданиям, хранения бонусов.
- Криптографические токены: смарт-карты для хранения закрытых ключей и сертификатов (например, в инфраструктуре открытых ключей).
Критика и ограничения
Несмотря на широкое распространение, ISO 7816 имеет ряд недостатков:
- Физический контакт: износ контактов, загрязнение, окисление снижают надёжность. Бесконтактные стандарты (ISO 14443, ISO 15693) постепенно вытесняют контактные карты.
- Скорость передачи: протоколы T=0 и T=1 ограничены скоростью до 115 200 бит/с (в современных реализациях — до 1 Мбит/с), что медленнее, чем у USB или NFC.
- Сложность реализации: полное соответствие стандарту требует детального понимания множества частей, что увеличивает время разработки.
- Безопасность: стандарт не определяет криптографические алгоритмы, оставляя их на усмотрение разработчика, что может приводить к уязвимостям (например, атаки на EMV-карты).
Будущее стандарта
С развитием бесконтактных технологий и мобильных платежей роль ISO 7816 снижается, но он остаётся важным для legacy-систем и высокозащищённых приложений (например, в государственных документах). Новые версии стандарта (например, ISO 7816-15) интегрируют криптографические возможности, а гибридные карты (с контактами и NFC) продолжают использовать ISO 7816 для проводного интерфейса.
Источники
- ISO 7816-1:2011 — Identification cards — Integrated circuit cards — Part 1: Cards with contacts — Physical characteristics
- ISO 7816-2:2007 — Identification cards — Integrated circuit cards — Part 2: Cards with contacts — Dimensions and location of the contacts
- ISO 7816-3:2006 — Identification cards — Integrated circuit cards — Part 3: Cards with contacts — Electrical interface and transmission protocols
- ISO 7816-4:2013 — Identification cards — Integrated circuit cards — Part 4: Organization, security and commands for interchange
- EMV Integrated Circuit Card Specifications for Payment Systems (EMVCo)
- Rankl, W., & Effing, W. (2010). Smart Card Handbook. Wiley
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →