<< Предыдущая

стр. 50
(из 71 стр.)

ОГЛАВЛЕНИЕ

Следующая >>

Проверка ограничений на использование карты (Processing Restrictions). Терминал анализирует
полученную ранее от карты информацию и определяет, может ли она быть обслужена в это время, в
этом географическом месте, в данной торговой точке (по типу) и т.д.
Проверка полномочий владельца карты (Cardholder Verification). Среди данных, прочитанных с
карты, находятся и параметры, определяющие, каким образом осуществляется проверка лица,
предъявившего карту. Наряду с известными для случая магнитной карты такими методами, как подпись
клиента и проверка ПИН-кода в режиме онлайн, используется также офлайн-проверка ПИН-кода.
Для обеспечения этой процедуры сначала проверяется, не превышен ли лимит неудачных
попыток ввода, а затем, если все в порядке, вводится и сам ПИН (команда Verify). При этом существуют
два способа ввода - обычный и шифрованный. Во втором случае ПИН шифруется с использованием
публичного RSA-ключа карты с использованием случайного выданного картой числа и
расшифровывается внутри карты секретным ключом. При этом возможно использование пары ключей
для DDA, а возможно и наличие отдельной пары для ПИН-шифрования.
Понятно, что и DDA, и шифрованный ПИН предъявляют к карте одинаковые требования, а
именно, поддержку RSA-шифрования. Таким образом, оба этих функционала связаны - если карта не
может поддержать DDA, нечего говорить о шифровании ПИН, и т.д.
Проверка рисков (Terminal Risk Management). Терминал проверяет, не находится ли карта в
"черном" списке, не превышен ли floor limit превышает ли величина транзакции лимит по обслуживанию
карты в режиме офлайн, требуется ли обязательно послать онлайн-запрос и т.д.
Принятие терминалом решения о дальнейших действиях (Terminal Action Analysis). На основании
приведенных ранее операций (аутентификации данных, проверки ограничений на использование,
офлайн-проверки ПИН-кода, проверки рисков) терминал принимает решение, как ему поступить с
транзакцией. Имеются три варианта: отклонить транзакцию, послать транзакцию за авторизацией в
режиме онлайн, принять транзацию офлайн. Терминал предлагает карте (команда Generate Application
Cryptogram - АС) вычислить 3DES-криптограмму переданного запроса. В соответствии с
перечисленными вариантами решений имеются и три типа криптограмм - Application Authentication
Cryptogram (AAC), Authorization Request Cryptogram (ARQC), Transaction Certificate (TC).
Принятие картой решения о дальнейших действиях (Card Action Analysis). На основании
заданной эмитентом логики поведения и значений параметров, получив запрос на криптограмму, карта
сначала сама анализирует принятые риски. При этом решение, предложенное терминалом, картой
может быть только ужесточено. То есть решение послать онлайн-запрос может быть либо
подтверждено, либо пересмотрено на отклонение транзакции сразу, решение терминала о принятии
транзакции в офлайн-режиме может быть принято или заменено на отклонение транзакции или на
онлайн-запрос. В соответствии с решением карты формируются криптограммы типа AAC, ARQC или ТС.
Авторизация карты в режиме онлайн (Online Processing). Если терминал и карта приняли
решение послать эмитенту онлайн-запрос, то терминал по линиям связи передает криптограмму ARQC и
данные карты и транзакции, использованные при ее получении. Хостовая система банка-эмитента
проверяет корректность криптограммы (используя уникальный SDES-ключ карты), принимает решение
по данной транзакции и посылает ответ с критограммой типа Authorization Response Cryptogram (ARPC),
используя тот же ключ карты. В случае если хостовая система поддерживает изменение данных на карте
методом скриптов, в ответе посылается соответствующий скрипт.
Если карта поддерживает аутентификацию эмитента, то терминал, получив авторизационные
данные, посылает их в карту, используя команду External Authentication. Карта при этом вычисляет
значение ARPC и сравнивает с полученным от терминала. Если все сходится, значит, ответ пришел от
эмитента. Если аутентификация не прошла, то следующие транзакции будут отправлены в онлайн до
успешного сравнения ARPC. Эмитент имеет возможность установить на карте параметр, отклоняющий
транзакцию в случае неудачной аутентификации.
Изменение параметров карты (Issuer-to-Card Script Processing). Эмитент имеет возможность
путем посылки в авторизационном ответе специальных скриптов изменить параметры карты,
используемые при работе в офлайн, а также ПИН-код и число попыток его предъявления, заблокировать
или разблокировать приложение, заблокировать карту. Скрипты подписываются с использованием
специального SDES-ключа карты, новое значение ПИН шифруется таким же ключом.
Завершение процесса (Completion). На основании информации, полученной от эмитента,
транзакция либо принимается, либо отклоняется. Соответственно формируются криптограммы ТС или
ААС.
На рынке существует достаточно широкая номенклатура сертифицированных карт,
удовлетворяющих спецификациям EMV и международных платежных систем. Попробуем
классифицировать эти предложения. Обратим внимание на тот факт, что если достаточно полно
описаны поведение карты "в бою" (при работе с терминалом), то вопросы (и команды), касающиеся
персонализации карты, отданы "на откуп" разработчикам чипов и самих карт.
Существуют два типа карт - карты с "закрытыми" операционными системами (так называемые
proprietary- или native-карты) и карты с открытыми операционными системами.
Как правило, операционные системы (маски) для native-карт разрабатывают сами производители
смарт-карт, в первую очередь такие крупные, как Gemlpus, Axalto, Oberthur, G&D. В этих картах
приложение - это двухуровневая структура данных (аналог персонального компьютера - файлы внутри
директории). По своим функциональным возможностям данные карты можно разделить на карты с
одним EMV-приложением (VSDC или M/Chip Lite) и многофункциональные карты. Преимущество первых
- относительная дешевизна, вторых - возможность использования дополнительных приложений. В
простейшем случае это может быть приложение типа loyalty - приложение, обеспечивающее поощрение
клиентов при обслуживании в определенной торговой сети путем начисления премиальных баллов
(бонусов), величина которых, как правило, зависит от величины покупки. Кроме того, возможно создание
как бы дополнительных локальных EMV-приложений, аналогичных приложениям платежных систем
(здесь, правда, может возникнуть проблема урегулирования такого решения с самой международной
платежной системой). Наконец, с помощью ряда карт можно строить различные кошельковые схемы, в
том числе хорошо известные в России системы пре-давторизованного дебета или "бензиновые" системы
типа электронный кошелек, а также различные идентификационные системы (пенсионный фонд,
медицинское страхование, логический доступ в корпоративные сети, физический доступ и т.д.). В
подавляющем большинстве чипы этих карт не имеют криптопроцессора и не поддерживают
динамическую аутентификацию и шифрованный ПИН (хотя имеются и исключения).
К картам с открытыми операционными системами относятся Java-карты (или близкие к ним
карты, удовлетворяющие спецификациям Global Platform) и карты с операционной системой Multos.
Приложения на данных картах - программы (апплеты), обеспечивающие ту или иную функциональность.
При активизации апплета возникает возможность записи и хранения данных. На картах Multos
реализуется приложение M/Chip Select принадлежащее MasterCard. Карты поддерживают DDA.
Карты Global Platform могут быть как с поддержкой DDA и шифрованного ПИНа (т.е. с
криптопроцессором),так и поддерживающиеЗОА. Как правило, для этих карт существует только апплет
VSDC, предназначенный для выпуска карт Visa. Однако у некоторых карточных производителей имеются
апплеты и для MasterCard (M/Chip Lite - SDA-карты). Среди сертифицированных карт Global Platform с
поддержкой DDA (производители карт - правообладатели на операционные системы - Oberthur, G&D и
Gemplus) стоит отметить карты JCOPxO (х = 2, 3), правообладателем которых является сама Visa,
передающая право изготавливать карты на достаточное большое число производств и регулирующая
конечную цену. Карты Global Platform интересны также с точки зрения персонализации. Для этих карт
существуют строгие рекомендации по механизму персонализации и структуре персонализационного
файла (спецификация Common Personalization).
Следует отметить, что следование данной спецификации удобно и целесообразно при
персонализации любых карт.
Карты с открытыми операционными системами - многофункциональные и предназначены в
основном для многофункциональных систем. Эти карты более дорогие, нежели карты с закрытой
операционной системой. Некоторые из них способны безопасно поддержать так называемую
постэмиссию, когда приложение не только активируется и/или персонализируется, но и создается уже
после персонализации карты.

