Введение: для чего нужен OSPT?Открытый стандарт для общественного транспорта
(Open Standard for Public Transport — OSPT)
OSPT: открытость Будучи открытой организацией, OSPT руководствуется следующими принципами:
� Мы всегда рады новым участникам � Мы открыты всем участникам транспортной экосистемы � Мы приветствуем сотрудничество между участниками
Полученные в результате стандарты: � Разумно сбалансированы � Подробно документированы � Публично доступны
OSPT: стандартизация OSPT основывается на уже существующих, проверенных и открытых стандартах.
� ISO 24014: система управления тарифами, совместимая с другими системами
� ISO 7816: смарт-карты
� ISO 14443: бесконтактный обмен данными
� AES 128: стандарт шифрования FIPS
OSPT: для общественного транспортаПредназначен для общественного транспорта. OSPT стандартизирует все требования данной отрасли:
Безопасность Скорость доступа Совместимость разных режимов
Совместимость систем в разных городах Доступность по цене Масштабируемость
OSPT: реальные преимущества Реальные преимущества при работе по стандартам:
Обеспечение безопасности хорошо проверенными современными средствами
Сокращение времени разработки
OSPT: реальные преимущества Ещё одно значительное преимущество OSPT — возможность работы с несколькими провайдерами.
� Независимость от провайдера � Нейтральность продавцов � Несколько совместимых
реализаций � Снижение цены � Способствует модернизации
продукции � Увеличивает срок службы
продукции
ТЕХНИЧЕСКИЕ ПРИНЦИПЫ
ТЕХНИЧЕСКИЕ ПРИНЦИПЫОрганизация памяти Cipurse Организация файлов по стандарту ISO 7816: данные хранятся в элементарных файлах (Elementary File — EF), которые группируются в файлы, относящиеся к конкретному приложению (Application Dedicated File — ADF), которые, в свою очередь, содержатся в главном файле (Master File — MF).
Размер EF-файлов определяется при их создании. Существует 3 основных типа EF-файлов:
� Бинарный файл: не имеет внутренней структуры. Поддерживаемые команды: � Чтение и обновление бинарных значений
� Файл записей: последовательность записей. Максимальный размер и максимальное количество записей задаются при создании файлов. Такой файл может быть линейным или циклическим. Поддерживаемые команды: � Чтение и обновление записей, а также добавление записи
для циклических файлов � Файл значений: 32-битная последовательность значений.
Минимальное и максимальное значение задаётся для каждого значения в последовательности. Поддерживаемые команды: � Чтение, увеличение и уменьшение значения, обновление записи
MF
EF
EF
ADF
…
ADF
…
ТЕХНИЧЕСКИЕ ПРИНЦИПЫБезопасность и память Cipurse
Используемая память для AES-ключей: 16*n байт (макс. 128) Используемая память для таблицы прав доступа ADF и EF: n+1 байтИспользуемая память для правил защищённого сообщения ADF и EF: 2 байта
Общий объём памяти, используемой для обеспечения безопасности: 16*n + n+1 + 2 + (n+1+2)*m, где n = число ключей, m = число EF-файлов Для 8 ключей и 20 EF: 359 байт
ADF (макс. 8 ключей)AES-ключ 0 (16 байт)AES-ключ 1 (16 байт)
AES-ключ n (16 байт) …
SMR (2 байта)ART (n+1 байт. Макс. 9 байт)
EF
SMR (2 байта)ART (n+1 байт. Макс. 9 байт)
SMR (2 байта)ART (n+1 байт. Макс. 9 байт)
SMR (2 байта)ART (n+1 байт. Макс. 9 байт)
…
EF 0
EF 1
EF m
MF
EF
EF
ADF
…
ADF
…
ART: таблица прав доступа (Access Rights Table)
SMR: правила защищённого сообщения (Secure Message Rules)
ТЕХНИЧЕСКИЕ ПРИНЦИПЫSAM
� Криптографический ключ — секретная информация, хранение которой должно осуществляться в безопасном месте
� Для хранения ключей рекомендуется использовать сертифицированное аппаратное обеспечение, например модули SAM
� Модуль защищённого доступа SAM (Secure Access Module) — это криптографическая смарт-карта. Такие модули широко используются в общественном транспорте (например, в валидаторах)
� Ключ нельзя получить из SAM. Модуль лишь позволяет выполнять криптографические операции с ключами (шифрование, дешифрование, подпись и т.д.)
� Модули SAM могут обнаруживать аппаратное вторжение — при этом все ключи стираются
� Модулям SAM можно назначать роли. В зависимости от роли, модуль может использовать те или другие ключи для разрешения или запрещения определённых операций
ТЕХНИЧЕСКИЕ ПРИНЦИПЫSAM
� Ключи не хранятся в валидаторе
� У валидатора нет доступа к ключам
� Валидатор использует SAM для крип-тографических операций (шифрование, дешифрование, MAC)
� У валидатора SAM нет ключей для пополнения карты: валидатор может только уменьшать денежный баланс
Модули SAM устанавливаются в валидаторы
ТЕХНИЧЕСКИЕ КОНЦЕПЦИИ
Защищённый канал
� Защищённый канал обеспечивает безопасный обмен данными между двумя сторонами, каждой из которых должен быть известен общий ключ, используемый для защиты связи.
� Весь обмен данными зашифровывается или подтверждаются подписью в зависимости от того, требуется ли конфиденциальность.
� Для защиты от атак с применением технологии «незаконный посредник» (Man In The Middle) используется порядковый номер последовательности, который инкрементируется в каждом кадре.
ТЕХНИЧЕСКИЕ КОНЦЕПЦИИ Защищённые каналы: пополнение счёта через Интернет
Интернет
Защищённый сервер
CIPURSE
CIPURSE
� Выбранный стандарт безопасности � Базируется на стандартах ISO 7816, ISO 14443, AES 128 � Безопасность на самом современном уровне. Защита от различных
атак: � Атака методом перебора (переборный криптоанализ) � Дифференциальный криптоанализ по потребляемой мощности
(Differential Power Analysis — DPA) � Дифференциальный криптоанализ ошибок (Differential Fault
Analysis — DFA) � Атака Man In The Middle
� Возможность масштабирования для продукции, используемой в любом приложении: от билетов ограниченного использования до многофункциональных карт.
CIPURSE Средний уровень Целевое назначение — сезонные проездные и билеты на несколько поездок, но возможно использование и в других приложениях: билеты на мероприятия, парковочные талоны, контроль доступа и т.д.
10 поездок
Месячный
CIPURSE Средний уровень: организация памяти
CipurseСреднийуровень Группа
данных = 1 файлISO 7816
Бинарныйфайл
Файлзначений
Регистровыйфайл
43
CIPURSE Средний уровень: обмен данными
CipurseСреднийуровень ISO 14443-4 (T=C L)
Типы A и B
Lc Данные LeCLA INS P1 P2
СтандартISO 7816-4 APDU
CIPURSE Средний уровень: безопасность (1)
Cipurse Средний уровень
Защита с использованием нумерованных ключей ++ правила защищённого сообщения
…
…
CIPURSE Средний уровень: безопасность (2)
CipurseСреднийуровень
Интернет
HSM
Защищённый канал(пополнение счёта через Интернет)
AESMAC
AESШифрование
AESАутентификация
CIPURSE Билет ограниченного использования Целевое назначение — билеты на одну поездку или билеты ограниченного использования, но возможно использование и в других приложениях: билеты на мероприятия, парковочные талоны, контроль доступа и т.д.
CIPURSE Билет ограниченного использования: организация памяти
CipurseБилетограни-ченногоисполь-зования
43
Группаданных
= 1 файлISO 7816Бинарный
файлФайл
значенийРегистровый
файл
CIPURSE Билет ограниченного использования: обмен данными
CipurseБилетограни-ченногоисполь-зования
ISO 14443-4 (T=C L)Типы A и B
Lc Данные LeCLA INS P1 P2
СтандартISO 7816-4 APDU
CIPURSE Билет ограниченного использования: безопасность (1)
CipurseБилетограни-ченногоисполь-зования
…
…
Защита с использованием нумерованных ключей ++ правила защищённого сообщения
CIPURSE Билет ограниченного использования: безопасность (2)
CipurseБилетограни-ченногоисполь-зования
Интернет
HSM
Защищённый канал (Пополнение счёта через Интернет)
AESMAC
AESАутентификация
CIPURSE Высокий уровень/многофункциональные карты Целевое назначение — многофункциональные карты или персонализированные карты, но возможно использование и в тех приложениях, которые поддерживаются на более низких уровнях Cipurse, а также во многих других, таких как билеты на мероприятия, парковочные талоны, контроль доступа и т.д.
CIPURSE Высокий уровень/многофункциональные карты
CipurseВысокийуровень
ISO 7816
43
Группаданных
= 1 файлБинарный
файлФайл
значенийРегистровый
файл
CIPURSE Высокий уровень/многофункциональные карты
CipurseВысокийуровень ISO 14443-4 (T=C L)
Типы A и B
Lc Data LeCLA INS P1 P2
Стандарт ISO 7816-4 APDU
CIPURSE Высокий уровень/многофункциональные карты: безопасность (1)
CipurseВысокийуровень
…
…
Защита с использованием нумерованных ключей ++ правила защищённого сообщения
Защищённаязагрузка ключа
CIPURSE Высокий уровень/многофункциональные карты: безопасность (2)
CipurseВысокийуровень
Интернет
HSM
AES AESA Защищённый канал(пополнение счёта через Интернет)Аутентификация MAC Шифрование
ES
CIPURSE Масштабируемость
� Продукция Cipurse может масштабироваться
� В отличие от продукции Mifare, на всех уровнях используется одна и та же структура памяти, набор команд, криптографический алгоритм и протокол
� Возможно сосуществование различных уровней в одной и той же реализации
� Возможно переключение между уровнями, если используются одинаковые функции
Cipurse NFC
Высокийуровень
Среднийуровень
Билетыограни-ченногоисполь-зования
МиграцияОт Mifare Classic к другим картам
(Mifare Plus, CIPURSE, NFC, ...)
Миграция От Mifare Classic к независимости от конкретной карты
� Чтобы устранить слабости защиты, свойственные Mifare Classic, необходимо обновление инфраструктуры.
� Миграция должна рассматриваться как возможность усовершенствовать систему.
� Требуется внести множество изменений, и эти изменения будут долговременными.
� Приложив немного дополнительных усилий, мы получим более надёжную, долговечную, гибкую и не зависящую от конкретной карты систему.
� На следующих слайдах мы увидим, как осуществить переход (миграцию) к системе, не зависящей от конкретной карты.
Миграция От Mifare Classic к независимости от конкретной карты
Миграция к независимости от используемой карты
1. Сохранение карт Mifare Classic � Не требуется начальных инвестиций
2. Миграция системы к независимости от используемой карты � Может осуществляться постепенно � Карты Mifare Classic по-прежнему могут использоваться
3. Начало выпуска новых карт (Mifare Plus, Cipurse, NFC и т.д.) � Может осуществляться постепенно � Может использоваться любая карта � Различные технологии карт могут использоваться совместно
Миграция От Mifare Classic к независимости от конкретной карты
Миграция происходит в различных областях и работа, которую необходимо выполнять в каждой из них, зависит от системы, используемой в настоящее время. Некоторые из таких областей:
Данные карты Безопасность Микропрограммноеобеспечение
Аппаратноеобеспечение
Миграция Данные карты
Данные используемых в настоящее время карт Mifare Classic необходимо перегруппировать так, чтобы они не зависели от типа карты. Они могут занимать те же поля, сгруппированные в логические группы, например данные пользователя, конфигурация билета, данные истории и т.д.
Работать с данными, не зависящими от карты, проще, кроме того, при этом сокращается время разработки и обслуживания, что, в свою очередь, приводит к снижению стоимости.
Mifare Classic Не зависящиеот карты данные
Миграция Данные карты
Чтобы перенести независящие от карты данные на конкретную структуру каждой карты, используется метод отображения карты (card mapping).
Не зависящиеот карты данные
Mifare Classic/Plus
Cipurse
Отображение на картуMifare Classic/Plus
Отображение на картуISO 7816
Миграция Новый уровень защиты
Необходимо реализовать новые механизмы AES-защиты. Для этого существует как минимум 3 способа:
Ключи в SAM Всё в SAM Всё во встроенноймикропрограмме
(Слабая защита)
AES-ключи
Механизмы AES (шифрование, MAC и т.д.)
Миграция БезопасностьУровень абстракции безопасности (Security Abstraction Layer — SAL) отвечает за все средства защиты карт, предоставляя уникальный API для работы валидатора. При появлении новой карты с новым уровнем защиты потребуется изменить только SAL.
Защитабудущих карт
Один и тот же API для всех карт
ЗащитаMifare Plus
ЗащитаCipurse
Уровень абстракции безопасности (SAL)
Действующийвалидатор
Защита Mifare Classic
Миграция Безопасность Существует три способа разработки SAL:
SAL во встроенноймикропрограмме
Валидатор
SAL во встроенноймикропрограмме и в SAM
SAMВалидатор
SAM
Будущиекарты
Валидатор
SAL в SAM
Миграция Микропрограммное обеспечение терминала
� При использовании как Cipurse, так и Mifare Plus, если установленное микропрограммное обеспечение не поддерживает протокол ISO 14443-4 (T=CL), его необходимо модифицировать.
� Для обеспечения независимости от конкретной карты потребуется разработать уровень абстракции безопасности.
14443-3
14443-4
SAL для обеспечениянезависимости от карты
Миграция Аппаратное обеспечение терминала Миграция аппаратного обеспечения потребуется только при одном из следующих сценариев:
� Микропрограммное обеспечение реализует механизмы безопасности (шифрование, подписи и т.д.), а имеющееся аппаратное обеспечение не позволяет выполнять транзакции на достаточной скорости.
� Требуется использование модулей SAM, но имеющееся аппаратное обеспечение не оборудовано соответствующими слотами для них.
Миграция Преимущества независимости от конкретной карты
� Снижение стоимости благодаря конкуренции между различными провайдерами.
� Снижение стоимости благодаря использованию дешёвых карт с низкой функциональностью для простых приложений.
� Упрощается добавление в систему более сложных, многофункциональных карт (включающих транспортные услуги), например городских карт.
� Упрощается миграция к картам следующих поколений, которые будут дешевле, более быстродействующими и многофункциональными, так как технологии развиваются очень быстро.
� Обеспечивается более высокая надёжность, поскольку вместо повреждённой карты может использоваться любая другая работающая карта.
Барселонский опыт
БАРСЕЛОНСКИЙ ОПЫТ
� В Барселоне одной из главных задач было обеспечение независимости от конкретной карты.
� Были определены минимальные требования к картам: файловая структура ISO 7816, протокол 14443-4 (T=CL) для обмена данными, AES-шифрование для безопасности.
� В настоящее время две карты соответствуют этим требованиям: DESFire и Cipurse (на всех уровнях).
БАРСЕЛОНСКИЙ ОПЫТ Данные карты
� Сначала была разработана структура данных без вмешательства в структуру карты. Исходя из ISO, поля данных были сгруппированы в логические группы: данные пользователя, данные конфигурации билета, журналы событий и т.д.
� На втором этапе были разработаны правила отображения карты, чтобы перенести эти данные в структуру карты.
� Указанные правила оформляются в виде конфигурационных файлов, что облегчает их последующее обновление.
БАРСЕЛОНСКИЙ ОПЫТ Абстракция средств безопасности
� В Барселоне было решено встроить весь уровень абстракции безопасности в SAM. Этот проект выполнялся как опытно-конструкторская работа.
� Барселонские модули SAM выполняют операции аутентификации, шифрования, дешифрования и подписи для карт Cipurse и DESFire, а также верификацию всех транзакций.
� Возможно дистанционное обновление SAM по защищённому каналу.
SAM
Буд.
Валидатор
SAL
БАРСЕЛОНСКИЙ ОПЫТ Подключение новых карт Когда появляется новая карта (или другое устройство, например мобильный телефон), её включение в систему выполняется в следующем порядке:
� Обновление конфигурационных файлов отображения карты и их передача дистанционно всем терминалам.
� Обновление микропрограммного обеспечения SAM и его пересылка дистанционно всем SAM.
Как видите, это делается без модификации микропрограммного обеспечения терминалов. Таким образом, экономится время и деньги, система менее подвержена ошибкам и имеет гарантированное будущее.
ЗАКЛЮЧЕНИЕ
� Из-за слабости защиты карта Mifare Classic более не рассматривается как допустимый вариант. Mifare Classic должна уступить место другим картам.
� При небольших дополнительных усилиях можно построить независящую от конкретной карты платформу.
� На рынке появилась новая продукция, разработанная на базе самых современных технологий, которую необходимо принять во внимание: Cipurse.
� Карта Cipurse разработана по открытому стандарту и выпускается многими провайдерами, что обеспечивает конкуренцию.