Autorización de pagos con Apple Pay
En el caso de los dispositivos que tienen Secure Enclave, se puede realizar un pago solo tras recibir la autorización de Secure Enclave. En el iPhone o iPad, este proceso conlleva la confirmación de que el usuario se ha autenticado con Face ID, Touch ID o con el código del dispositivo. Face ID o Touch ID es el método por defecto (si está disponible), pero, si se prefiere, siempre se puede usar el código. Tras tres intentos erróneos de reconocimiento de la huella digital o dos intentos erróneos de reconocer una cara, se ofrece la posibilidad de insertar el código. Tras cinco intentos erróneos, la inserción del código es obligatoria. Además, el código también es necesario si Face ID o Touch ID no se ha configurado o activado para Apple Pay. Para realizar un pago en el Apple Watch, el dispositivo se debe desbloquear con el código y el botón lateral se debe pulsar dos veces.
Usar una clave de enlace compartida
La comunicación entre Secure Enclave y Secure Element se realiza mediante una interfaz serie, con Secure Element conectado al controlador NFC que, a su vez, se conecta al procesador de aplicaciones. Aunque no estén directamente conectados, Secure Enclave y Secure Element se pueden comunicar de forma segura gracias a una clave de enlace suministrada durante el proceso de fabricación. La encriptación y la autenticación de la comunicación se basan en el estándar AES, con nonces criptográficos que usan ambas partes para protegerse de los ataques de reproducción. La clave de enlace se genera dentro de Secure Enclave a partir de la clave UID y el identificador único de Secure Element. Después, se transfiere de Secure Enclave a un módulo de seguridad de hardware (HSM) en la fábrica, que dispone del material necesario para introducir, a continuación, la clave de enlace en Secure Element.
Autorizar una transacción segura
Cuando el usuario autoriza una transacción, que requiere un gesto físico que se comunica a Secure Enclave directamente, Secure Enclave envía datos firmados acerca del tipo de autenticación e información detallada sobre el tipo de transacción (sin contacto o desde apps) a Secure Element, que está vinculado a un valor de autorización aleatorio (AR). Este valor AR se genera en Secure Enclave cuando un usuario facilita por primera vez una tarjeta de crédito, y no cambia mientras Apple Pay está activado. La encriptación de Secure Enclave y el mecanismo antirretroceso protegen este valor, que se envía de forma segura a Secure Element mediante la clave de enlace. Al recibir un valor AR nuevo, Secure Element marca como eliminada cualquier tarjeta añadida previamente.
Usar un criptograma de pago para seguridad dinámica
Todas las transacciones de pago que se originan en los applets de pago incluyen un criptograma de pago junto con un número de cuenta del dispositivo. Este criptograma, que es un código de un solo uso, se calcula con la ayuda de un contador de transacciones y una clave. El contador de transacciones se incrementa con cada nueva transacción. La clave se proporciona en el applet de pago durante su personalización y es conocida por la red de pago, por la entidad emisora de la tarjeta o por ambas. En función del sistema de pago, puede que también se usen otros datos para el cálculo, entre los que se incluyen:
Un Número Impredecible de Terminal para transacciones de comunicación de campo cercano (NFC).
Un nonce del servidor de Apple Pay (para las transacciones dentro de apps).
Estos códigos de seguridad se proporcionan tanto a la red de pago como a la entidad emisora de la tarjeta, lo que permite a la entidad emisora verificar cada transacción. La longitud de esos códigos de seguridad puede variar en función del tipo de transacción.