
Что день грядущий нам готовит?

Игорь Голдовский, генеральный директор ЗАО “Платежные технологии”
Неразрывны с дыханьем расплаты;Сотворяют огонь – прометеи,
Применяют огонь – геростраты.
И. Губерман
По данным ассоциации Eurosmart, в 2005 г. во всем мире было произведено более 2,5 млрд. чиповых карт. Из них только 354 млн. карт предназначались для использования в финансовом секторе (Financial services, retail, loyalty). Традиционным лидером, в значительной степени определяющим основные направления развития технологий чиповых карт, остается рынок телекоммуникаций, на долю которого пришлось 1,88 млрд. карт (более 75% всего производства смарт-карт). При этом темпы роста производства карт для финансового сектора также пока уступают аналогичному показателю по карточным продуктам для телекоммуникационного сектора, сферы транспорта, картам с правительственными приложениями и ID-картам.
В то же время банковские проекты миграции карточных технологий на стандарт EMV в 2005 г. развивались весьма успешно. Лидерами здесь являются Европа (особенно Великобритания, Франция, Германия) и Азиатско-Тихоокеанский регион (АТР). По-прежнему серьезно тормозит переход на EMV рынок Северной Америки, хотя и здесь происходят обнадеживающие события.
Более того, можно утверждать, что некоторые банковские приложения дали толчок развитию ряда смарт-карточных технологий. И одно из них – это бесконтактные платежные карты. Бесконтактные карты в виде карт памяти и ранее находили широкое применение в качестве носителей приложений контроля доступа и инструментов выполнения платежей на небольшие суммы. Однако появление проектов на базе бесконтактных платежных технологий ведущих международных платежных систем дало мощный импульс в развитии микропроцессорных бесконтактных карт.
В то же время на карточном рынке уже неоднократно озвучивались мнения, что бесконтактные платежные технологии якобы пока еще недостаточно безопасны для их массового использования (в данной статье мы не рассматриваем наиболее вероятные причины такого рода сомнений, лежащие, на наш взгляд, вне сферы вопросов технологии). Так, например, французская банковская ассоциация Groupement des Cartes Bancaires, изучив возможности применения этой технологии на местном рынке, в свое время пришла к выводу, что бесконтактные карты не обеспечивают надлежащей защиты от возможных попыток хищения данных, хранящихся в памяти микропроцессора.
По словам главы Cartes Bancaires Рене Белтрандо (Rene Beltrando), бесконтактный интерфейс оставляет “открытую дверь” для мошенников, которые могут получить доступ к памяти чипа, а пользователь даже не будет подозревать о том, что его карта скомпрометирована. Такой тип мошенничества, продолжает Р. Белтрандо, может осуществляться при помощи простых устройств, снабженных радиочастотным интерфейсом.
Под сомнение ставится в первую очередь якобы недостаточная степень защищенности ключей криптографических алгоритмов, используемых в бесконтактных платежных технологиях, от кражи и последующего несанкционированного использования. Речь идет о методах использования так называемых побочных каналов для хищения информации о ключах, а затем, с ее помощью, получения доступа к защищаемым данным.
Следует подчеркнуть, что на данный момент специалисты Cartes Bancaires никак не доказали справедливость своих замечаний об уязвимости криптографических ключей, применяемых в бесконтактных платежных технологиях, и тем самым укрепили базу для сомнений в их объективности.
Итак, попробуем проанализировать, насколько объективными выглядят такого рода сомнения. На сегодняшний день в мире используется ряд протоколов, определяющих радиоинтерфейс и алгоритм передачи данных между ридером и картой с радиоинтерфейсом (например, ISO 18000, ISO15693, ISO14443). Для бесконтактных платежных карточных приложений MasterCard International и Visa International был выбран стандарт ISO/IEC14443, предназначенный для работы карты с ридером на расстоянии до 10 см. Этот протокол определяет физические характеристики карты, характеристики радиосигнала (частоту несущей, методы модуляции, методы кодирования), методы инициализации карты и разрешения коллизий, а также протокол передачи данных. В частности, для обмена информацией между картой и ридером используются радиоволны высокочастотного (ВЧ) диапазона с частотой несущей 13,56 МГц (22,1 м). Для радиосигналов этой частоты “прозрачны” такие внешние среды, как вода, грязь, одежда, различные масла и человеческое тело, но они чувствительны к металлическим препятствиям.
В основе физики взаимодействия карты и ридера лежит всем знакомый принцип электромагнитной индукции (на расстояниях до 10 см электромагнитное поле, создаваемое ридером, может рассматриваться как обычное переменное магнитное поле). Радиоприемная/радиопередающая компонента карты представляет собой антенну, расположенную вдоль периметра карты и представляющую собой обмотку катушки с n = 3–10 витками, а также включает в себя конденсатор, сопротивление и выпрямляющий диод (радиосистема карты вместе с микросхемой называются транспондером). Собственная частота колебательного контура транспондера настроена на частоту несущей радиосигнала, поступающего от ридера. Напряжение на обмотке транспондера достигает максимума благодаря явлению резонанса. Магнитное поле ридера, пронизывающее антенну транспондера, генерирует переменный ток в обмотке антенны, который выпрямляется с помощью диода. Энергия накапливается на специальном конденсаторе и становится источником постоянного тока, питающего микросхему.
Для инициализации карты требуется минимальная амплитуда напряженности магнитного поля величиной 2–4 А/м. Такое значение амплитуды переменного магнитного поля обеспечивает микросхему энергией, достаточной для выполнения ею различных вычислительных операций (10–30 мВт). В этом случае транспондер карты может находиться от ридера на расстоянии 4–7 см. Когда карта находится на больших расстояниях от ридера, она не инициализируется и остается неактивной. Для передачи цифровой информации от ридера карте используется метод амплитудной модуляции (ASK-модуляция). Существуют две наиболее распространенные разновидности стандарта ISO 14443: A и B. В стандарте ISO 14443 A применяется метод 100%-ной ASK-модуляции и модифицированный код Миллера, при котором уровень передаваемого сигнала большую часть времени принимает наибольшее значение и падает до значения “нуль” на очень короткое время (2–3 мкс) в середине (при передаче бита “1”) или начале (при передаче двух последовательных битов “0”) такта передачи бита информации. Таким образом, карта практически постоянно накапливает энергию (на конденсаторе после выпрямления переменного тока индукции) от сигнала ридера. В стандарте ISO 14443 B используется метод 10%-ной ASK-модуляции и NRZкод. В результате для передачи двоичной “1” амплитуда несущей принимает максимальное значение, а при передаче «0» амплитуда радиосигнала уменьшается на 10%. Таким образом, при использовании стандарта ISO 14443 B карта постоянно “заряжается” энергией. Стандарты ISO 14443 A и ISO 14443 В отличаются и методом разрешения коллизий: поиск по двоичному древу в стандарте А или протокол Тактированная ALOHA в стандарте B.
Для передачи данных от карты ридеру применяется метод нагрузочной модуляции. Его суть состоит в том, что в резонансном контуре транспондера имеется т. н. нагрузочное сопротивление. Включение/отключение этого сопротивления в/из контура приводит к изменению характеристик резонансного контура транспондера и значения амплитуды генерируемого им поля. Поскольку резонансные контуры ридера и транспондера образуют индуктивную связь, это изменение поля отражается на показателях работы ридера и может быть измерено на стороне ридера с помощью, например, измерения силы тока в антенне ридера.
Включение/отключение нагрузочного сопротивления можно связать с передачей сигнала от транспондера ридеру. В магнитном поле ридера может оказаться несколько транспондеров. В этом случае необходимо определить процедуру опроса ридером транспондеров и определения последовательности работы ридера с транспондером (в каждый момент времени ридер может взаимодействовать только с одним транспондером). Такие процедуры содержатся в третьей части стандарта ISO 14443. В стандарте используются два широко распространенных метода разрешения коллизий – тактированная ALOHA (стандарт ISO14443 B) и древовидный алгоритм поиска по идентификатору микросхемы (используется в стандарте ISO14443 А).
Стандарт ISO14443 предполагает передачу данных между ридером и картой со скоростью 106 Кбит/с (сегодня доступными являются скорости передачи 212 Кбит/с, 424 Кбит/с и 848 Кбит/с, прорабатывается вопрос использования скоростей, превышающих 848 Кбит/с). Однако на практике по соображениям экономии энергии чаще всего используется скорость 106 Кбит/с.
В стандарте ISO 14443 для обеспечения защиты передаваемых данных от ошибок используется алгоритм помехоустойчивого кодирования, определенный стандартом ISO3309. В основе алгоритма лежит расширенный циклический код Хэмминга, заданный порождающим многочленом (это означает, что проверочная последовательность, генерируемая кодом, имеет размер двух байтов).
Нетрудно доказать, что кодовое расстояние (минимальное расстояние Хэмминга между любыми двумя кодовыми словами) этого циклического кода равно 4 (минимальный вес (число единиц) ненулевого кодового слова равен 4). Отсюда следует, что используемый код способен гарантированно обнаруживать в полученном блоке данных любые одиночные, двукратные ошибки, а также ошибки нечетной кратности. Негарантированно код способен обнаруживать и другие групповые ошибки. Способность кода исправлять любые ошибки нечетной кратности следует из того, что, очевидно, все кодовые слова рассматриваемого кода имеют четный вес. Расширенный код Хэмминга используется в стандарте ISO14443 в режиме обнаружения ошибки. Если обозначить через PR – вероятность возникновения ошибки при передаче блока длиной n битов, а через p – вероятность ошибки на бит (Bit Error Rate, или BER), то , а среднее число N передач блока до его успешной передачи (передачи блока без ошибок) и эффективная скорость передачи данных C— в канале с пропускной способностью C определяются формулами.
. Чтобы обеспечить не более чем 20%-ное снижение производительности канала, необходимо, чтобы вероятность p удовлетворяла соотношению pn≤0.1 (очевидно, в этом случае PR≈pn). При n=103 битов, получаем p≤10−4. Выше предполагалось, что любая вероятность ошибки в блоке длиной n битов может быть обнаружена с помощью расширенного кода Хэмминга, что при вероятностях p≤10−4 практически соответствует действительности. Очевидно, что вероятность ошибки p определяется соотношением сигнал/шум (отношение мощности сигнала к мощности шума в точке приема сигнала). Ниже показан характерный график зависимости ошибки на знак передаваемой информации от отношения сигнал/шум для случая амплитудной модуляции с несколькими уровнями сигнала (см. рис. 1). На графике отношение сигнал/шум (SNR) выражено в децибелах и определяется по формуле , где S и N – соответственно, мощности сигнала и шума в точке приема сигнала. В случае стандарта ISO14443 используется двухуровневая амплитудная модуляция, из чего следует, что отношение сигнал/шум должно быть не ниже 8 децибел. Теперь мы готовы рассмотреть вопрос устойчивости протокола ISO 14443 к внешним атакам, нацеленным на перехват данных в радиоканале. Существует два вида подобных атак:
1. Скимминг (skimming): ничего не подозревающий держатель бесконтактной карты оказывается в зоне работы неавторизованного ридера, который несанкционированно получает от карты некоторую конфиденциальную информацию о ее реквизитах (номер карты, срок действия, CVC/CVV и т. п.).
2. Перехват данных (eavesdropping): в зоне работы карты с авторизованным ридером оказывается неавторизованный ридер, который перехватывает информацию, передаваемую от карты ридеру или от ридера карте.
Начнем со скимминга. Приводимая ниже формула устанавливает зависимость мощности антенны ридера, передающей несущую с частотой 13,56 МГц, P (Вт), от напряженности магнитного поля H(А/м) в области транспондера, расстояния между антенной и транспондером D(м) и ширины частотного спектра сигнала, передаваемого от ридера к чипу, B(Гц): Расчеты, выполненные по приведенной формуле, при характерных значениях H=4А/м и B=1МГц приведены в таблице 1. Из таблицы видно, что для общения карты с ридером на расстоянии до 5 см мощность передатчика должна быть порядка 0,5 Вт, что полностью соответствует ограничениям, установленным Federal Communications Commission (FCC) и European Telecommunication Standard (ETS). Чтобы выполнить скимминг с расстояния 0,5 м, необходима мощность приемоSignal-to-Noise Ratio (dB) Рис.1. Зависимости ошибки на знак передаваемой информации от отношения сигнал/шум для случая амплитудной модуляции с несколькими уровнями сигнала 1.00E-16 1.00E-14 1.00E-12 1.00E-10 1.00E-08 1.00E-06 1.00E-04 1.00E-02 1.00E+00 Probability of Error P(e) for PAM Signals 0 5 10 15 20 No. of discrete signal levels P(e) M=2 P(e) M=3 P(e) M=5 Symbol Error Probability D(м) P(Вт) 0,05 0,5 0,5 500 5 500000 Таблица 1. Минимальная мощность передатчика, необходимая для активации карты передающего устройства порядка 0,5КВт. Трудно представить себе ридер такой мощности, питающийся от батарейки или компактного аккумулятора. Однако в случае стационарного ридера, включенного в электросеть и установленного в людном месте, такая операция все еще остается теоретически возможной.
Однако при расстоянии между ридером и картой в 5 метров требуется мощность излучения порядка 0,5МВт. Такое излучение является прежде всего смертельным для человека.
Таким образом, полученные результаты показывают, что скимминг возможен при расположении ридера на расстоянии до 40см от чипа карты. На расстоянии более 1м скимминг невозможен по изложенным выше причинам.
Если же обратиться к перехвату данных, то мы обнаружим следующее. Амплитуда напряженности магнитного поля на некотором расстоянии от ридера обратно пропорциональна кубу этого расстояния, а энергия электромагнитной волны, соответственно, обратно пропорциональна шестой степени этого расстояния. В результате данные, полученные от ридера, могут быть перехвачены несанкционированным ридером на расстоянии нескольких метров между ридерами. Для перехвата данных, передаваемых от карты ридеру, расстояние между картой и несанкционированным ридером не должно превышать 80см.
Обобщая вышесказанное, можно сделать вывод о том, что радиоинтерфейс между картой и ридером небезопасен, однако зона, в которой интерфейс небезопасен, физически существенно ограничена приведенными выше параметрами. Следует отметить, что механизмы, заложенные в стандарте EMV (Secure Messaging, шифрование ПИН-кода при его офлайновой проверке и аутентификация CDA), дают возможность обеспечить безопасное взаимодействие карты и ридера. При использовании CDA можно даже обеспечить целостность обмена данными между картой и терминалом, в том числе целостность ответа на команду Verify. Даже если мошенник сумеет подставить в ответе на команду Verify значение, соответствующее успешной проверке ПИН-кода, при передаче картой ответа на команду Generate AC из значения Issuer Application Data, содержащего объект данных Card Verification Results, станет понятно, что офлайновая проверка ПИН-кода не состоялась.
В то же время злоумышленник может заблокировать приложение карты в случае, когда при нескольких попытках неверного ввода ПИН-кода будет превышен параметр PIN Try Limit. Это может приводить к проблемам для держателя карты и является одной из причин, по которой проверка ПИН-кода в бесконтактных картах не используется. Существует и так называемая эргономическая причина отказа от проверки ПИН-кода. Так, держатель карты должен располагать ее в непосредственной близости от ридера в течение всего времени выполнения операции. При необходимости использовать ПИН-код ему пришлось бы вводить значение последнего свободной рукой, что вызывало бы ряд неудобств.
Недавно MasterCard International и Visa International приняли спецификации MasterCard PayPass ISO14443 Implementation Specifications, разработанные MasterCard. В соответствии с этими спецификациями существуют следующие наиболее важные ограничения, связанные с использованием стандартов ISO14443 и EMV:
• карта и терминал должны поддерживать скорость обмена данными 106 Кбит/с, иные скоростные характеристики карта поддерживать не должна;
• транзакция выполняется только в том случае, если ридер “видит” только одну бесконтактную карту (антиколлизионные механизмы в коммуникационном протоколе не применяются);
• специальная процедура выбора приложения (PPSE);
• PIN Offline в качестве CVM не используется. К достоинствам бесконтактной карты следует отнести:
• удобство использования (не нужно правильно ориентировать карту, вставлять ее в окно ридера и т. п.);
• более высокая скорость выполнения операции (примерно 0,6–0,7сек.);
• более высокая надежность использования карт (ниже уровень механического износа). Однако, несомненно, главное достоинство бесконтактной карты состоит в значительно более высокой скорости выполнения операций по сравнению с контактной картой.
Это преимущество позволяет платежной индустрии:
• осваивать новые рынки, требующие высокой скорости обработки транзакции (оплата платных дорог, рестораны быстрого питания);
• увеличивать обороты по картам (вытеснение наличных).
Исследования, выполненные MasterCard, показывают, что в торговых предприятиях, начавших использование бесконтактных карт, безналичный оборот увеличился на 12%. Рассмотрим теперь результаты исследования, выполненного специалистами компании Gemplus, на бесконтактной карте со следующими характеристиками: RAM = 4,5 Кб, EEPROM = 32 Кб, ROM = 136 Кб; тактовая частота процессора = 10МГц; операционная система: Java Card 2.1; радиоинтерфейс: ISO 14443 Type B; имеются RSA-сопроцессор и 3DES-ускоритель; приложение карты поддерживает метод аутентификации Dynamic Data Authentication.
Исследования показали, что микросхема потребляет различную энергию при выполнении тех или иных команд приложением EMV-карты. Результаты измерений показаны в таблице 2.
Как видно из таблицы 2, наиболее энергоемкими являются команды Internal Authenticate и Verify (с закрытием ПИН-кода), требующие для своей реализации исполнения алгоритма RSA. Команды Generate AC, требующие выполнения алгоритма 3DES, занимают второе по энергопотреблению место.
На рисунке 2 показана интенсивность магнитного поля вокруг ридера. Зеленая область на рисунке определяет зону, в которой амплитуда напряженности магнитного поля не менее 2,5 А/м. Такая напряженность поля обеспечивает микросхему энергией, достаточной для выполнения наиболее энергоемких команд. Из рисунка видно, что для выполнения наименее энергоемкой команды Select достаточно, чтобы амплитуда напряженности магнитного поля была около 1,5 А/м. Результаты измерения времени выполнения операции, представленные на рисунке 3, позволяют сделать следующие выводы: 1.Выполнение операции с помощью бесконтактной карты занимает почти в 2 раза меньше времени, чем в случае с контактной картой (время обработки операции на терминале не учтено).
2.Главная составляющая экономии – скорость передачи данных (на порядок выше, чем в случае с контактной картой).
3.Время обработки команд чипом бесконтактной карты занижено сознательно по соображениям экономии потребления энергии чипом.