Журнал ПЛАС » Архив » 2022 » Журнал ПЛАС №1 »

Смена караула, или Новые криптографические алгоритмы в платежах

Недавние изменения в отношении одной из важнейших составляющих стандарта EMV рассматривает Игорь Голдовский, директор Департамента инноваций, главный архитектор АО НСПК. Как и в своем предыдущем материале, он выступает в качестве независимого эксперта в области платежных технологий, с чьим богатым опытом и всесторонней профессиональной экспертизой в области электронных платежей мы продолжаем знакомить наших читателей.

Предыдущий материал.

Причиной написания этой статьи стал вышедший в конце октября 2021 года бюллетень EMV Specification Bulletin №243 «Introduction of XDA/ODE for EMV Specifications», описывающий изменения к одной из важнейших составляющих стандарта EMV, а именно — к документу EMV Integrated Circuit Card Specifications for Payment Systems, Book 2: Security and Key Management. Последний содержит описание криптографических алгоритмов и процедур, применяемых в стандарте EMV.

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

В названии бюллетеня сокращения XDA и ODE означают, соответственно, Extended Data Authentication (расширенную аутентификацию данных) и Offline Data Encipherment (офлайновое шифрование данных). Предполагается, что читатель знаком со специальной общепринятой в криптографии и платежных технологиях терминологией, поэтому автор не останавливается в статье на разъяснении ряда известных специалистам понятий.

Определенной сенсацией бюллетеня [EMV Specification Bulletin №243 «Introduction of XDA/ODE for EMV Specifications»] стал факт того, что вместо ожидаемого (по крайней мере автором статьи) и уже достаточно широко распространенного в индустрии алгоритма асимметричного шифрования ECDSA в новом стандарте используется алгоритм EC-SDSA (Elliptic Curve Shnorr Digital Signature Algorithm), ранее не применявшийся в платежных технологиях.

Несмотря на то, что представленные в бюллетене изменения вступят в действие в январе 2023 года, это, конечно же, не означает, что сразу после этой даты платежная индустрия начнет их использовать. Предстоит немалая работа по изменению спецификаций платежных приложений внутри платежных систем, реализации обновленных приложений производителями смарт-карт и OEM Pay, адаптации POS-терминалов к одновременной поддержке двух разных механизмов аутентификации платежного приложения и шифрования данных, циркулирующих между терминалом и картой (до полного выхода из употребления приложений на основе RSA на стороне терминалов потребуется поддержка «старых» и «новых» приложений).

Новые требования к криптостойкости. От 3DES к AES

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

Аутентификация — далеко не единственное применение криптографии в платежах. При необходимости криптография также обеспечивает конфиденциальность и целостность информации, циркулирующей между банками — участниками платежной системы и ее процессингом, картой и терминалом, терминалом и эквайрером, платежным приложением карты/смартфона и эмитентом.



Фото: golos.id


Надежность криптографических алгоритмов (их криптостойкость) зависит от размера используемых в них ключей. Напомню читателям некоторые оценки криптостойкости симметричных алгоритмов шифрования и хэш-функций. Чтобы «взломать» (узнать ключ) проверенный алгоритм симметричного шифрования (например, AES) с длиной ключа n бит по известному открытому тексту и соответствующему ему шифротексту, требуется выполнить порядка O(2n) шифрований (ровно такого же объема перебора ключей требует для компрометации идеальный шифр Клода Шеннона с длиной ключа n бит). Для поиска коллизии n-битовой хэш-функции требуется выполнить O(2n/2) операций хэширования, а для нахождения прообраза n-битовой хэш-функции — O(2n) операций хэширования. В соответствии с рекомендациями NIST [NIST SP 800-57, Part 1, Rev5, Tables 2&4; NIST SP 800-131A, Rev2] минимальная длина симметричного ключа общепринятого сегодня протокола AES должна составлять n = 128 бит как минимум, до 2030 года.

Каждый год производительность компьютеров и количество вычислительных средств в мире растут (в начале этого века — примерно в 1000 раз за 10 лет, сейчас темпы роста несколько замедлились). Это приводит к тому, что шансы стороны, стремящейся к раскрытию зашифрованной информации, также возрастают. Чтобы удерживать эти шансы на приемлемом уровне, приходится увеличивать размер ключа, а иногда даже менять алгоритм шифрования. Последнее обстоятельство связано с тем, что увеличение длины ключа, как правило, приводит к уменьшению скорости работы алгоритма, а иногда и к ухудшению других операционных показателей его функционирования (например, к увеличению времени генерации ключей).

Вследствие повышения требований к криптостойкости до сих пор широко используемый алгоритм шифрования 3DES (TDEA) с тремя ключами (общая длина ключа 168 бит) с 2023 года начнет выводиться из обращения с тем, чтобы окончательно перестать применяться после 2030 года.

Отметим, что благодаря известной атаке meet-in the-middle эффективная длина ключа алгоритма 3DES с тремя ключами составляет не 168 бит, как можно было бы ожидать, а только 112 бит.

Поэтому на смену 3DES приходит алгоритм AES с длинами ключа 128, 192 и 256 бит. При этом в соответствии с прогнозами PCI SSC даже при использовании длины ключа 128 бит алгоритм AES будет эффективен для использования в платежах как минимум до 2030 года.

Вопрос использования алгоритма Гровера на квантовых компьютерах для вскрытия ключа AES оставляем за рамками этой статьи. Заметим только, что алгоритм AES с длиной ключа 256 бит при попытке его взлома на квантовом компьютере имеет ту же криптостойкость, что и алгоритм AES с длиной ключа 128 бит при попытке компрометации его ключа на классическом компьютере.