Жизненный цикл карты

До того как карта получает "путевку в жизнь" и выдается владельцу, она последовательно
проходит три стадии:
изготовление микросхемы;
изготовление карты;
персонализация карты.
На этапе изготовления микросхемы с микропроцессором производятся следующие основные
действия:
прожигание (hard-coding) в ПЗУ (ROM) микропроцессора операционной системы чипа (маски);
генерация номера микропроцессора и его запись в микросхему;
генерация секретного ключа К(1С) (диверсификация от материнского ключа М(1С) по номеру
чипа) для микропроцессора и его сохранение в чипе;
ключ К(1С) используется для закрытия доступа к карте, а также для передачи секретной
информации на карту на этапе ее изготовления;
материнский ключ передается производителю карт.
На этапе изготовления самой карты после имплантации чипа в пластиковую основу
осуществляются следующие процедуры:
фабрика, изготавливающая карты, подтверждает знание ключа К(1С), при этом используется
стандартная процедура аутентификации, а именно, некоторое псевдослучайное число, полученное от
карты устройством предперсонализации, шифруется и возвращается карте для проверки;
производится инициализация карты (в EEPROM инициируется файловая система - частично на
верхнем уровне или полностью, включая карточные приложения);
генерируется и записывается на чипе уникальный серийный номер карты;
генерируется секретный ключ КОС (диверсификация от материнского ключа КМС по серийному
номеру карты) и загружается в чип (иногда в шифрованном виде с использованием ключа К(1С) или
аналогичного);
ключ КОС используется для закрытия доступа к карте при транспортировке, а также при
передаче секретной информации на карту на этапе ее персонализации;
материнский ключ передается персонализатору карты.
Необходимо отметить, что выше приведена общая схема производства карт с микропроцессором
с учетом разграничения ответственности за безопасность. Так, в частности, в описанной
последовательности имеется по одному транспортному ключу для микросхемы и самой смарт-карты. На
самом деле таких ключей может быть несколько: один для аутентификации карты и устройства, второй
для шифрования при загрузке секретных параметров (тех же ключей), третий для формирования
криптографической подписи при выполнении особо важных команд (например, при создании файловой
структуры карты).
Определенные особенности имеются для карт с открытыми и закрытыми операционными
системами (например, для первых производитель карт обеспечивает загрузку в ROM соответствующих
сертифицированных апплетов международных платежных систем).
Наконец, сам процесс создания приложения (реализации требуемой файловой структуры) может
происходить как при карточном производстве (предперсонализация с последующей загрузкой данных),
так и на этапе собственно персонализации.
Непосредственно персонализация карты:
персонализатор карты подтверждает знание ключа КОС;
производится персонализация карты (в EEPROM создается файловая система, записываются
данные, секретные данные записываются с использованием ключа КОС).

