
Sikkerhet for HomeKit-kamera
Kameraer som har en IP-adresse (internettprotokoll) i HomeKit, sender video- og lydstrømmer direkte til iOS-, iPadOS-, tvOS og macOS-enheten på lokalnettverket som har tilgang til strømmen. Strømmene krypteres ved hjelp av tilfeldig genererte nøkler på enheten og et IP-kamera, og de utveksles over den sikre HomeKit-økten til kameraet. Når en enhet ikke er på det lokale nettverket, sendes de krypterte strømmene via hjemknutepunktet til enheten. Hjemknutepunktet dekrypterer ikke strømmene og fungerer kun som en forbindelse mellom enheten og IP-kameraet. Når en app viser HomeKit IP-kameravideoen til brukeren, gjengir HomeKit videobildene sikkert fra en separat systemprosess. Dermed får ikke appen tilgang til eller kan lagre videostrømmen. I tillegg har ikke apper tillatelse til å ta skjermbilder fra denne strømmen.
Sikker video med HomeKit
HomeKit er en gjennomgående sikker og privat plattform som kan brukes til opptak, analysering og visning av klipp fra HomeKit IP-kameraer uten at videoinnholdet legges åpent for Apple og tredjeparter. Når bevegelse registreres av IP-kameraet, sendes videoklipp direkte til en Apple-enhet som fungerer som et hjemknutepunkt, ved hjelp av en separat lokal nettverksforbindelse mellom hjemknutepunktet og IP-kameraet. Den lokale nettverksforbindelsen krypteres med et øktspesifikt HKDF-SHA512-utledet nøkkelpar som formidles i HomeKit-økten mellom hjemknutepunktet og IP-kameraet. HomeKit dekrypterer lyd- og videostrømmene på hjemknutepunktet og analyserer videobildene lokalt for eventuelle viktige hendelser. Hvis det oppdages en viktig hendelse, krypterer HomeKit videoklippet ved hjelp av AES-256-GCM med en AES256-nøkkel som genereres tilfeldig. HomeKit genererer også stillbilder for hvert klipp, og disse krypteres ved hjelp av den samme AES256-nøkkelen. Det krypterte stillbildet og lyd- og videodata lastes opp til iCloud-tjenere. De tilknyttede metadataene for hvert klipp, inkludert krypteringsnøkkelen, lastes opp til CloudKit ved hjelp av gjennomgående iCloud-kryptering.
For ansiktsklassifisering lagrer HomeKit alle data som brukes til å klassifisere en bestemt persons ansikt, i CloudKit ved hjelp av gjennomgående iCloud-kryptering. De lagrede dataene inkluderer informasjon om hver person, for eksempel navn, i tillegg til bilder som representerer personens ansikt. Disse ansiktsbildene kan hentes fra en brukers Bilder hvis de velger det, eller de kan samles inn fra tidligere analysert video fra IP-kameraer. En analyseøkt fra sikker video med HomeKit bruker disse klassifiseringsdataene til å identifisere ansikter i den sikre videostrømmen den mottar direkte fra IP-kameraet, og den inkluderer denne identifikasjonsinformasjonen i klippmetadataene nevnt tidligere.
Når Hjem-appen brukes til å vise klippene fra et kamera, lastes dataene ned fra iCloud, og nøkler for dekryptering av strømmene pakkes ut lokalt ved hjelp av gjennomgående iCloud-kryptering. Det krypterte videoinnholdet strømmes fra serverne og dekrypteres lokalt på iOS-enheten før det vises. Hver videoklippøkt kan brytes ned i underdeler der hver underdel krypterer innholdsstrømmen med sin egen unike nøkkel.