Смарт-карты
После выбора приложения терминал инициализирует транзакцию, информируя карту о начале выполнения новой транзакции и передавая карте терминальную информацию о ней. Затем терминал получает с карты профайл и указатель записей файлов, содержащих данные. Затем терминал читает указанные записи линейных файлов, извлекая из них данные приложения. Далее терминал выполняет целый ряд действий с целью принятия решения по данной транзакции: отклонить ее в режиме офлайн, продолжить выполнение в режиме онлайн или принять в режиме офлайн. Эти действия выполняются на основе предписаний профайла. Каждое из них можно рассматривать как проверку некоторого свойства, завершающуюся ответом «да» или «нет». TESTINGTESTING
На основе анализа всей совокупности проверок терминал примет решение о способе выполнения транзакции. Описанный принцип является ключевым моментом спецификаций. Принятие решения о способе выполнения транзакции, представляющим собой поиск компромисса между эффективностью и стоимостью (офлайн), с одной стороны, и безопасностью (онлайн), с другой стороны, осуществляется терминалом (по установкам эквайрера) на основе предписаний, содержащихся в профайле карты (определенном эмитентом).
В качестве первой «проверки» карты терминал выполняет ее аутентификацию.
Аутентификация предполагает использование криптографии с открытыми ключами и базируется на следующей идее. Существует назначенный платежными ассоциациями центр доверия (Certification Authoгity), осуществляющий в условиях высочайшей секретности подписывание открытых ключей эмитента. Всякий терминал содержит соответствующие открытые ключи, полученные из центра доверия и позволяющие распознать любое истинное приложение на карте.
Спецификации предусматривают два метода аутентификации статическую (эмитентом подписываются одни и те же данные) и динамическую (картой после выполнения транзакции генерируется подпись каждый раз разных данных). Кроме того, предусмотрена миграция от одних ключей к другим и одних конкретных методов дешифрации к другим, хотя и имеющим одну основу - алгоритм RSA.
После осуществления аутентификации терминал выполняет ряд проверок, определяет соответствие номера версии приложения в терминале и на карте. Также проверяет ограничения на географию, записанные на карте, и дату (начала) действия приложения и срок действия карты.
Далее осуществляется верификация держателя карты. На карте может присутствовать СVМ-список - список методов верификации держателя карты. Терминал обрабатывает каждое правило в том порядке, в котором они появляются в списке. Верификация завершается, когда один из методов успешно выполнится или список исчерпается. Обрабатываемые правила связаны со сравнением суммы транзакции с заданными в качестве параметров величинами. В зависимости от результата такого сравнения терминал осуществляет действия типа: «проверку ПИНа выполняет карта»; «шифрованный ПИН проверяется в режиме онлайн»; «проверку ПИНа выполняет карта + подпись» и т.п. Офлайн-проверка ПИНа завершается успешно только в одном случае - если карта вернет нормальный код возврата на команду VERIFY, выполняющую сравнение введенного держателем карты ПИНа и хранимого на карте ПИНа.
Затем терминал осуществляет так называемое терминальное управление рисками с целью защитить эквайрера, эмитента и платежную систему от мошенничества. Оно обеспечивает авторизацию эмитентом транзакций с высокой стоимостью и гарантирует, что все карты периодически выходят на онлайн-связь для защиты от угроз, которые могут быть необнаруженными при офлайн-обработке. Терминальное управление рисками включает:
- проверку доавторизованного лимита;
- случайный выбор транзакции для онлайн-выполнения;
- проверку частоты онлайновых операций.
Наконец, терминал выполняет анализ действий, принимая решение по вопросу выбора режима транзакции: онлайн/офлайн. Это решение принимается на основе анализа всех ответов и прочитанной в профайле маски. Таким образом обеспечивается влияние эмитента (записавшего на карту маску) на принятие решения и, следовательно, на риски при выполнении транзакции (то, что раньше полностью зависело от только эквайрера).
Далее, если терминал принимает решение выполнять транзакцию в режиме офлайн, он запрашивает у карты счетчик транзакций; если принимается решение о выполнении транзакции в режиме онлайн, терминал запрашивает у карты криптограмму авторизационного запроса.
Данная криптограмма включается в авторизационное сообщение и отправляется в соответствии с обычным протоколом хост-компьютеру.