Autorisierung von Zahlungen mit Apple Pay
Auf Geräten mit einer Secure Enclave wird eine Zahlung erst dann zugelassen, wenn es die Autorisierung von der Secure Enclave erhalten hat. Auf dem iPhone oder iPad erfordert dies die Bestätigung, dass sich der Benutzer per Face ID, Touch ID oder Gerätecode authentifiziert hat. Die Standardmethode ist Face ID oder Touch ID, es kann aber auch jederzeit der Code verwendet werden. Der Code wird automatisch angeboten, wenn dreimal in Folge kein registrierter Fingerabdruck erkannt wurde oder zwei Versuche zum Gesichtsabgleich nicht erfolgreich waren. Nach fünf Fehlversuchen muss der Code eingegeben werden. Der Code wird auch benötigt, wenn Face ID oder Touch ID nicht konfiguriert oder nicht für Apple Pay aktiviert wurde. Damit auf der Apple Watch eine Zahlung erfolgen kann, muss der Benutzer das Gerät mittels Code entsperren und einen Doppelklick auf die Seitentaste ausführen.
Verwenden eines gemeinsamen Kopplungsschlüssels
Die Kommunikation zwischen der Secure Enclave und dem Secure Element findet über eine serielle Schnittstelle statt, wobei das Secure Element mit dem NFC-Controller verbunden ist, der wiederum mit dem Anwendungsprozessor verbunden ist. Obwohl sie nicht direkt verbunden sind, können Secure Enclave und Secure Element über ein gemeinsames Schlüsselpaar, das bei der Fertigung festgelegt wird, sicher kommunizieren. Die Verschlüsselung und Authentifizierung der Kommunikation basiert auf AES, wobei beide Seiten zum Schutz vor Replay-Angriffen kryptografische Nonces verwenden. Der Kopplungsschlüssel wird in der Secure Enclave aus dem UID-Schlüssel und der eindeutigen Kennung des Secure Element erzeugt. Der Kopplungsschlüssel wird dann bei der Fertigung von der Secure Enclave sicher an ein Hardwaresicherheitsmodul (HSM) übertragen, das die benötigten Schlüsselmaterialien besitzt, um den Kopplungsschlüssel mit dem Secure Element zu verknüpfen.
Autorisieren einer sicheren Transaktion
Wenn der Benutzer eine Transaktion autorisiert, die eine physische Geste enthält, die direkt an die Secure Enclave übertragen wird, sendet die Secure Enclave signierte Daten über die Art der Authentifizierung und Details zur Transaktion (kontaktlos oder in Apps) zusammen mit einem Zufallswert für die Authentifizierung (AR) an das Secure Element. Der AR-Wert wird in der Secure Enclave erzeugt, wenn der Benutzer zum ersten Mal eine Kreditkarte hinzufügt, und bleibt erhalten, solange Apple Pay aktiviert ist. Er wird von den Mechanismen der Secure Enclave für Verschlüsselung und Anti-Rollback geschützt. Er wird mithilfe des Kopplungsschlüssels sicher an das Secure Element übertragen. Bei Erhalt eines neuen AR-Werts löscht das Secure Element alle zuvor hinzugefügten Karten.
Verwenden eines Zahlungskryptogramms für dynamische Sicherheit
Zahlungsvorgänge aus Zahlungs-Applets umfassen ein Zahlungskryptogramm zusammen mit einer Device Account Number. Dieses Kryptogramm, ein einmal nutzbarer Code, wird mit einem Transaktionszähler und einem Schlüssel errechnet. Der Transaktionszähler wird bei jeder neuen Transaktion um einen Schritt erhöht. Der Schlüssel wird während der Personalisierung im Zahlungs-Applet bereitgestellt und ist dem Zahlungsnetzwerk, dem Kartenaussteller oder beiden bekannt. Abhängig vom Zahlungssystem werden auch andere Daten für die Berechnung verwendet, darunter:
Eine TUN (Terminal Unpredictable Number) für NFC-Transaktionen
Eine Nonce des Apple Pay-Servers für Transaktionen innerhalb von Apps
Diese Sicherheitscodes werden an das Zahlungsnetzwerk und den Kartenaussteller weitergegeben, sodass der Aussteller die Transaktion überprüfen kann. Die Länge dieser Sicherheitscodes hängt von der jeweiligen Transaktion ab.