Подготовка данных

Общепринято подразделять весь процесс персонализации смарт-карт международных
платежных систем на два этапа: подготовка данных и собственно персонализация, включающая как
персонализацию микросхемы, так и традиционную персонализацию обычных магнитных карт.
Основная задача первого этапа состоит в формировании файла данных, который передается на
машину персонализации, будь то эмбоссер или конвейерное устройство для последующего выпуска
карты.
База данных клиентов - это набор данных, относящихся к клиентам: их имена и фамилии
(Cardholder Name), сроки действия карт (Application Effective and Application Expiration Date), номер или
PAN (Primary Account Number) и т.д. Все эти данные, как правило, имеются в системе бэк-офиса
эмитента традиционных карт с магнитной полосой.
Риск-процедуры - в данном контексте набор параметров, определяющих решения
организационного характера, которые принимаются эмитентом и относятся к безопасности
функционирования системы и уровню сервиса, предоставляемому клиенту. Здесь имеются в виду
методы аутентификации (статическая, динамическая, набор данных для аутентификации), возможность
офлайн-аутентификации, количество попыток для ввода ПИНа, лимиты для офлайновых транзакций и
т.д. При этом разные клиенты могут по-разному обслуживаться, соответственно и риск-параметры их
карт могут отличаться.




"Рис. 1. Персонализационные данные"

