Sikkerhet for HomeKit-kommunikasjon
Hjemautomatisering med HomeKit har en infrastruktur som bruker iCloud og sikkerhetsfunksjoner på enheten til å beskytte og synkronisere private data uten at Apple får tilgang til dem.
HomeKit-identitet og -sikkerhet er basert på offentlig-private Ed25519-nøkkelpar. Et Ed25519-nøkkelpar genereres på brukerens enhet og blir brukerens HomeKit-identitet. Nøkkelparet brukes som en del av HomeKit Accessory Protocol (HAP) til å autentisere direktekommunikasjon mellom brukerens Apple-enheter og HomeKit-tilbehør.
I hjem med et hjemknutepunkt kan medlemmer av det delte hjemmet sende kommandoer til tilbehør via hjemknutepunktet. Disse kommandoene sendes, gjennomgående kryptert og autentisert, fra brukerens enhet til hjemknutepunktet ved hjelp av Apple Identity Service (IDS), og deretter videresendes de til det relevante tilbehøret ved hjelp av HomeKit Accessory Protocol (HAP) eller Matter, som er en tilkoblingsstandard for smarthjem.
Nøklene, som oppbevares i nøkkelringen og kun inkluderes i krypterte nøkkelringsikkerhetskopier, holdes oppdatert mellom enheter ved hjelp av iCloud-nøkkelring.
Kommunikasjon mellom HomeKit-tilbehør
HomeKit-tilbehør genererer sitt eget Ed25519-nøkkelpar til bruk i kommunikasjon med Apple-enheter. Hvis tilbehøret gjenopprettes til fabrikkinnstillingene, genereres et nytt nøkkelpar.
For å etablere et forhold mellom en Apple-enhet og et HomeKit-tilbehør utveksles nøkler ved hjelp av protokollen Secure Remote Password (3072-bit). Det benyttes en åttesifret kode som oppgis av tilbehørsprodusenten, og som angis på brukerens enhet og deretter krypteres ved hjelp av ChaCha20-Poly1305 AEAD med HKDF-SHA512-avledede nøkler. Tilbehørets MFi-sertifisering stadfestes også i oppsettprosessen. Tilbehør uten en MFi-brikke kan integrere støtte for programvareautentisering i iOS 11.3 eller nyere.
Når enheten og HomeKit-tilbehøret kommuniserer under bruk, autentiserer de hverandre ved hjelp av nøklene som ble utvekslet i prosessen ovenfor. Den enkelte økten opprettes ved hjelp av Station-to-Station-protokollen og krypteres med HKDF-SHA512-avledede nøkler basert på øktspesifikke Curve25519-nøkler. Dette gjelder for både IP-basert tilbehør og Bluetooth Low Energy-tilbehør (BLE).
For BLE-enheter som støtter kringkastingsvarslinger, klargjøres tilbehøret med en kringkastingskrypteringsnøkkel fra en sammenkoblet enhet gjennom en sikker økt. Denne nøkkelen brukes til å kryptere data om tilstandsendringer på tilbehøret, som varsles ved hjelp av BLE-annonseringer. Kringkastingskrypteringsnøkkelen er en HKDF-SHA512-avledet nøkkel, og dataene krypteres med ChaCha20-Poly1305 AEAD-algoritmen. Kringkastingskrypteringsnøkkelen endres og oppdateres med jevne mellomrom på andre enheter med iCloud som beskrevet i HomeKit-datasikkerhet.
Kommunikasjon med Matter-tilbehør
Identitet og sikkerhet med Matter-tilbehør er sertifikatbasert. For Apple-hjem genereres «root of trust»-sertifikatautoriteten (CA) på den første brukerens enhet («eieren»), og den private nøkkelen for CA arkiveres i iCloud-nøkkelringen. Alle Apple-enheter i hjemmet genererer en sertifikatsigneringsforespørsel (CSR) ved hjelp av NIST P256. CSR tas inn av eierens enhet, som deretter lager et Matter-identitetssertifikat for enheten ved hjelp av den private CA-nøkkelen. Dette sertifikatet brukes deretter til å autentisere kommunikasjon mellom brukerens enheter og tilbehøret.
Matter-tilbehør genererer sitt eget NIST P256-nøkkelpar og CSR og mottar et sertifikat fra CA under sammenkoblingen av tilbehøret. Før nøkkelparene genereres, utveksler Matter-tilbehøret og hjemmets eiers enheter nøkler ved hjelp av SPAKE2+-protokollen med en PIN-kode fra tilbehørets produsent, og det gjennomføres en prosess for enhetsattestasjon. Deretter utveksles CSR og sertifikatet kryptert via denne kanalen ved hjelp av AES-CCM med HKDF-SHA256-avledede nøkler. Hvis tilbehøret gjenopprettes til fabrikkinnstillingene, genereres et nytt nøkkelpar og en ny CRS, og det utstedes et nytt sertifikat for tilbehøret under sammenkoblingen.
Når en Apple-enhet og Matter-tilbehøret kommuniserer under bruk, vil de autentisere hverandre ved hjelp av sine egne sertifikater. Den enkelte økten opprettes ved hjelp av en trefaset (sigma) protokoll og krypteres med HKDF-SHA256-avledede nøkler basert på øktspesifikke P256-nøkler.
Du finner mer informasjon om hvordan Apple-enheter samhandler med Matter-tilbehør på en sikker måte i Matter support in iOS 16 på Apple Developer-nettstedet.
HomeKit og Siri
Siri kan brukes til å sende forespørsler til tilbehør, styre det og til å aktivere stemninger. Minimalt med informasjon om konfigurasjonen av hjemmet gis anonymt til Siri for at Siri skal ha navn på rom, tilbehør og stemninger som er nødvendige for kommandogjenkjenning. Det kan hende at lyd som sendes til Siri, betegner spesifikt tilbehør eller spesifikke kommandoer, men slike Siri-data knyttes ikke til andre Apple-funksjoner som for eksempel HomeKit.
Siri-aktivert HomeKit-tilbehør
Brukere kan bruke Hjem-appen til å aktivere nye funksjoner på Siri-aktivert tilbehør, som Siri og andre HomePod-funksjoner som nedtellinger, alarmer, interkom og ringeklokke. Når disse funksjonene aktiveres, vil tilbehøret koordinere med sammenkoblet HomePod på det lokale nettverket, som har disse Apple-funksjonene. Lyd utveksles mellom enhetene via krypterte kanaler og ved hjelp av både HomeKit- og AirPlay-protokoller.
Når Lytt etter «Hei Siri» er slått på, vil tilbehøret lytte etter «Hei Siri» ved hjelp av en talegjenkjenningsmotor som kjøres lokalt. Hvis motoren gjenkjenner uttrykket, sendes lyden direkte til en sammenkoblet HomePod ved hjelp av HomeKit. HomePod kontrollerer lyden på nytt og kan avbryte lydøkten hvis lyden ikke inneholder aktiveringsuttrykket.
Når Touch for Siri slås på, kan brukeren trykke på en knapp på tilbehøret for å starte en samtale med Siri. Lyden sendes direkte til den sammenkoblede HomePoden.
Når HomePod registrerer at Siri har blitt aktivert, sendes lyden til Siri-tjenerne, og brukeren får svar med samme sikkerhet, personvern og kryptering som HomePod bruker når aktiveringen gjøres på HomePod. Hvis Siri svarer med lyd, sendes svaret til tilbehøret via en AirPlay-lydkanal. Enkelte Siri-forespørsler krever ytterligere informasjon fra brukeren (for eksempel for å spørre om brukeren vil høre flere svar). Da får tilbehøret en indikasjon om at brukeren skal spørres, og lyden strømmes til HomePod.
Tilbehøret skal ha en visuell indikator som viser at det lytter (for eksempel en LED-indikator). Tilbehøret kjenner ikke til formålet med Siri-forespørselen, bortsett fra tilgang til lydstrømmene, og det arkiveres ikke brukerdata på tilbehøret.