
Kommunikasjon av nødinfo via satellitt
Brukere med iPhone 14 eller nyere kan kommunisere over satellittforbindelser for ulike tjenester. Satellittforbindelser struper båndbredden betydelig og krever sikkerhetsprotokoller med minimale restriksjoner på båndbredden. Uavhengig av kommunikasjonstype (Nødanrop SOS, SMS eller iMessage) etablerer Apple en sikker økt mellom de to enhetene uten dekning og et Apple-datasenter. Enheter forhåndsregistrerer offentlig nøkkelmateriale med tjeneren over mobilnettet eller Wi-Fi for å spare båndbredde mens de ikke har dekning.
Kjernesikkerhetsarkitektur
Når en enhet spør om satellittjeneste, etablerer den en sikker tilkobling med Apple-datasenteret ved å referere til en forkortet hash av sin egen offentlige nøkkel for nøkkelutveksling. Alle offentlig-private-nøkkelpar støtter kun én enkelt økt med maksimal varighet på åtte timer. Tjeneren genererer et tilsvarende offentlig-privat-nøkkelpar for hvert klientnøkkelpar på forhånd, og deler den offentlige nøkkelen med klienten.
Når økten utløper eller er ferdig, fjerner Apple-tjenere og enheten de tilsvarende private nøklene og sikrer framtidig sikkerhet. Apple og enhetene registrerer regelmessig flere nøkler og etter at de har dekning igjen etter bruk av en privat nøkkel for å sikre satellittkommunikasjonen etter sikkerhetsbrudd. Observatører kan ikke identifisere brukere fra øktidentifikatorer fordi hver enhet roterer identifikatorer for hver økt for å hindre lenking.
Nødanrop og veihjelp via satellitt
Når brukere bruker Nødanrop eller veihjelp via satellitt, vil den sikre tilkoblingen til Apple (beskrevet ovenfor) beskytte kommunikasjonsinnholdet. Et ekstra lag med kryptering sikrer at innholdet forblir kryptert hele veien til apptjeneren, som igjen videresender meldingene til Apples partnere for nødtjenester og veihjelp med transportkryptering.
iMessage via satellitt
Når det sendes iMessage-meldinger over Wi-Fi eller mobilnett, utveksler enhetene nøkkelmateriale sammen med meldinger hvis noen av enhetene i avsenderens eller mottakerens gruppe støtter satellittjeneste. Gjennom denne mekanismen mottar enheter jevnlig oppdaterte nøkler som gjør at de kan kryptere og dekryptere meldinger når mobilnettet er utilgjengelig og enhetene må kobles til satellitt. På grunn av varighetsbegrensninger må brukere utveksle meldinger i løpet av de 30 siste dagene for å kommunisere uten dekning.
Hver enhet genererer symmetrisk nøkkelmateriale og distribuerer det ved hjelp av iMessage-kryptering for å kryptere sine utgående meldinger. Alle meldinger bruker en unik symmetrisk nøkkel hentet fra en HKDF-ratchet (Hash-based Key Derivation Function) for sin tilsvarende meldingsteller. Når en melding mottas, vil mottakerens enhet slå opp avsenderens symmetriske nøkkelmateriale for å finne den tilsvarende meldingsnøkkelen. Når enheten har dekning igjen, vil nye symmetriske nøkler distribueres for påfølgende økter.
Avsenderenheten sender iMessage-meldinger via satellitt kun etter at den har mottatt en signert nyttelast fra mottakeren som bekrefter at enheten kan motta meldinger via satellitt.
Merk: iMessage via satellitt støtter bare én-til-én-meldinger, ikke grupper.
SMS via satellitt
Når brukere sender eller mottar SMS-meldinger via satellitt, blir meldingene sendt til og blir sendt fra et nettverks Interworking Function (IWF). IWF-en mottar meldinger ment for klienter uten dekning fra avsenderens operatør (klienten vises som roaming mens den ikke har dekning, ettersom den ikke er på operatørens lokale nettverk). Samtidig leverer IWF-en utgående meldinger fra klienten uten dekning til mottakerens operatør. Kryptering og autentisering beskytter SMS-meldinger utvekslet mellom klienter uten dekning, og IWF-en hindrer både Apple og de med satellittsignaltilgang fra å få tilgang til eller endre meldingene.
En Diffie-Hellman-nøkkelutveksling over NIST P256-kurven starter når en klient har dekning og fullføres når klienten ikke har dekning og etablerer den første satellittforbindelsen. Ved å bruke HKDF-SHA-256 kan Apple og enheten hente flere nøkler fra denne nøkkelutvekslingen. Én nøkkel krypterer symmetrisk (med AES-GCM med en 256-bit nøkkel) klientinformasjonen som trengs for SMS-ruting (IMSI og SMSC). Et annet sett ordner toveiskryptering av meldinger mellom klienten og IWF-en, også ved hjelp av AES-GCM med en 256-bit nøkkel.
Fordi satellittforbindelser har mindre båndbredde og mer forsinkelse enn vanlig kommunikasjon over mobilnett, vil ikke alle innkommende SMS-meldinger nå klienten umiddelbart når den får dekning, for å hindre spam eller uviktige meldinger fra å forsinke hentingen av viktige meldinger. I stedet sender systemet innkommende meldinger til klienten hvis:
1. Klienten, som er uten dekning, har sendt en melding til avsenderen innen periode på 24 timer.
2. Avsenderen er en godkjent avsender (i brukerens nødkontakter eller iCloud-familiemedlemmer).
Ellers lagrer Apple den krypterte meldingen på tjenerne sine til klienten har dekning igjen og henter meldingen fra tradisjonelle nettverk. Av hensyn til brukerens personvern sørger Apple for at IWF-en ikke kan lese brukerens liste over godkjente avsendere.
Klienten bruker HMAC-SHA-256 med en nøkkel hentet fra øktens hovednøkkel for å generere tilfeldige pseudonymer for hvert telefonnummer i hver økt. Når økten etableres, sender klienten pseudonymene for hvert telefonnummer på den godkjente listen til Apple-tjeneren. Samtidig genererer og sender den et pseudonym til Apple hver gang klienten sender en SMS til et telefonnummer. Dette gjør at Apple kan føre en liste over godkjente avsenderpseudonymer for økten.
Når noen sender klienten en SMS etter at en økt har blitt etablert, krypterer IWF-en meldingen og beregner pseudonymet til avsenderens telefonnummer. Den kommuniserer dette sammen med krypterte meldinger til Apples tjenere. Tjeneren sammenligner avsenderpseudonymet til den innkommende meldingen mot listen med godkjente pseudonymer og videresender den krypterte meldingen ved samsvar.