Система управления ключами отвечает за криптографические процедуры, осуществляемые при
персонализации карт. Сюда входят список необходимых ключей и областей их применения, методы их
генерации, непосредственно генерация и размещение на карте.
Для понимания процесса подготовки данных, а затем процесса загрузки данных в микросхему
необходимо детально рассмотреть функции, выполняемые основными участниками всего процесса, и
информационные потоки, возникающие между ними (рис. 2).
В данной схеме в порядке очередности событий:
производитель карт создает КМС - мастер-ключи для доступа к картам в процессе
персонализации и переправляет его по секретным каналам банку-эмитенту, а также персонализатору.
Способы генерации ключа и его передачи могут быть различными. В дальнейшем производитель карт
закрывает доступ к ним с помощью ключей КОС, являющихся производным от КМС. При формировании
КОС используется серийный номер карты, что делает каждый ключ уникальным для каждой карты.
Персонализатор, получивший КМС от эмитента, будет "открывать" карты при помощи ключей КОС,
которые будет формировать по тому же алгоритму, по которому это делал производитель. Алгоритмы
шифрования, использующиеся в этих процедурах, как и большинстве других, описываемых дальше, -
симметричные, как правило, основанные на DES и 3DES (чаще именно один из этих двух). Разумеется,
если речь не идет о публичной криптографии, используемой для формирования и проверки
сертификатов;
"Рис. 2. Общая блок-схема процесса персонализации"

