Смарт-карточные игры

Автор: Киви Берд, [email protected]

Для начала хочется напомнить, что прошлая история из "гнезда" некоторым существенным образом была связана с проходившей в г. Сан-Хосе, Калифорния ежегодной "Конференцией RSA". Среди разнообразных впечатлений и откликов, посвященных этому мероприятию, хотелось бы отметить упоминание еще об одной любопытнейшей экспозиции в выставочной части форума.

Речь идет о стенде компании Datacard Group, специалисты которой развернули на экспозиционных столах некий "полевой вариант" небольшой электронной лабораторию и на глазах изумленной публики демонстрировали вскрытие смарт-карт с помощью подробно описанных в криптографической литературе методов "дифференциального анализа питания (ДАП)" и "дифференциального анализа искажений (ДАИ)" (Differential Power Analysis, Differential Fault Analysis). Оборудования для этих работ требуется совсем немного - осциллограф, компьютер да несколько "специальных коробочек".

Для зрителей процесс вскрытия смарт-карты выглядел примерно так: "Сейчас вы видите на экране осциллографа последовательность вертикальных всплесков. Это циклы DES-алгоритма, шифрующего информацию в чипе карты. Давайте увеличим разрешение картинки. Внутри цикла вы видите пики характерной формы - это S-боксы, преобразующие нужный нам ключ. Давайте запустим программу вскрытия, которая по особенностям этих сигналов отыскивает биты секретной информации, и вот через минуту или две мы получаем ключ на выходе программы". Тройной DES вскрывался аналогично, но примерно раза в 3 раза больше по времени. Те же самые несколько минут уходили у аналитиков Datacard на отыскание пары больших простых чисел, образующих ключ в алгоритме RSA. Для этого не использовались, ясное дело, ужасно трудоемкие и широко известные методы факторизации, а "просто" внимательно анализировались реакции чипа смарт-карты на небольшие варьирования в напряжении и частоте при подаче питания...

Несколько лет назад исследовательские работы с описанием такого рода методов вскрытия защищенных чипов наделали много шума в криптографических кругах, однако на выставках подобные технологии еще не демонстрировались, и, по свидетельству специалистов, открывающаяся картина действительно впечатляет.

Начало же этой истории было положено в сентябре 1996 года, когда коллектив авторов из Bellcore, научно-исследовательского центра американской компании Bell, сообщил об открытии серьезной потенциальной слабости общего характера, свойственной практически для всех защищенных криптоустройств. В частности, и для смарт-карт электронных платежей. Авторы (Дэн Бонэ, Рич ДеМилло и Ричард Липтон) назвали свой метод вскрытия "Криптоанализом при сбоях оборудования" (изложение статьи можно найти, например, здесь). Суть его в том, что искусственно вызывая сбой в работе электронной схемы с помощью ионизации или микроволнового облучения, а затем сравнивая сбойные значения на выходе устройства с заведомо правильными значениями, теоретически можно восстанавливать криптографическую информацию, хранящуюся в смарт-карте. Правда, разработанная в Bellcore атака была применима для вскрытия ключей исключительно в криптосхемах с открытым ключом - RSA, алгоритм цифровой подписи Рабина, схема идентификации Фиата-Шамира и т.д.

Но меньше чем через месяц, уже в октябре 1996 года аналогичная атака была разработана и в отношении вскрытия симметриччных криптоалгоритмов в смарт-картах. Новый метод был разработан знаменитым тандемом израильских криптографов Эли Бихамом и Ади Шамиром, получив название "Дифференциальный анализ искажений" или ДАИ. На примере блочного шифра DES эти авторы продемонстрировали, что в рамках той же "беллкоровской" модели сбоя в работе аппаратуры можно "вытащить" полный ключ DES из запечатанного и защищенного от методов инженерного доступа шифратора путем анализа менее 200 блоков шифртекста. Более того, впоследствии появился еще ряд работ Бихама-Шамира с описанием методов извлечения ключа из смарт-карты в условиях, когда о реализованной внутри криптосхеме неизвестно практически ничего. Окончательная версия данной работы была представлена авторами на конференции Crypto '97, текст статьи (правда, в "неудобоваримом" формате PostScript) можно найти здесь. Большая подборка материалов вокруг ДАИ в формате HTML выложена на сайте Джона Янга Cryptome.

Наиболее часто критика в адрес ДАИ, особенно со стороны выпускающих смарт-карты фирм, сводилась к тому, что вся эта методика носит сугубо теоретический характер. Ведь никто не продемонстрировал на практике, что сбойные ошибки можно вызывать именно в криптосхеме, причем конкретно в алгоритме разворачивания ключа... Но уже весной 1997 года появилось описание не теоретической, а весьма практичной атаки, получившей название "усовершенствованный метод ДАИ". Авторы атаки, кембриджский профессор Росс Андерсон и его аспирант Маркус Кун, продемонстрировали, что могут извлекать ключ из смарт-карты менее чем по 10 шифртекстам. В основу нового метода была положена модель принудительных искажений или "глич-атак", реально практикуемых крэкерами при вскрытии смарт-карт платного телевидения. Под глич-атаками понимаются манипуляции с тактовой частотой или напряжением питания смарт-карт, что позволяет выдавать дампы с ключевым материалом на порт выхода устройства. Эффективность глич-атак продемонстрирована кембриджскими авторами как на симметричных криптосхемах, так и на вскрытии алгоритмов с открытым ключом, ссылки на соответствующие статьи можно найти на сайте Росса Андерсона.

А летом 1998 года стало известно еще об одном методе вскрытия смарт-карт, причем реализованного на практике более чем успешно. Совсем небольшая, состоящая из 4 человек консалтинговая криптофирма Cryptography Research в Сан-Франциско разработала технику под названием "дифференциальный анализ питания" или ДАП. Взяв на вооружение аппарат математической статистики и алгебраические методы исправления ошибок для анализа флуктуаций в потреблении чипом электропитания, 25-летний Пол Кочер (глава фирмы) и его коллеги продемонстрировали, что могут извлекать криптоключи практически из всех доступных на рынке смарт-карт. Подробное описание техники ДАП было представлено Кочером на конференции Crypto '99, соответствуюую статью можно найти на сайте его компании.

С тех пор, можно понять, технологии анализа и вскрытия смарт-карт не стояли на месте. И, возвращаясь к недавней конференции RSA и экспозиции Datacard Group, наибольший эффект на зрителей производило снятие информации с бесконтактных смарт-карт, когда доступ к секретной информации внутри чипа и извлечение ключа удается осуществить с помощью специального радиочастотного интерфейса и вообще безо всякого прикосновения пробников к карте...

Смысл же всех этих демонстраций должен быть предельно ясен. Официальные представители смарт-картной идустрии повсюду трубят, что "чип-карты - это наиболее безопасная из существующих ныне технологий, их чрезвычайно сложно вскрывать". В том или ином виде заявления о "высочайшей безопасности" становятся одним из главных аргументов сторонников "цифровых карточек-паспортов" - активно продвигаемой ныне технологии идентификации во многих развитых странах. Описанные выше исследования и результаты демонстрируют, однако, что все это не совсем так.

А может статься, что и совсем не так.