
Sikkerhet for bilnøkler i iOS
Utviklere kan støtte metoder for sikker, nøkkelfri adgang til kjøretøy ved hjelp av iPhone og en sammenkoblet Apple Watch-enhet som støtter dette.
Sammenkobling med eier
Eieren må bekrefte eierskap av bilen (metoden avhenger av bilprodusenten – ofte må de ha med én eller to nøkkelbrikker) og kan starte sammenkoblingsprosessen i bilprodusentens app ved hjelp av en e-postlenke mottatt fra bilprodusenten eller fra bilmenyen. I alle tilfeller må eieren fremvise et konfidensielt engangspassord for sammenkobling for iPhonen, som brukes til å generere en sikker sammenkoblingskanal ved hjelp av protokollen SPAKE2+ med NIST P-256-kurven for å opprette en sikker Global Platform SCP03-kanal og overføre data mellom enheten og bilen. Ved bruk av appen eller e-postlenken overføres passordet automatisk til iPhonen, der det må oppgis manuelt når sammenkobling startes fra enheten.
I prosessen for sammenkobling med eier sender bilen en forespørsel gjennom SCP03-kanalen med instruksjoner til enhetens Secure Element om å generere et Elliptic Curve Cryptography-nøkkelpar (ECC). Bilens ID og offentlige nøkkel bindes deretter til dette nøkkelparet på en sikker måte. Enhetens offentlige nøkkel (device.PK) sendes tilbake til bilen i et X.509-sertifikatformat sammen med en sertifikatkjede som kan verifiseres med bilprodusentens offentlige nøkkel for rotsertifikat (root.PK), som er innebygd i bilen. Dette åpner for verifisering og godkjenning av enhetens offentlige nøkkel som eiernøkkel.
Eiernøkkelen i enhetens Secure Element binder også bilprodusentens root.PK, som oppgis fra bilen gjennom SCP03-kanalen, til device.PK på en sikker måte for deling av nøkkel.
Ved behov i forbindelse med forsikring må hver av eierens nøkler registreres på bilprodusentens tjener. Enheten sender device.PK-sertifikatkjeden til nøkkelsporingstjeneren (KTS), som sender tilbake en signatur for å bekrefte registreringen. Enheten sender signaturen til bilen på slutten av sammenkoblingsprosessen med eier eller ved neste standardtransaksjon med bilen (se nedenfor). Bilen aktiverer eiernøkkelen hvis KTS-signaturen er verifisert. KTS-signaturnøklene tilhører bilprodusenten.
Deling av nøkkel
Avsenderens iPhone kan dele nøkler til kvalifiserte enheter ved å sende en invitasjons-URL til mottakeren gjennom en kommunikasjonskanal som for eksempel e-post, iMessage, WhatsApp, WeChat eller AirDrop. URL-en sender mottakeren til en personvernbeskyttet postkasse på en forbindelsestjener som er implementert i en IETF-spesifikasjon. Personvernkrypteringsnøkkelen sendes som et fragment i den delte URL-en.
I løpet av denne prosessen ber avsenderens iPhone om brukerautentisering (Face ID, Touch ID eller kode) og en sikker brukerintensjon, som beskrevet i Bruksområder for Optic ID, Face ID og Touch ID. Avsenderens autentisering lagres midlertidig i Secure Element til bruk senere når mottakerens enhet returnerer signeringsforespørselen.
Avsenderen kan øke sikkerheten ved å be mottakeren om å bruke ett av de tilgjengelige aktiveringsalternativene som støttes av bilprodusenten, eller en kode som skrives inn på mottakerenheten, for å aktivere den delte nøkkelen.
Ved mottak av invitasjonen henter mottakerens enhet data om nøkkeloppretting fra postkassen på forbindelsestjeneren og oppretter en digital nøkkel i henhold til CCC Digital Key Specification. Som en del av nøkkelopprettingsprosessen signeres nøkkelen av avsenderen. Mottakerenheten sender sertifikatkjeden for nøkkeloppretting tilbake via forbindelsestjeneren til avsenderens iPhone. Avsenderens iPhone bruker deretter root.PK som er innebygd i Secure Element, til å verifisere at mottakernøkkelen ble opprettet gjennom den forventede sertifikatkjeden. Hvis det lykkes, signerer avsenderens iPhone den offentlige ECC-nøkkelen til mottakerenheten og sender signaturen tilbake til mottakeren via forbindelsestjeneren. Signaturen autentiseres ved å bruke avsenderens autentisering som tidligere ble lagret i Secure Element.
Nøkkelrettighetene og avsenderes signatur sendes til bilen første gang den delte nøkkelen brukes i bilen (se Standardtransaksjoner). Rettighetene beskriver følgende:
Tilgangsnivå: For eksempel å låse opp eller kjøre.
Regel for videredeling: For eksempel ingen videredeling, begrenset videredeling eller ubegrenset videredeling (når det gjelder lengde på delekjede).
Enkelte bilprodusenter krever at hver delte nøkkel skal registreres på bilprodusentens tjener. Hvis det er påkrevd, sender mottakerenheten device.PK-sertifikatkjeden til bilprodusentens nøkkelsporingstjener (KTS), som returnerer en signatur for å bekrefte registreringen. Mottakerenheten presenterer signaturen til bilen i den første transaksjonen med bilen (se Standardtransaksjoner). Bilen validerer signaturen, og hvis KTS-signaturen er verifisert, aktiveres den delte nøkkelen. Disse signaturnøklene tilhører bilprodusenten.
Sletting av nøkkel
Nøkler kan slettes på følgende måter:
på nøkkelholderens enhet
fra eierens enhet
fra en delingsenhet med riktig autentisering
fra innsiden av bilen
Sletting på nøkkelholder-iPhonen trer i kraft umiddelbart, selv om nøkkelholderen bruker nøkkelen eller enheten ikke er koblet til internett.
Avhengig av bilprodusentens regler kan sletting av nøkler i bilen være mulig:
når som helst
kun når bilen er tilkoblet internett
kun når en nøkkelbrikke er tilgjengelig (slik at du ikke står fast uten nøkkel)
I hvert av tilfellene rapporteres slettingen på nøkkelholderenheten eller i kjøretøyet til en KTS på bilprodusentens side, som registrerer utstedte nøkler for en bil for forsikringsformål.
Eieren og kvalifiserte brukere kan be om en sletting ved hjelp av en forespørsel om ekstern avslutning som er signert av den private nøkkelen til den som forespør (device.SK), ved å velge brukere i listen over kontoer for delte nøkler på baksiden av nøkkelkortet for bilen i Lommebok-appen. Forespørselen sendes først til bilprodusenten for nøkkelfjerning i bilen. Vilkårene for fjerning av nøkkelen fra kjøretøyet defineres av bilprodusenten (som beskrevet ovenfor). Kun når nøkkelen fjernes fra bilen, sender bilprodusentens tjener en signert forespørsel om ekstern avslutning til nøkkelholderenheten.
Når en nøkkel avsluttes i en enhet, oppretter appleten som administrerer de digitale bilnøklene, en kryptografisk signert avslutningsattestasjon som brukes som bevis på slettingen av bilprodusenten, og brukes til å fjerne nøkkelen fra KIS.
Personvern
Bilprodusentens KTS arkiverer ikke enhets-ID, SEID eller Apple-konto. Den lagrer kun en foranderlig identifikator, forekomstens CA-identifikator. Identifikatoren er ikke bundet til noen private data i enheten eller av tjeneren, og den slettes når brukeren utløser Slett alt innhold og alle innstillinger.
CCC-standarden tilsier også at KTS-informasjonen holdes konfidensiell hos bilprodusenten og kun brukes i forbindelse med forsikring eller andre kvalifiserte forespørsler.
Nøkkelregistreringsdata (nøkkelidentifikator, bilidentifikator, bilens offentlige nøkkel, sertifikatkjede for enhetens offentlige nøkkel og nøkkelrettigheter) som sendes av enheten til KTS, krypteres mot en offentlig KTS-personvernkrypteringsnøkkel. Apples tjenere som overfører nøkkelregistreringsdata fra enheten til bilprodusentens tjener, kan ikke dekryptere disse dataene. Apple vet ikke hvem eieren har delt bilnøklene sine med.
Annet tilbehør til iPhone eller Apple Watch som ikke kan autentisere til enheten, kan ikke motta en stabil identifikator gjennom en standard eller rask transaksjon via NFC eller Bluetooth. Hvis enheten ikke gjenkjenner bilidentifikatoren (hvis du for eksempel tar feil av og prøver å åpne en bil som ligner på nøkkelholderens bil), vil appleten i Secure Element bruke en ekstranøkkel som genererer tilfeldige verdier i stedet for en ekte nøkkel eller kryptogram.
Den første Bluetooth-tilkoblingen beskyttes gjennom midlertidige nøkler som oppgis ved deling av bilnøkkel eller fra bilprodusenten på bakgrunn av en forespørsel om sporing av nøkkel.