30/12/2012

Mifare. Вентилятор набирает обороты.

Первая тема, которую я брошу на вентилятор, посвящена бесконтактным смарт-картам семейства Mifare. Первая карточка семейства Mifare разработанная австрийской фирмой Mikron увидела свет в 1995 году и называлась Mifare Standard 1k. После того как Philips в 1998 купила Mikron карточка стала называться Mifare classic 1k и появились Mifare classic 4k и Mifare classic Mini, которые в основном отличались большим/меньшим объемом флэш-памяти. Карты Mifare classic не только успешно дожили до наших дней, но и стали столь широко распространенными, что NXP Semiconductors (дочка Philips) столкнулась с проблемой при выпуске этих карт. Все Mifare Classic имеют уникальной серийный номер длиной 4 байта, если посчитать все серийники с 00 00 00 00 до FF FF FF FF то получим примерно 4.3 млрд уникальных номеров. NXP Semiconductors в 2011 заявляла, что резерв 4-х байтовых серийных номеров исчерпан. И это без учета подпольных китайских клонов, которым всё равно уникален их серийник или нет.

Где их применяют?

Там где требуется быстрое и надежное обслуживание обладателя карты. Это, например городской общественный транспорт, платные парковки, платные дороги, всяческие накопительные бонусные карты, горнолыжные подъемники, в общем, те места, где транзакции с участием смарт-карты должны быть очень быстрыми, безопасными и иметь механизм защиты от коллизий.

Что в них хорошего?

Обзор возможностей Mifare Classic давайте с механизма защиты от коллизий и начнем.

Защита от коллизий

Под коллизией тут понимается то же, что и в ламповых Ethernet сетях на коаксиальном кабеле. Т.е. попытка двух и более устройств подключенных к общей среде передачи данных начать передавать данные одновременно. Такая проблема возникает, когда в радиусе действия картридера находятся несколько смарт-карт. Механизм защиты от коллизий заключается в специальном протоколе, который позволяет картридеру однозначно идентифицировать карточки и работать с ними раздельно. На практике защита от коллизий позволяет корректно отрабатывать в ситуациях, когда для совершения операции (запуск ядерных ракет) требуется подтверждение от двух или более человек (президент и министр обороны) для чего они одновременно прикладывают свои смарт-карты к картридеру (Красную и Синюю карту вставляют в Машину Судного Дня).

Шифрование

Когда я только начал интересоваться темой бесконтактных карточек, в моей голове зародилась одна мыслишка. Нет, соврал. Сначала зародилась мыслишка, а уже потом появился интерес. В спецификации по Mifare Classic сказано что обмен данными между карточкой и картридером идет на расстоянии до 10 см по радиоканалу с частотой 13.56 МГц. И вот я подумал, а нельзя ли как-то подслушать эту передачу данных. Так вот, если вы джентльмен, то нельзя. После того как картридер проводит процедуру защиты от коллизий следующим номером идет процедура аутентификации и после её завершения весь дальнейший трафик между карточкой и картридером будет зашифрован пропиетарным симметричным алгоритмом шифрования Cripto1. Между прочим, во время процедуры защиты от коллизий, когда картридер узнает UID`ы, т.е. серийники находящихся поблизости карточек, эти серийники передаются в совершенно открытом виде, а это уже кое-что :). Если вы не джентльмен, то знайте, что с 2007 года Cripto1 перестал быть «черным ящиком» и что он собой представляет можно спокойно узнать в интернетах. Также знайте, коль вы не джентльмен, что из-за найденных уязвимостей Cripto1 теперь не алгоритм шифрования, а так смех один, вроде WEP для Wi-Fi. Если почитать иностранную прессу по информационной безопасности, то можно узнать про некоторые доставляющие эпизоды, связанные с компрометацией Cripto1 вроде появления на голландских военных базах солдат с автоматами возле каждого валидатора карт Mifare Classic. Так что хоть этот раздел и называется «что хорошего» но на данный момент в том как реализовано шифрование в Mifare classic ничего хорошего нет. NXP Semiconductors в качестве меры противодействия предлагает отказаться от Mifare classic и использовать карточки из новой линейки MIFARE Plus у которых шифрование происходит по алгоритму AES. С Mifare Plus да, пока всё хорошо.

Скорость транзакций

Несмотря на наличие шифрования Mifare classic это очень быстрые карточки. Среднее время транзакции в зависимости от типа карточки — 140-164 мс. Причем работа с карточкой может производиться даже если она находится в движении (но не слишком уж быстром :)) относительно картридера. Поэтому Mifare classic очень, активно используются в системах городского наземного и подземного транспорта, где плотный поток пассажиров.

Заканчиваем

Пожалуй, пока достаточно. Конечно, в этой статье не было практически полезной информации, но это, же вроде как введение. А в карточках мы обязательно поковыряемся ради этого всё и пишется :).


mifare


Previous post
Первый пост. Вместо всяких объяснений. Он пришел домой - и сразу за дело. Загнал дискетку с только что арендованным у Дважды-в-День ледорубом и подключился. Набрал код базы, которую
Next post
Mifare Classic 1k. Сухие данные. Просто немного информации о Mifare Classic 1k. EEPROM 1024 байт Количество циклов перезаписи - до 100 000 Хранение данных - до 10