
Autorizzazione dei pagamenti con Apple Pay
Per i dispositivi con Secure Element, i pagamenti saranno consentiti solo dopo che Secure Enclave li avrà autorizzati. Ciò comporta la verifica che l’utente abbia confermato la propria intenzione di pagare e che abbia effettuato l’autenticazione tramite uno dei seguenti metodi.
Autenticazione biometrica
Codice o password del dispositivo
Doppia pressione del tasto laterale di un Apple Watch non bloccato
L’autenticazione biometrica, se disponibile, è il metodo di default, ma il codice o la password possono essere usati in qualsiasi momento e vengono automaticamente offerti dopo tre tentativi non riusciti di riconoscimento dell’impronta digitale o dopo due tentativi non riusciti di riconoscimento del volto. Dopo cinque tentativi non riusciti, viene richiesto il codice o la password.
Il codice o la password sono richiesti anche quando l’autenticazione biometrica non è configurata oppure è attivata per Apple Pay.
Utilizzare una chiave di abbinamento condivisa
Secure Enclave e Secure Element comunicano tramite un’interfaccia seriale. Secure Element è collegato al controller NFC, che si collega al processore per le applicazioni. Sebbene non siano direttamente collegati, Secure Element e Secure Enclave possono comunque comunicare in modo sicuro tramite un segreto creato in fase di esecuzione. In fabbrica, entrambi vengono configurati con le rispettive chiavi pubbliche a lungo termine. La chiave pubblica di Secure Enclave proviene dalla sua chiave UID e dall’identificativo di Secure Element. La chiave privata corrispondente viene archiviata nell’hardware, nascosta dal software. In fase di esecuzione, le chiavi pubbliche a lungo termine creano un segreto condiviso tramite il protocollo di accordo tra le chiavi ECDH (Elliptic Curve Diffie-Hellman). Questo segreto condiviso garantisce una comunicazione sicura.
Autorizzare una transazione sicura
Quando l’utente autorizza una transazione, che include un gesto fisico comunicato direttamente a Secure Enclave, quest’ultimo invia i dati firmati relativi al tipo di autenticazione e i dettagli sul tipo di transazione (contactless o all’interno di app) a Secure Element, legandoli a un valore Authorization Random (AR). Il valore AR è generato in Secure Enclave quando l’utente fornisce per la prima volta una carta di credito e resta in vigore finché la funzionalità Apple Pay è attiva, protetto dalla codifica e dal meccanismo anti‑rollback di Secure Enclave. Viene trasmesso in maniera protetta a Secure Element facendo uso della chiave di abbinamento. Alla ricezione di un nuovo valore AR, Secure Element contrassegna ogni carta aggiunta in precedenza come annullata.
Utilizzare un crittogramma di pagamento per una sicurezza dinamica
Le transazioni di pagamento originate dalle applet di pagamento includono un crittogramma di pagamento e un numero di account del dispositivo. Tale crittogramma, un codice utilizzabile una sola volta, viene calcolato tramite un contatore di transazioni e una chiave. Il contatore di transazioni viene incrementato per ogni nuova transazione. La chiave viene fornita nell’applet di pagamento durante la personalizzazione ed è conosciuta dalla rete di pagamento e/o dall’emittente della carta. A seconda dello schema di pagamento, per il calcolo possono essere utilizzati anche altri dati, tra cui:
Un numero non prevedibile per il terminale, per le transazioni NFC.
Un valore anti-replay del server di Apple Pay, per le transazioni all’interno delle app.
I risultati della verifica dell’utente, ad esempio le informazioni ottenute dal metodo di verifica del titolare della carta (CVM).
I codici di sicurezza vengono forniti al circuito di pagamento e all’emittente in modo da consentire a quest’ultimo la verifica di ogni transazione. La lunghezza dei codici può variare in base al tipo di transazione.