
Kommunicera information vid nödsituationer via satellit
Användare med iPhone 14 eller senare kan kommunicera via satellitlänkar för att tillhandahålla olika tjänster. Satellitlänkar medför betydande bandbreddsbegränsningar och kräver säkerhetsprotokoll med minimala bandbreddskrav. Oavsett kommunikationstyp (Nödanrop SOS, SMS eller iMessage) upprättar Apple en säker session mellan den enhet som saknar nätanslutning och ett Apple-datacenter. Enheter förregistrerar publikt nyckelmaterial hos servern via mobilnätet eller Wi-Fi för att spara bandbredd när nätanslutning saknas.
Grundläggande säkerhetsarkitektur
När en enhet begär en satellittjänst upprättar den en säker anslutning till Apples datacenter genom att referera till en avkortad hash av sin publika nyckel för nyckelutbyte. Varje publikt/privat nyckelpar stöder endast en enskild session med en längsta giltighetstid på åtta timmar. Servern genererar ett motsvarande publikt/privat nyckelpar för varje klientnyckelpar i förväg och delar den publika nyckeln med klienten.
När sessionen löper ut eller avslutas tar Apple-servrar och enheten bort de motsvarande privata nycklarna och tillhandahåller forward secrecy. Apple och enheter registrerar ytterligare nycklar med regelbundna intervall och när de kopplar upp sig efter att en privat nyckel använts, vilket ger säkerhet efter satellitkommunikationer. Observatörer kan inte identifiera användare från sessionsidentifierare eftersom varje enhet roterar mellan identifierare i varje session för att förhindra länkning.
Nöd- och vägassistans via satellit
När användare drar nytta av SOS eller vägassistans via satellit skyddas innehållet i kommunikationen av den säkra anslutningen till Apple (beskrivs ovan). Ett ytterligare krypteringslager säkerställer att innehållet förblir krypterat hela vägen till appservern, vilket vidarebefordrar dessa meddelanden till Apples räddningstjänst och vägassistanspartners med transportkryptering.
iMessage via satellit
Vid utväxling av iMessage-meddelanden via Wi-Fi eller mobilnätet utbyter enheter nyckelmaterial tillsammans med meddelanden om någon enhet i avsändarens eller mottagarens grupp har stöd för satellittjänster. Genom den här mekanismen får enheter regelbundet uppdaterade nycklar som gör det möjligt för dem att kryptera och avkryptera meddelanden när mobilanslutning inte är tillgänglig och enheten ansluter till en satellit. Eftersom nycklar har en begränsad livslängd måste användare ha utväxlat meddelanden inom de senaste 30 dagarna för att kunna kommunicera utan nätanslutning.
Varje enhet genererar symmetriskt nyckelmaterial och distribuerar det med iMessage-kryptering för att kryptera sina egna utgående meddelanden. Varje meddelande använder en unik symmetrisk nyckel som härleds genom en hashbaserad nyckelhärledningsfunktion (Hash-based Key Derivation Function, HKDF) för dess motsvarande meddelanderäknare. När ett meddelande tas emot slår mottagarens enhet upp avsändarens symmetriska nyckelmaterial för att härleda den motsvarande meddelandenyckeln. När enheten kopplas upp igen distribueras nya symmetriska nycklar för påföljande sessioner.
Sändarenheten skickar iMessage-meddelanden via satellit endast efter att den har tagit emot en signerad nyttolast från mottagaren som bekräftar att enheten kan ta emot meddelanden via satellit.
Obs! iMessage via satellit stöder endast meddelanden mellan enskilda personer, inte grupper.
SMS via satellit
När användare skickar eller tar emot SMS via satellit kan meddelanden skickas till eller från ett nätverks IWF (Interworking Function). IWF tar emot meddelanden som är avsedda för klienten som saknar nätanslutning från avsändarens operatör (klienten verkar roama medan den saknar nätanslutning eftersom den inte finns i operatörens lokala nätverk). På liknande sätt levererar IWF utgående meddelanden från klienten som saknar nätanslutning till mottagarens hemoperatör Kryptering och autentisering skyddar SMS som utväxlas mellan klienten som saknar nätanslutning och IWF, vilket förhindrar att både Apple och de med tillgång till satellitsignalen kan läsa eller ändra meddelandet.
Ett nyckelutbyte med Diffie-Hellman via NIST P256-kurvan inleds medan en klient är uppkopplad och slutförs när klienten förlorar nätanslutning och den inledande satellitanslutningen upprättas. Med HKDF-SHA-256 härleder Apple och enheten flera nycklar från detta nyckelutbyte. En nyckel krypterar klientinformation (med AES-GCM med en 256-bitarsnyckel) som krävs för korrekt SMS-dirigering (IMSI och SMSC). En annan uppsättning tillhandahåller dubbelriktad kryptering av meddelanden mellan klienten och IWF och använder också AES-GCM med en 256-bitarsnyckel.
Eftersom satellitanslutningar har lägre bandbredd och högre latens än traditionell mobilkommunikation nås inte klienten omedelbart av alla inkommande SMS när den ansluter utan nätanslutning för att förhindra att spam eller onödiga meddelanden fördröjer kritisk SMS-hämtning. Istället överför systemet inkommande meddelanden till klienten endast om:
1. Klienten har skickat ett meddelande till sändaren under de senaste 24 timmarna.
2. Sändaren är en godkänd sändare (finns i användarens nödkontakter eller är en iCloud-familjemedlem).
Annars lagrar Apple meddelandena i krypterad form på sina servrar tills klienten kopplar upp sig igen och hämtar meddelandena via traditionella nätverk. För att skydda användares integritet säkerställer Apple att IWF inte lär sig användarens lista med godkända sändare.
Klienten använder HMAC-SHA-256 med en nyckel som härleds från sessionens primära nyckel till att generera slumpmässiga pseudonymer för varje telefonnummer i varje session. När en session upprättas skickar klienten pseudonymerna för varje telefonnummer på den tillåtna listan till Apple-servern. På liknande sätt genererar den och skickar en pseudonym till Apple varje gång klienten skickar ett SMS till ett telefonnummer. Det tillåter att Apple behåller en lista med godkända sändarpseudonymer under sessionen.
När någon skickar ett SMS till klienten efter att sessionen har upprättats blir meddelandet krypterat av IWF som också beräknar sändarens telefonnummerpseudonym. Detta kommuniceras tillsammans med det krypterade meddelandet till Apples server. Servern jämför det inkommande meddelandets sändarpseudonym mot den tillåtna listan och vidarebefordrar det krypterade meddelandet om det finns en matchning.