Autorização de pagamento com o Apple Pay
Em dispositivos com Secure Enclave, um pagamento pode ser feito apenas depois de receber autorização do Secure Enclave. No iPhone ou iPad, isso envolve a confirmação de que o usuário se autenticou com o Face ID, Touch ID ou o código do dispositivo. Caso disponíveis, o Face ID ou o Touch ID são os métodos padrão, mas o código pode ser usado a qualquer momento. Um código é oferecido automaticamente após três tentativas malsucedidas de identificação de uma impressão digital ou duas tentativas malsucedidas de identificação de um rosto e exigido após cinco tentativas malsucedidas. Um código também é exigido quando o Face ID ou o Touch ID não estão configurados ou ativados para o Apple Pay. Para que um pagamento seja feito no Apple Watch, o dispositivo deve ser desbloqueado com o código e o botão lateral deve ser clicado duas vezes.
Uso de uma chave de emparelhamento compartilhada
A comunicação entre o Secure Enclave e o Secure Element ocorre através de uma interface serial, com o Secure Element conectado ao controlador NFC, que por sua vez encontra-se conectado ao Processador de Aplicativos. Embora não estejam conectados diretamente, o Secure Enclave e o Secure Element podem se comunicar em segurança usando uma chave de emparelhamento compartilhada, fornecida durante o processo de fabricação. A criptografia e a autenticação da comunicação são baseadas em AES, com nonces criptográficos usados em ambos os lados para proteção contra ataques de reprodução. A chave de emparelhamento é gerada dentro do Secure Enclave a partir de sua chave UID e do identificador exclusivo do Secure Element. A chave de emparelhamento é então transferida seguramente do Secure Enclave para um módulo de segurança de hardware (HSM) na fábrica, que possui o material de chave necessário para injetar a chave de emparelhamento no Secure Element.
Autorização de uma transação segura
Quando o usuário autoriza uma transação, que inclui um gesto físico comunicado diretamente ao Secure Enclave, o Secure Enclave envia os dados assinados sobre o tipo de autenticação e os detalhes do tipo de transação (proximidade ou dentro de apps) para o Secure Enclave, atrelados a um valor de Autorização Aleatório (AR). O valor AR é gerado no Secure Enclave na primeira vez que o usuário fornece um cartão de crédito e persiste enquanto o Apple Pay estiver ativado, protegido pela criptografia do Secure Enclave e pelo mecanismo antirreversão. Ele é entregue com segurança ao Secure Element ao usar a chave de emparelhamento como base. Ao receber um novo valor AR, o Secure Element marca qualquer cartão adicionado anteriormente como apagado.
Uso de um criptograma de pagamento para segurança dinâmica
As transações de pagamento originadas de applets de pagamento incluem um criptograma de pagamento e um Número de Conta do Dispositivo. Esse criptograma, um código de uso único, é calculado por um contador de transações e uma chave. O contador de transações aumenta a cada nova transação. A chave é fornecida no applet de pagamento durante a personalização, sendo conhecida pela rede de pagamentos, pela administradora do cartão ou por ambas. Dependendo do esquema de pagamento, outros dados também podem ser usados no cálculo, incluindo:
Um Número de Terminal Imprevisível, em transações de comunicação por campo de proximidade (NFC)
Um nonce do servidor do Apple Pay, em transações dentro de apps
Esses códigos de segurança são fornecidos à rede de pagamentos e à administradora do cartão, o que permite ao emissor verificar cada transação. O tamanho desses códigos de segurança pode variar conforme o tipo de transação.