Читать «Журнал "Компьютерра" №728» онлайн - страница 38

Компьютерра

1) полностью восстановить секретную схему алгоритма шифрования Crypto-1, запечатанного в чип для защиты данных;

2) отыскать относительно простой и дешевый метод для извлечения криптоключей из чипа.

В результате удалось смоделировать атаку и успешно клонировать карточку-пропуск Mifare Classic для входа в здания университета.

Типы карт Mifare

Платформа Mifare до последнего времени включала в себя пять основных типов микросхем для карт с бесконтактным, двойным (чип/магнитная полоса) и тройным (чип/полоса/USB) интерфейсом. В связи с компрометацией Mifare Classic фирма NXP только что объявила о вводе до конца 2008 года нового, криптографически более сильного чипа Mifare Plus, в основе которого лежит алгоритм AES.

Самые простые, а потому самые дешевые и распространенные в реальных приложениях типы - это Ultralight (MF0 U10, U11) и Classic или Standard (MF1 S50, S70). У этих чипов нет процессора и, соответственно, операционной системы, а у Ultralight нет и никакой криптографии. Объем памяти EEPROM - от 512 байт (Ultralight) до 1 и 4 Кбайт (Classic).

Остальные три типа построены на основе процессора 80С51. Они имеют более развитую функциональность на основе Java, но и стоят существенно дороже - доллары, а не десятки центов, как Mifare Classic или копеечный Ultralight. Самый дешевый чип из числа дорогих, DESFire (MF3 D40), реализует крепкий шифр 3DES и имеет перезаписываемую память 4 Кбайт. Карта Mifare ProX (P8RF) имеет двойной интерфейс (плюс магнитная полоса), 3DES и криптографию с открытым ключом, от 32 до 64 Кбайт оперативной памяти. Самый продвинутый чип для бесконтактных карт, SmartMX (P5xD, P5CT), оснащен тройным интерфейсом (плюс USB), более вместительной памятью ROM и EEPROM, а в наборе шифров дополнен стойким современным криптостандартом AES. В приложениях, связанных с оснащением новых "электронных" паспортов технологией RFID, чипы SmartMX являются общепринятым стандартным решением.

Технические нюансы

Бесконтактная смарт-карта Mifare Classic была разработана в середине 1990-х годов. По сути, это чип памяти с дополнительными функциями защиты содержимого. Поскольку здесь нет процессора, функциональность карты не программируется. Криптографические операции, которые способен выполнять чип, реализованы на аппаратном уровне в виде так называемого регистра сдвига с линейной обратной связью, или LFSR (linear feedback shift register), и "фильтр-функции" для усложнения генерируемой шифр-последовательности. Этот криптоалгоритм, носящий имя Crypto-1, является коммерческой тайной NXP и никогда не публиковался для независимого анализа. Таким образом, безопасность карт Mifare Classic в значительной степени опирается на то, что устройство криптоалгоритма хранится в тайне. Такой подход принято именовать "безопасность через неясность" (security by obscurity), причем среди большинства серьезных криптографов он считается в корне ошибочным и бессчетное количество раз скомпрометированным. Не стал исключением и случай с Crypto-1.