Фото: pinimg.com


Среди других преимуществ AES необходимо отметить более высокую в сравнении с 3DES скорость работы алгоритма. Как показывает исследование, при шифровании потока данных в зависимости от модели процессора скорость шифрования c помощью AES в 1,5–2 раза выше скорости шифрования потоковых данных на 3DES.

Чтобы закончить с темой симметричных алгоритмов шифрования, отметим, что общий тренд, связанный с их применением, также учитывает отказ от режима блочных кодов ECB (Electronic Codebook) и переход на режим CBC (Cipher Block Chaining), а также добавление к шифруемым данным случайного числа (salt) при диверсификации шифруемых данных небольшого размера. Кроме того, показана миграция на симметричные алгоритмы шифрования с размером блока 128 битов. Это ускоряет шифрование данных и вычисление функции MAC (Message Authentication Code).

Сложнее обстоит дело с асимметричными алгоритмами шифрования. Сегодня наиболее популярные алгоритмы асимметричного шифрования — это RSA и алгоритмы на эллиптических кривых (ECDSA, EdDSA, ECDH, ГОСТ Р 34.10–2012 и другие). В основе безопасности алгоритма RSA лежит задача факторизации — разложения числа на простые множители. На сегодняшний день наиболее эффективным алгоритмом факторизации числа N является NFS-алгоритм, требующий

битовых операций, где o(1) функция, стремящаяся к 0 с ростом N,

обозначение для натурального логарифма.

В основе безопасности алгоритмов на эллиптических кривых лежит задача логарифмирования на множестве точек эллиптической кривой, заданной над конечным полем GF(p) простого порядка p. С помощью ρ-метода Полларда для решения задачи логарифмирования требуетсяопераций на кривой, где q — порядок группы точек эллиптической кривой.

Что касается алгоритма RSA с модулем открытого ключа размером 2048 бит, то он начнет выводиться из обращения начиная с 2023 года и будет запрещен к использованию после 2030-го [NIST SP 800-57, Part 1, Rev5, Tables 2&4; NIST SP 800-131A, Rev2]. Рекомендуемый размер модуля ключа RSA составляет 3072 бит, что соответствует энтропии 128 бит, принятой сегодня в качестве стандарта в финансовой индустрии.

Возвращаясь к вопросу изменений в EMV, заметим, что максимальный размер модуля открытого ключа в этом стандарте составляет всего 1984 бит. Конечно, когда мы говорим об ограничениях на размер ключа, то всегда понимаем, для каких конкретных целей ключ используется. Например, в том же стандарте EMV алгоритм RSA применяется для офлайновой аутентификации карты и безопасной передачи ПИН-блока с терминала на карту при использовании метода верификации пользователя PIN Offline. Для первого применения ограничение на размер ключа в 1984 бита является приемлемым, поскольку банк всегда может уменьшить лимит на сумму офлайновых операций до размера, допустимого с точки его процедур управления рисками. Например, банк может уменьшить этот лимит до нуля, вовсе отказавшись от офлайновых операций.

Что касается шифрования ПИН-блока, то на терминале, находящемся под контролем мошенников, к сожалению, хватает средств для перехвата ПИН-блока без необходимости его расшифрования при передаче на карту. Ну и, безусловно, важно то, что ПИН без чиповой карты для мошенника практически бесполезен! Это важное отличие чиповой карты от достаточно просто клонируемой карты с магнитной полосой.

Использование алгоритма RSA с «большими» (больше 2048 бит) модулями открытого ключа в финансовых технологиях становится затруднительным по следующим причинам:

  • Значительно увеличивается время на генерацию пары простых чисел (требуются для генерации модуля открытого ключа, а также открытой и закрытой компонент ключа RSA), ведущее себя как O(N4) от длины модуля открытого ключа N [Банковские микропроцессорные карты. М: ЦИПСиР: Альпина Паблишерз 2010. 686 с.]. Это, в свою очередь, по тому же закону увеличивает время на персонализацию карт банка с ростом N;
  • Увеличивается время на подпись, создаваемую картой, и проверку подписи терминалом как O(N3) и O(N2) соответственно с учетом того, что для подписи используется длинный закрытый ключ, а для проверки — короткий открытый ключ (в стандарте EMV короткий открытый ключ принимает два значения: 3 и 216 + 1);
  • Увеличивается объем данных, включающих подпись и сертификаты открытых ключей вместе с сопутствующей им информацией, которые карта должна передать платежному терминалу в ходе выполнения транзакции. Например, в стандарте EMV, чтобы передать терминалу подпись платежного приложения, созданную в рамках процедуры динамической аутентификации приложения, а также сертификаты карты и эмитента карты, могут потребоваться ответы на две команды терминала Read Record, а также на команду Generate AC или Internal Authenticate в случае соответственно комбинированной (CDA) и обычной динамической аутентификации DDA.


Фото: thalesgroup.com


Как показывают исследования, основной выигрыш во времени обработки транзакции при замене RSA на алгоритмы, работающие на эллиптических кривых, достигается именно за счет сокращения

Если у вас есть подписка, нажмите
Подписывайтесь на наши группы, чтобы быть в курсе событий отрасли.

Читайте в этом номере:


Перейти к началу страницы

Подпишитесь на новости индустрии

Нажимая на кнопку "подписаться", вы соглашаетесь с


политикой обработки персональных данных