
Bilnøkkeltransaksjoner
Bilnøkler kan bruke flere typer transaksjoner.
Raske transaksjoner
Den raske transaksjonen brukes kun til å låse opp bilen via NFC.
iPhonen genererer et AES-128-kryptogram basert på en hemmelighet som tidligere er generert på begge sider under en standardtransaksjon. Dette kryptogrammet gjør det mulig for bilen å autentisere enheten raskt i ytelsessensitive scenarioer siden det kun er symmetrisk kryptografi som brukes, og det kun er én overføring mellom NFC-leseren og ECU-en (Electronic Control Unit) som er påkrevd. Hvis bilen krever lese- eller skrivetilgang til den private postkassen, den konfidensielle postkassen eller begge deler (hver bilnøkkel i Secure Element har et sett med postkasser), opprettes en sikker Global Platform SCP03-kanal mellom bilen og enheten ved å avlede øktnøkler fra en hemmelighet tidligere delt under en standardtransaksjon og et nytt kortvarig nøkkelpar. Ved å opprette den sikre kanalen autentiseres bilen for iPhonen. Hvis bilen lagrer nøkler for flere enheter, må den bruke en «prøving og feiling»-metode av typen «oftest brukt først» for å finne den riktige symmetriske nøkkelen siden enheten ikke deler en sporbar identifikator i den raske transaksjonen hvor bilen ikke er autentisert av enheten.
Hvis ingen symmetriske nøkler er opprettet for enheten, bruker bilen den kortvarige offentlige bilnøkkelen (vehicle.PK) til å fortsette med en standardtransaksjon (se Standardtransaksjoner nedenfor.
Standardtransaksjoner
Standardtransaksjonen brukes til å låse opp bilen via NFC hvis ingen symmetriske nøkler for rask transaksjon er etablert gjennom en tidligere standardtransaksjon, eller når en nylig delt nøkkel samhandler med bilen for første gang (FFT – first friend key transaction). Standardtransaksjonen brukes alltid til å tillate kjøring.
Bilen aktiverer en sikker kanal mellom bilen og en iPhone ved å generere kortvarige ECC-nøkkelpar på leseren og iPhone-siden. Ved bruk av en ECKA-DH-nøkkelavtalemetode kan en delt hemmelighet avledes på begge sider og brukes til generering av en delt symmetrisk nøkkel for rask transaksjon ved hjelp av Diffie-Hellman, en HKDF-nøkkelavledingsfunksjon (RFC 5869) og signaturer fra den langvarige nøkkelen opprettet under sammenkobling.
Den kortvarige offentlige nøkkelen som genereres på bilsiden, signeres med leserens langvarige private nøkkel, som fører til en autentisering av bilen på iPhonen. Fra iPhone-perspektivet er denne protokollen utviklet for å hindre at sensitive personopplysninger avsløres til uvedkommende som fanger opp kommunikasjonen eller etterligner en bil.
iPhonen bruker den opprettede sikre kanalen som ikke er autentisert, til å kryptere den offentlige nøkkelidentifikatoren i tillegg til signaturen beregnet på en lesers dataavledede spørsmål og noen ekstra appspesifikke data. Denne verifiseringen av iPhone-signaturen av bilen gjør at leseren kan autentisere enheten.
NFC-standardtransaksjonen brukes også for første tilnærming (FFT) for en nydelt nøkkel for bilen, siden bilen ikke er kjent med den nye device.PK-nøkkelen). Når brukeren nærmer seg dørhåndtaket, starter bilen en rask transaksjon, men den kan ikke verifisere kryptogrammet. Den fortsetter deretter med en standardtransaksjon (leserkommandoen for den raske transaksjonen, AUTH0, er også den første kommandoen for standardtransaksjonen), oppretter en sikker GP SCP03-kanal og leser det private postkasseinnholdet som skal inneholde en attestering av den nye device.PK-nøkkelen, som er signert av deleren (sharer.PK eller owner.PK er allerede kjent for bilen), og signeres av KTS-en ved hjelp av bilprodusentens egen kryptografi. Etter verifiseringen av signaturene godtar bilen device.PK som ny nøkkel.
BLE/UWB-standardtransaksjoner
For biler som bruker en Ultra-WideBand-aktivert (UWB) nøkkel, opprettes det en Bluetooth LE-økt mellom bilen og iPhone. I likhet med NFC-transaksjonen avledes det en delt hemmelighet på begge sider, og denne brukes til å opprette en sikker økt. Denne økten brukes til å avlede og avtale en URSK (UWB Ranging Secret Key). URSK oppgis til UWB-radioer i brukerens enhet og, i en bils OEM-proprietære sikre kanal, til UWB-ankre.
Merk: Ankre er vanligvis plassert i de fire hjørnene på bilen, på innsiden og eventuelt i bakluka for å kunne fastsette og autentisere posisjonen til brukerens enhet nøyaktig ved eller i bilen. Deretter bruker bilen enhetens posisjon til å ta avgjørelser om å tillate opplåsing eller oppstart av bilen.
URSK-er har en forhåndsdefinert utløpstid (TTL). For å unngå avbrudd når TTL utløper, kan URSK-er forhåndsavledes i enhetens Secure Element og bilens maskinvaresikkerhetsmodul (HSM) / Secure Element når sikker rangering ikke er aktivert, men Bluetooth er tilkoblet. På den måten unngår man at en standardtransaksjon må avlede en ny URSK i en tidskritisk situasjon. Den forhåndsavledede URSK-en kan overføres raskt til bilens UWB-radioer og til enheten for å unngå avbrudd i UWB-rangeringen.