
Enviar información por satélite durante situaciones de emergencia
Los usuarios con un iPhone 14, o posterior, pueden comunicarse mediante enlaces satelitales para recibir diversos servicios. Los enlaces satelitales imponen importantes restricciones de ancho de banda y requieren protocolos de seguridad con una sobrecarga mínima de ancho de banda. Independientemente del tipo de comunicación (Emergencia SOS, mensajes de texto o iMessage), Apple establece una sesión segura entre el dispositivo fuera de la red y un centro de datos de Apple. Los dispositivos registran con anticipación el material de la clave pública en el servidor a través de la red de telefonía celular o Wi-Fi para ahorrar ancho de banda mientras están fuera de la red.
Arquitectura de seguridad central
Cuando un dispositivo solicita un servicio satelital, establece una conexión segura con el centro de datos de Apple haciendo referencia a un hash truncado de su clave pública para el intercambio de claves. Cada par de llaves pública-privada es compatible con una sola sesión, y tiene una validez máxima de ocho horas. El servidor genera por adelantado un par de llaves pública-privada correspondiente para cada par de llaves de cliente y comparte la clave pública con el cliente.
Una vez que la sesión expira o finaliza, los servidores de Apple y el dispositivo eliminan las claves privadas correspondientes, lo que proporciona confidencialidad directa. Apple y los dispositivos registran claves adicionales a intervalos regulares y después de volver a conectarse tras usar una clave privada, lo que proporciona seguridad tras el compromiso para las comunicaciones por satélite. Los observadores no pueden identificar a los usuarios con los identificadores de sesión, ya que cada dispositivo alterna los identificadores en cada sesión para evitar que se establezcan vínculos.
Asistencia vial y en caso de emergencia vía satélite
Cuando los usuarios usan Emergencia SOS o Asistencia vial vía satélite, la conexión segura con Apple (descrita anteriormente) protege el contenido de la comunicación. Una capa de encriptación adicional garantiza que el contenido permanezca encriptado hasta llegar al servidor de la app, el cual reenvía estos mensajes a los servicios de emergencia de Apple y a los socios de asistencia vial con encriptación de transporte.
iMessage vía satélite
Al intercambiar mensajes de iMessage por Wi-Fi o red de telefonía celular, los dispositivos intercambian material de clave junto con los mensajes si algún dispositivo del grupo del remitente o del destinatario es compatible con el servicio satelital. A través de este mecanismo, los dispositivos reciben claves que se actualizan periódicamente y que les permiten encriptar y descifrar mensajes cuando no hay conectividad de telefonía celular y el dispositivo tiene conexión con el satélite. Debido a las limitaciones de la vida útil de las claves, los usuarios deben intercambiar mensajes en los últimos 30 días para comunicarse fuera de la red de datos celulares.
Cada dispositivo genera material de clave simétrica y lo distribuye utilizando el cifrado de iMessage para encriptar sus propios mensajes salientes. Cada mensaje usa una clave simétrica única derivada a través de una función de derivación de claves basada en hash (HKDF) para su contador de mensajes correspondiente. Al recibir un mensaje, los dispositivos de los destinatarios buscan el material de clave simétrica del remitente para derivar la clave de mensaje correspondiente. Cuando el dispositivo vuelve a conectarse, se distribuyen nuevas claves simétricas para las sesiones posteriores.
El dispositivo remitente usa el satélite para enviar iMessages después de recibir una carga útil firmada del destinatario que confirma que el dispositivo puede recibir mensajes vía satélite.
Nota: iMessage vía satélite sólo es compatible con mensajes individuales, no grupales.
Mensajes de texto vía satélite
Cuando los usuarios usan el satélite para enviar o recibir mensajes de texto, estos se envían o reciben desde una función de interfuncionamiento de red (IWF). La IWF recibe los mensajes destinados al cliente fuera de la red desde el operador del remitente (aunque el cliente esté fuera de la red, aparece como en el modo roaming, ya que no se encuentra en la red local del operador). Del mismo modo, la IWF entrega los mensajes salientes del cliente fuera de la red al operador local del destinatario. El cifrado y la autenticación protegen los mensajes de texto intercambiados entre el cliente fuera de la red y la IWF, lo que impide que ni Apple ni aquellos con acceso a la señal satelital puedan acceder o modificar los mensajes.
El intercambio de claves Diffie-Hellman mediante la curva NIST P256 comienza mientras el cliente tiene conexión a la red y finaliza cuando el cliente se desconecta y establece la conexión satelital inicial. Apple y el dispositivo usan HKDF-SHA-256 para derivar varias claves de este intercambio de claves. Una clave encripta simétricamente (utilizando AES-GCM con una clave de 256 bits) la información del cliente necesaria para el enrutamiento adecuado de los mensajes de texto (IMSI y SMSC). Otro conjunto proporciona el cifrado bidireccional de los mensajes entre el cliente y la IWF, también utilizando AES-GCM con una clave de 256 bits.
Dado que las conexiones satelitales tienen un ancho de banda menor y una latencia mayor que las comunicaciones celulares tradicionales, no todos los mensajes de texto entrantes llegan al cliente inmediatamente cuando se conecta fuera de la red, con el fin de evitar que el spam o los mensajes de bajo valor retrasen la recuperación de mensajes de texto críticos. En su lugar, el sistema transmite los mensajes entrantes al cliente sólo si se da alguna de las siguientes circunstancias:
1. El cliente, mientras está desconectado, ha enviado un mensaje al remitente en el periodo reciente de 24 horas.
2. El remitente es un remitente aprobado (que figura en los contactos de emergencia del usuario o en los familiares de iCloud).
De lo contrario, Apple encripta el mensaje y lo almacena en sus servidores hasta que el cliente vuelve a conectarse y recupera los mensajes a través de las redes tradicionales. Para mantener la privacidad de los usuarios, Apple se asegura de que la IWF no conozca la lista de remitentes aprobados por los usuarios.
El cliente usa HMAC-SHA-256 con una clave derivada de la clave principal de la sesión para generar seudónimos aleatorios para cada número telefónico en cada sesión. Al establecer la sesión, el cliente envía los seudónimos de cada número telefónico de la lista de permitidos al servidor de Apple. Del mismo modo, genera y envía un seudónimo a Apple cada vez que el cliente envía un mensaje de texto a un número telefónico. Esto permite a Apple mantener una lista de seudónimos de remitentes permitidos para la sesión.
Cuando alguien envía un mensaje de texto al cliente después de establecer la sesión, la IWF encripta el mensaje y calcula el seudónimo del número telefónico del remitente, y lo envía junto con el mensaje encriptado a los servidores de Apple. El servidor compara el seudónimo del remitente del mensaje entrante con la lista de permitidos y reenvía el mensaje encriptado si hay una coincidencia.