Säkerhet för bilnycklar i iOS
Utvecklare kan lägga till stöd för säkra nyckellösa metoder att låsa upp och köra en bil i en iPhone som stöds och en parkopplad Apple Watch.
Parkoppling utförd av ägaren
Ägaren måste bevisa att han eller hon äger fordonet (metoden är olika för olika biltillverkare) och kan starta parkopplingsprocessen i biltillverkarens app genom att använda en e-postlänk som biltillverkaren skickat eller via fordonets meny. Oavsett metod måste ägaren alltid ange ett hemligt engångslösenord för parkoppling på iPhone. Lösenordet används till att generera en säker parkopplingssignal med protokollet SPAKE2+ med NIST P-256-kurvan. När appen eller e-postlänken används överförs lösenordet automatiskt till iPhone medan det måste anges manuellt när parkopplingen startas från fordonet.
Nyckeldelning
Ägarens parkopplade iPhone kan dela nycklar till behöriga familjemedlemmars och vänners iPhone-enheter (och deras parkopplade Apple Watch-enheter) genom att skicka enhetsspecifika inbjudningar via iMessage och IDS (Apple Identity Service). Alla delningskommandon skickas med IDS-funktionen och heltäckande kryptering. Ägarens parkopplade iPhone förhindrar att IDS-kanalen ändras under delningsprocessen för att skydda mot vidarebefordring av inbjudningen.
När inbjudan har accepterats skapar familjemedlemmens eller vännens iPhone en digital nyckel och skickar certifikatkedjan för tillverkning av nyckeln tillbaka till ägarens parkopplade iPhone för att verifiera att nyckeln skapades på en autentisk Apple-enhet. Ägarens parkopplade iPhone signerar den publika ECC-nyckeln för den andra familjemedlemmens eller vännens iPhone och skickar tillbaka signaturen till familjemedlemmens eller vännens iPhone. Signeringsåtgärden i ägarenheten kräver användarautentisering (Face ID, Touch ID eller lösenkod) och en säker bekräftelse av användarens avsikt enligt beskrivningen i Användningsområden för Face ID och Touch ID. Auktoriseringen begärs när inbjudan skickas. Den lagras i Secure Element och används när vännens enhet skickar tillbaka begäran om signering. Nyckelbehörigheter överförs till bilen antingen online via bilens OEM-server eller under den första användningen av den delade nyckeln i bilen.
Nyckelradering
Det går att radera nycklar i nyckelhållarenheten via ägarenheten och i fordonet. Nycklar som raderas på nyckelhållarens iPhone försvinner omedelbart, även om nyckelhållaren använder nyckeln. Därför visas en skarp varning innan den raderas. Det kan vara möjligt att radera nycklar i bilen när som helst eller bara när bilen är uppkopplad.
I båda fallen rapporteras raderingen på nyckelhållarens enhet eller i fordonet till en KIS-server (Key Inventory Server) hos biltillverkaren som i sin tur registrerar utfärdade nycklar för ett fordon av försäkringsskäl.
Ägaren kan begära en radering från baksidan av ägarkupongen. Begäran skickas först till biltillverkaren så att nyckeln tas bort i fordonet. Villkoren för att ta bort nyckeln från fordonet fastställs av biltillverkaren. Biltillverkarens server skickar en begäran om fjärradering till nyckelhållarens enhet först när nyckeln tas bort i fordonet.
När en nyckel avslutas i en enhet skapar appleten som hanterar de digitala bilnycklarna en kryptografiskt signerad avslutningsattest. Den används som bevis på att nyckeln har raderats av biltillverkaren och till att ta bort nyckeln från KIS.
Standardtransaktioner via NFC
För bilar som använder en NFC-nyckel upprättas en säker kanal mellan en läsare och iPhone genom att tillfälliga nyckelpar genereras på läsarens sida och iPhone-sidan. Med en nyckelavtalsmetod kan en delad hemlighet härledas på båda sidor och användas till att generera en delad symmetrisk nyckel med Diffie-Hellman, en nyckelhärledningsfunktion och signaturer från den långvariga nyckeln som skapats under parkoppling.
Den tillfälliga, offentliga nyckeln som genereras på fordonssidan signeras med läsarens långvariga, privata nyckel, vilket resulterar i en autentisering av läsaren av iPhone. Från iPhones håll är det här protokollet utformat för att förhindra att integritetskänsliga data avslöjas för en motspelare som avlyssnar kommunikationen.
Till sist använder iPhone den upprättade säkra kanalen till att kryptera sin identifierare för den offentliga nyckeln samt signaturen som beräknats efter en läsares datahärledda kontrolltal och andra ytterligare appspecifika data. Läsarens verifiering av iPhone-signaturen gör det möjligt för läsaren att autentisera enheten.
Snabba transaktioner
iPhone genererar ett kryptogram baserat på en hemlighet som tidigare delats under en standardtransaktion. Detta kryptogram gör det möjligt för fordonet att snabbt autentisera enheten i prestandakänsliga situationer. Ett alternativ till detta är att en säker kanal upprättas mellan fordonet och enheten genom att sessionsnycklar härleds från en hemlighet som har delats under en standardtransaktion och ett nytt par med tillfälliga nycklar. Möjligheten för fordonet att upprätta den säkra kanalen autentiserar fordonet för iPhone.
Standardtransaktioner via BLE/UWB
För bilar som använder en UWB-nyckel upprättas en Bluetooth LE-session mellan bilen och iPhone. I likhet med NFC-transaktionen härleds en delad hemlighet på båda sidorna och används vid upprättandet av en säker session. Den här sessionen används därefter till att härleda och samtycka till en URSK (UWB Ranging Secret Key) Denna URSK skickas sedan till UWB-radiomottagare i användarens enhet och i bilen för att aktivera en noggrann platsbestämning för användarens enhet i förhållande till en viss plats nära eller inuti bilen. Bilen använder sedan enhetens plats till att avgöra ifall den tillåter att bilen blir upplåst eller startar. URSK:er har en fördefinierad TTL. För att undvika störningar av intervallbestämning när en TTL löper ut kan URSK:er förhärledas i enhetens SE och bilens HSM/SE när BLE är anslutet men säker intervallbestämning inte är aktiv. Det här undviker behovet för en standardtransaktion att härleda en ny URSK i en tidskritisk situation. En förhärledd URSK kan överföras väldigt snabbt till UWB-radiomottagare i bilen och enheten för att undvika störningar av UWB-intervallbestämningen.
Integritet
Biltillverkarens nyckellagerserver (key inventory server, KIS) lagrar inte enhetens ID, SEID eller Apple-ID. Den lagrar endast en muterbar identifierare – t.ex. instansens CA-identifierare. Identifieraren är inte bunden till privata data på enheten eller servern, och den raderas när användaren rensar sin enhet helt (genom att använda Radera allt innehåll och inst.).