производитель карт осуществляет их изгототвление, закрывает доступ к ним ключами КОС и
отправляет персонализатору;
система бэк-офиса банка-эмитента формирует данные для передачи их в комплекс подготовки
данных (КПД). Некоторые из этих данных являются секретными (к ним, безусловно, относится ПИН, а
также могут относиться и другие величины в зависимости от решений самого банка). Секретные данные
шифруются посредством ключа КЕК1 (Key Exchange Key 1), который, в свою очередь, передается в КПД
по некоторому секретному каналу. Среди данных, передаваемых эмитентом в КПД, находятся также те,
которые будут содержаться на поверхности карты (в напечатанном или эмбоссированном виде), а также
на магнитной полосе;
КПД осуществляет генерацию пары несимметричных ключей эмитента и передает открытые
ключи в орган сертификации платежной системы для создания сертификатов. Орган сертификации
подписывает открытый ключ эмитента своим секретным ключом и создает сертификаты, которые будут
подтверждать подлинность эмитента карты перед терминалом в процессе аутентификации. Помимо
открытых ключей эмитента при создании сертификатов участвуют и другие данные (такие, как Issuer
Identification Number, Certificate Expiration Date, Certificate Serial Number, Hash Algorithm Indicator).
Отметим, что, поскольку процесс получения сертификатов достаточно продолжительный, его можно
осуществить заранее, еще даже до изготовления карт-заготовок. Сформированный сертификат
переправляется в КПД;
КПД с использованием секретных ключей эмитента для каждой карты подписывает данные,
входящие в список данных статической аутентификации (к ним относятся: Application Effective Date,
Application Expiration Date, Application Usage Control, Application Primary Account Number (PAN) и т.д.).
В случае поддержки динамической аутентификации для каждой карты создается своя пара
несимметричных ключей, открытый ключ карты подписывается секретным ключом эмитента (аналогично
описанной выше процедуре), а секретный ключ загружается на карту для участия в дальнейшем в
процессе аутентификации.
Помимо создания несимметричных ключей эмитента и карт, в стандартные функции КПД входит
генерация 3DES мастер-ключей эмитента и порождаемых ими карточных ключей. К этим ключам
относятся:
а) авторизационные ключи, используемые при генерации и проверке криптограмм;
б) ключи, подписывающие скрипты, изменяющие параметры карты;
в) ключи, шифрующие новые значения ПИНа.
Помимо генерации всех необходимых секретных величин, КПД полностью формирует файл с
EMV-данными для персонализационно-го устройства. Секретные данные, в том числе и те, которые
были зашифрованы ключом КЕК1, перешифровываются ключом (набором ключей) КЕК2. Полученный
файл отправляется персонализатору. По секретному каналу туда же переправляется ключ КЕК2;
на персонализационном оборудовании "встречаются" карты, закрытые КОС, и данные,
зашифрованные КЕК2. Внутри используемого на этом этапе защищенного криптографического
устройства производится расшифровка данных с помощью полученного КЕК2. Аналогично из
полученного от эмитента ключа КМС формируются ключи КОС, с помощью которых "открываются" карты
и перешифровываются данные для микросхемы. Происходят внешняя и электрическая персонализация.
Стоит отметить, что в приведенной схеме, как это часто бывает, некоторые из участников могут
представлять одно и то же юридическое лицо. Стандартной является ситуация, когда
персонализационное оборудование и комплекс подготовки данных принадлежат эмитенту и
располагаются на территории банка. В то же время технологически все они являются разными
участниками процесса.
Итак, подготовка данных - это ключевой как в прямом, так и переносном смысле этап
персонализации смарт-карт. За его выполнение ответственность несет программно-аппаратный
комплекс, в состав которого входит криптографическое устройство. Рассмотрим более подробно
возможную (а зачастую и требуемую) его функциональность. На первом этапе в КПД поступают данные
для выпуска карт с магнитной полосой, в том числе информация о владельцах карт. Кроме того, из
органа сертификации платежной системы (Visa, MasterCard) поступает сертификат открытого ключа
банка-эмитента, подписанный открытым ключом платежной системы. Перед формированием SDA к
сертификату добавляются также необходимые параметры приложения и эмитента. Вычисление
цифровой подписи SDA производится с применением открытого ключа эмитента. Далее путем
диверсификации симметричного мастер-ключа эмитента (набора ключей) КПД формирует
симметричные ключи карты. Затем, если предусмотрена схема DDA, формируются несимметричные
ключи карты и вычисляется сертификат публичного ключа (для каждой карты). После добавления
параметров, специфичных для карты, а также риск-параметров, задаваемых эмитентом, данные
форматируются и готовы к персонализации на устройстве.




"Рис. 3. Схема работы комплекса подготовки данных"

Рассмотрим функциональные возможности КПД.
В процессе своей работы комплекс подготовки данных оперирует следующими объектами:
шаблоны приложений EMV (включают в себя данные, необходимые для персонализации
приложения, группировку этих данных по файлам и записям, наборы данных для вычисления
сертификатов SDA и DDA, используемые криптографические данные и способы их получения);
постоянные значения для ряда используемых параметров (к таким значениям относятся,
например, BIN банка, код страны, код валют);
шаблоны персонализируемой карты (включают в себя шаблоны используемых приложений, а
также группы постоянных значений, используемые каждым приложением);
задание на подготовку данных (включает в себя используемые шаблоны карт, используемый

<< Предыдущая

стр. 50
(из 71 стр.)

ОГЛАВЛЕНИЕ

Следующая >>