Авторизация платежей при использовании Apple Pay
Если на устройстве есть Secure Enclave, оплату можно совершить только после ее авторизации со стороны Secure Enclave. На iPhone или iPad это включает подтверждение того, что пользователь прошел аутентификацию с помощью Face ID, Touch ID или код-пароля устройства. По умолчанию используется Face ID или Touch ID (при наличии), но вместо них также можно ввести код-пароль. Пользователю будет предложено ввести код-пароль после трех безуспешных попыток распознавания отпечатка пальца или двух безуспешных попыток распознавания лица. После пяти безуспешных попыток ввод код-пароля становится обязательным. Кроме того, код‑пароль требуется, если функция Face ID или Touch ID не настроена или ее использование не включено для Apple Pay. Для совершения платежа на Apple Watch устройство должно быть разблокировано с помощью код-пароля, а пользователь должен дважды нажать боковую кнопку.
Использование общего ключа пары
Secure Enclave и чип Secure Element взаимодействуют через последовательный интерфейс. Чип Secure Element подключен к контроллеру NFC, который, в свою очередь, подключен к процессору приложений. Хотя они и не связаны напрямую, Secure Enclave и чип Secure Element могут безопасно взаимодействовать, используя общий ключ пары, который подготавливается при производстве устройства. Шифрование и аутентификация передаваемых данных выполняются на основе AES, и обе стороны используют криптографические значения nonce для защиты от атак с повторным использованием. Ключ пары генерируется в Secure Enclave из его ключа UID и уникального идентификатора Secure Element. Затем ключ пары безопасно передается из Secure Enclave в аппаратный модуль системы безопасности (HSM) на заводе, где есть необходимый материал для последующего внедрения ключа пары в Secure Element.
Авторизация безопасной транзакции
Когда пользователь авторизует транзакцию, что подтверждается физическим действием, передаваемым в Secure Enclave, Secure Enclave отправляет подписанные данные о типе аутентификации и сведения о типе транзакции (бесконтактная или в приложении) чипу Secure Element в связке со случайным значением авторизации (AR). Значение AR генерируется в Secure Enclave, когда пользователь впервые добавляет кредитную карту. Значение сохраняется, пока включена технология Apple Pay, и защищается шифрованием Secure Enclave и противооткатным механизмом. Оно безопасно передается чипу Secure Element с помощью ключа пары. При получении нового значения AR чип Secure Element помечает все ранее добавленные карты как удаленные.
Использование криптограммы платежа для динамической безопасности
Платежные транзакции, инициируемые платежными апплетами, содержат криптограмму платежа, а также учетный номер устройства. Эта криптограмма (одноразовый код) вычисляется с помощью счетчика транзакций и ключа. Значение счетчика транзакций увеличивается для каждой новой транзакции. Ключ подготавливается платежным апплетом в ходе персонализации, и он известен платежной сети или эмитенту карты или им обоим. В зависимости от схемы оплаты при расчете также могут использоваться другие данные, например:
непредсказуемое число, формируемое терминалом (для NFC-транзакций);
значение nonce сервера Apple Pay (для транзакций в приложениях).
Эти коды безопасности предоставляются платежной сети и эмитенту карты, что позволяет эмитенту проверять каждую транзакцию. Длина таких кодов безопасности может быть различной и зависит от типа транзакции.