Ключевой набор

advertisement
Как известно, при осуществлении операций с EMVкартами используется большое количество различных
криптографических ключей, каждый из которых имеет
свое уникальное назначение и характеристики. Набор
криптографических ключей зависит, в частности, от того,
какой именно способ офлайновой аутентификации
поддерживает карта. Так, при применении технологии
динамической аутентификации (Dynamic Data
Authentication – DDA) список ключевого материала,
задействованного в совершении операции, значительно
расширяется. Зачастую специалисты банка начинают
знакомиться с особенностями управления ключевым
материалом EMV-карт только на этапе активной миграции
– при выборе типа карты. Именно от базовых
характеристик карты будет зависеть, сможет ли банк-эмитент реализовать технологию DDA
на своих картах или ему придется довольствоваться SDA (Static Data Authentication).
Принимая во внимание сложность и огромное количество особенностей, присущих
управлению криптографическим материалом, ответственным сотрудникам банка следует
заранее продумать некоторые основные моменты этого вопроса. Данный материал является
общим описанием процедур и особенностей управления ключевым материалом EMV-карт и
адресован прежде всего офицерам безопасности банков, ответственным за хранение и
передачу криптографических ключей, а также участникам проекта EMV-миграции, которые
также хотели бы подробнее ознакомиться с этим аспектом. Как и в первой части публикации,
в настоящей статье будет использоваться общедоступная документация глобальной
ассоциации EMVCo.
Ключевой набор
Ключевой материал, задействованный в процедурах выпуска EMV-карт и их последующего
использования, можно условно разделить на три основные группы:
• транспортные ключи;
• управляющие ключи карты;
• ключи платежного приложения Visa или MasterCard.
Рассмотрим каждую из этих групп в отдельности.
Транспортные ключи служат для защиты процедуры обмена данными между различными
участниками процесса выпуска карты – персонализационным бюро, банком-эмитентом,
процессинговым центром, производителем микропроцессоров, платежной системой и т. д.
Транспортными ключами шифруется важная информация, например, другой ключевой
материал, пересылаемый участниками.В России большинство крупных банков имеют
собственные персонализационные и процессинговые центры. Поэтому для них наиболее
актуальным является вопрос защиты информационного обмена с платежной системой. В
свою очередь, банкам, не имеющим собственного процессинга и персонализационных
мощностей, необходимо с должным вниманием относиться к данному процессу и в
обязательном порядке использовать транспортные ключи при обмене конфиденциальной
информацией. Зачастую транспортные ключи генерируются одной из сторон процесса и
пересылаются другой стороне в виде трех компонент ключа. Рекомендуется использовать
стандартную процедуру отправки и получения ключевого материала (это относится ко всем
криптографическим ключам, а не только к транспортным). Достаточно распространена схема
отправки компонент ключа трем офицерам безопасности, работающим в различных
подразделениях организации – участника процесса. Компоненты пересылаются не
единовременно, но с интервалом в один или два дня. После их получения офицеры
безопасности стороны-получателя должны оформить акт приемки-передачи
криптографических ключей согласованной формы и отправить одну копию акта сторонеотправителю. После загрузки компонент в криптографический модуль безопасности
(процедура загрузки также должна быть регламентирована ранее подготовленным
документом) бумажные или электронные носители, на которых пересылались компоненты,
должны быть уничтожены согласованным способом. В результате составляется акт
уничтожения криптографических ключей, копия которого также пересылается сторонеотправителю.Рекомендуется, чтобы одинаковые транспортные ключи использовались только
двумя организациями. При необходимости организации дополнительного канала
защищенного обмена должен быть сгенерирован новый транспортный ключ (использование
существующего ключа не рекомендуется).
Управляющие ключи карты (также называются служебными ключами) используются для
персонализации карты и генерации необходимых данных на этом этапе. Например, один из
служебных ключей карты применяется для вычисления значения MAC-кода на этапе ее
персонализации.
Ключи платежного приложения – это ключи, которые участвуют в процедурах
аутентификации и в проведении карточной операции. В эту группу входят следующие
криптографические ключи.
MDK (Master Derivation Key). Зачастую проект EMV-миграции банка начинается с
получения этого мастер-ключа. Дело в том, что на стадии заполнения проектной
документации банк может делегировать полномочия по генерации этого ключа платежной
системе или самостоятельно сгенерировать этот ключ и передать его платежной системе. При
делегировании полномочий по генерации мастер-ключа платежной системе банк-эмитент
получит MDK от менеджера проекта в зашифрованном виде в течение достаточно
небольшого промежутка времени после согласования проектной документации.
UDK (Unique Derivation Key). UDK используется картой для генерации ответных
криптограмм карты TC, AAC и ARQC. UDK и MDK используются для защиты
информационного обмена между EMV-картой и процессинговым центром банка, а также для
их взаимной аутентификации (см. первую часть статьи в “ПЛАС” №1/ 2006. – Ред.). Таким
образом, эти ключи задействуются в случае проведения операции в онлайновом и
офлайновом режимах. Если UDK уникален для каждой карты, то MDK может использоваться
банкомэмитентом для всех своих карт в целом или для каждого BIN, как это, например,
рекомендовано Visa International.
Пара ключей эмитента (Issuer keys pair). До начала выпуска EMV-карт банк-эмитент
должен сгенерировать пару ключей, одним из которых является специальный секретный
ключ эмитента (Private Issuer Key), подлежащий постоянному хранению в своем
криптографическом модуле в защищенном виде, а другим – публичный ключ эмитента
(Public Issuer Key). Публичные ключи могут передаваться другим участникам операций для
аутентификации сторон. Банк-эмитент может сгенерировать пару ключей специально для
определенного BIN, для префикса карты (который, как правило, определяет карточные
продукты) или для диапазона счетов (Account Ranges). В этом смысле платежные системы
предоставляют банкам достаточно большую свободу действий. После генерации публичные
ключи направляются на сертификацию в платежную систему. Там публичные ключи банка
подписываются секретным ключом платежной системы, или, иными словами,
“сертифицируются” данной ассоциацией. Только сертифицированные публичные ключи
эмитента могут записываться на карту для дальнейшего использования при проведении
операций. В противном случае процесс аутентификации будет невозможен. Здесь следует
заметить, что платежные системы с должным вниманием относятся к вопросу обеспечения
безопасности инфраструктуры публичных ключей. Именно поэтому длина ключей постоянно
увеличивается, что призвано гарантировать защищенность информации от посягательств
злоумышленников. Например, в конце 2005г. Visa International прекратила сертификацию
публичных ключей с длиной 1024 бит. Таким образом, с начала 2006г. эмитенты EMV-карты
должны будут перейти на применение ключей с длиной 1154 бит. Итак, после проверки
правильности генерации публичного ключа и его сертификации платежной системой
подписанный публичный ключ возвращается к эмитенту. Именно этот ключ (называемый
сертификатом платежной системы) будет в дальнейшем применяться при проведении
офлайновой аутентификации.
Пара ключей карты (ICC Key pair). Пара ключей карты хранится в защищенной области
памяти карты и используется для проведения DDA-аутентификации.
SDA и DDA
Управление
криптографическими ключами
EMV-карт основывается на
общеизвестной Инфраструктуре
публичных ключей (PKI –
Public Keys Infrastructure),
которую также иногда называют
технологией асимметричных
ключей. В двух словах PKI
можно описать следующим
образом. В основе данной
технологии лежит
использование пары связанных
ключей – секретного и
публичного ключа.
Применительно к EMV эти
ключи называются Private Issuer
Key и Public Issuer Key,
соответственно (см. рис. 1).
Секретный ключ хранится с
соблюдением всех норм
безопасности и используется
для шифрования передаваемой
информации. Публичный ключ
может пересылаться любыми
участниками информационного
обмена и используется ими для
расшифровки данных,
зашифрованных определенным
секретным ключом.
Особенностью данной
технологии является возможность организации защищенного обмена информацией между
большим количеством участников процесса, поскольку публичный ключ может быть передан
неограниченному числу сторон. С другой стороны, в технологии DES (Data Encryption
Standard), например, один и тот же ключ используется для шифрования и расшифровки
данных (см. рис. 2). Таким образом, защищенный обмен можно организовать только между
ограниченным числом участников. SDA-аутентификация выполняется терминалом с
использованием технологии PKI и получаемой от карты информации. Как уже упоминалось
выше, для проведения SDA в памяти карты должен содержаться публичный ключ эмитента,
подписанный секретным ключом платежной системы. Фактически подпись платежной
системы – это набор специальных данных, подтверждающих, что владелец подписанного
ключа действительно является сертифицированным эмитентом карт платежной системы (см.
рис. 3). На первом этапе процесса SDA-аутентификации карта пересылает терминальному
устройству сертифицированный публичный ключ эмитента. Терминал при помощи
публичного ключа платежной системы, который в обязательном порядке должен содержаться
в его памяти, проверяет “подпись” (сертификат) платежной системы. В результате терминал
получает публичный ключ эмитента, которому он может доверять, поскольку этот ключ
подписан платежной системой (см. рис. 4).
Затем терминал запрашивает у карты сертификат эмитента, который представляет собой
фиксированный набор данных о карте, зашифрованный секретным ключом эмитента. Этот
набор данных регламентирован платежными системами и спецификациями EMVCo (хотя
последние устанавливают лишь самый общий набор данных, которого, по мнению
платежных систем, недостаточно для проведения аутентификации). Например, в набор
данных, регламентированный платежными системами, входит, помимо данных,
регламентированных EMVCo, номер карты, срок действия приложения, список CVM и т. д.
Используя публичный ключ эмитента, терминал расшифровывает этот набор данных и
сравнивает его с аналогичными значениями в памяти карты. В результате этой проверки
терминал удостоверяется, что данные на карте не были изменены злоумышленниками
(очевидно, что даже если бы преступникам удалось изменить набор данных в памяти карты,
они бы все равно не смогли бы подделать значения данных в сертификате эмитента).
Таким образом, удачное
проведение SDAаутентификации позволяет
гарантировать, что информация
на карте не была
несанкционированно изменена
после ее персонализации.
Преимуществом SDA является
простота реализации и
универсальность, которая
достигается за счет
использования технологии PKI.
Кроме того, проведение SDA не
требует от карты и терминала
осуществления сложных
вычислительных операций. Таким образом, механизм SDA может быть реализован даже на
базе смарт-карт так называемого входного уровня. Однако SDA-карты используют
одинаковый набор ключей, сертификатов и данных карты на протяжении всего жизненного
цикла карты (от 2 до 5 лет). А, как известно, в обеспечении безопасности неизменность
защитных мер по определению является негативным фактором. Следует также учитывать,
что платежные системы требуют от своих банковчленов в обязательном порядке организовать
поддержку SDA-технологии терминальными устройствами и EMV-картами, даже если банк
намерен использовать более безопасную технологию DDA. Безусловно, со временем
платежные системы будут вынуждены полностью перейти на использование DDA. Однако
процесс миграции на более безопасную технологию будет происходить поэтапно и, вероятно,
начнется с терминальной сети. При проведении DDA-аутентификации карта также
пересылает терминалу сертифицированный публичный ключ эмитента, подписанный
секретным ключом платежной системы. Терминал удостоверяется в действительности
публичного ключа и запрашивает сертификат эмитента, а также публичный ключ карты. В
защищенной области памяти карты, поддерживающей DDA, хранится секретный ключ
карты, индивидуальный для каждой карты. В открытой области памяти чипа карты хранится
ее публичный ключ, который пересылается терминалу при каждой аутентификации.
Использование пары ключей карты также осуществляется по технологии PKI.
После получения публичного
ключа карты терминал
пересылает карте некоторый
набор данных, уникальный
для данной операции, и
запрашивает карту подписать
эти данные своим секретным
ключом. Далее терминал
проверяет данные,
подписанные секретным
ключом карты, при помощи
публичного ключа карты,
полученного ранее. В случае
успешной проверки DDAаутентификация считается
проведенной успешно.
Преимуществом технологии DDA является использование уникального набора данных для
аутентификации карты при каждой новой операции. На данный момент не существует ни
одного доказанного случая взлома секретной области памяти карты. Следовательно,
злоумышленники не могут скопировать секретный ключ карты, даже если в их руках
окажется ее публичный ключ. Без действительного (валидного) секретного ключа
DDAаутентификация состояться не может.
Выводы
При выборе EMV-карты участники проектной группы должны сформировать требования к
функционалу карты и ее защищенности. Именно исходя из этих требований выбирается тип
аутентификации, поддерживаемой картой, – SDA или SDA+DDA. Не следует забывать и о
рекомендациях и правилах платежных систем. Поэтому на данном этапе следует обратиться
за советом к менеджеру проекта со стороны платежной системы. Особое внимание
необходимо уделить вопросу разработки внутрибанковских документов, регулирующих
вопросы управления ключевым материалом. Если в процессе персонализации карт участвуют
сторонние компании (персонализационное бюро или процессинговый центр), то
аналогичные процедуры с их участием должны быть согласованы и документированы
должным образом. И, наконец, всегда следует помнить о том, что именно в момент передачи
от одного лица другому возникает наибольшая степень риска несанкционированного доступа
к конфиденциальной информации и ее последующего использования в преступных целях.
Поэтому не следует пренебрегать использованием транспортных ключей в процессе передачи
данных, которые не должны попасть в чужие руки.
Download