
Передача экстренной информации по спутниковой связи
Пользователи iPhone 14 и новее могут обмениваться данными с различными службами по спутниковой связи. Сеанс спутниковой связи накладывает серьезные ограничения на скорость подключения и требует протоколов безопасности с минимальной передачей дополнительных данных. Независимо от типа передаваемых данных (Экстренный вызов — SOS, SMS или iMessage) Apple устанавливает безопасный сеанс связи между устройством, находящимся вне зоны действия сетей, и центром обработки данных Apple. Чтобы сократить объем передаваемых данных при нахождении вне зоны действия сетей, устройства заранее регистрируют материал ключей на сервере по сотовой связи или Wi-Fi.
Основная архитектура безопасности
Когда устройство запрашивает сеанс спутниковой связи, оно устанавливает защищенное соединение с центром обработки данных Apple, ссылаясь на сокращенный хеш своего открытого ключа для обмена ключами. Каждая пара из открытого и личного ключей поддерживает только один сеанс использования с максимальным сроком действия 8 часов. Сервер заранее генерирует соответствующую пару из открытого и личного ключей для каждой клиентской пары ключей и передает клиенту открытый ключ.
После завершения сеанса или истечения срока его действия серверы Apple и устройство удаляют соответствующие личные ключи, обеспечивая прямую секретность. Apple и устройства регистрируют дополнительные ключи с регулярными интервалами и при повторном подключении к сети после использования личного ключа, чтобы обеспечить защиту обмена данными по спутниковой связи после компрометации использованного ключа. Наблюдатели не могут идентифицировать пользователей по идентификаторам сеансов, так как каждое устройство меняет идентификаторы после каждого сеанса для предотвращения отслеживания.
Экстренная помощь и помощь на дорогах по спутниковой связи
Когда пользователь задействует функцию SOS или функцию помощи на дорогах по спутниковой связи, защищенное соединение с серверами Apple (как описано выше) защищает передаваемые данные. Дополнительный слой шифрования гарантирует, что содержимое остается зашифрованным на всем пути до сервера приложения, который передает эти сообщения с применением транспортного шифрования в экстренные службы Apple и партнерам, оказывающим помощь на дорогах.
iMessage по спутниковой связи
При обмене сообщениями iMessage по Wi-Fi или сотовой связи устройства обмениваются материалом ключей вместе с сообщениями, если любое из устройств в группе отправителя или получателя поддерживает спутниковое подключение. Благодаря этому механизму устройства получают регулярно обновляемые ключи, позволяющие им зашифровывать и расшифровывать сообщения, когда сотовое подключение недоступно и устройство подключается к спутнику. Из‑за ограничений на срок действия ключей пользователи могут общаться вне зоны действия сети, только если они обменивались сообщениями в последние 30 дней.
Каждое из устройств генерирует симметричный материал ключа и передает его с использованием шифрования iMessage, чтобы зашифровывать собственные исходящие сообщения. В каждом сообщении используется симметричный ключ, созданный механизмом функции формирования ключа на основе хеша (HKDF) для соответствующего счетчика сообщений. Получив сообщение, устройства получателя ищут симметричный материал ключа отправителя, чтобы создать соответствующий ключ сообщения. Когда устройство снова подключается к сети, новые симметричные ключи передаются для последующих сеансов.
Устройство отправителя передает сообщения iMessage по спутниковой связи, только получив от получателя подписанную полезную нагрузку, подтверждающую, что это устройство может получать сообщения по спутниковой связи.
Примечание. По спутниковой связи возможен обмен только индивидуальными, но не групповыми сообщениями iMessage.
SMS по спутниковой связи
Когда пользователи отправляют или получают SMS по спутниковой связи, сообщения передаются через функцию межсетевого взаимодействия (IWF). IWF получает сообщения для клиента, находящегося не в сети, от оператора связи отправителя (клиент, находящийся не в сети, отображается в роуминге, так как он недоступен в локальной сети оператора). Аналогичным образом IWF доставляет исходящие сообщения от клиента, находящегося не в сети, местному оператору связи получателя. Шифрование и аутентификация защищают SMS-сообщения при передаче между клиентом, находящимся не в сети, и IWF, поэтому Apple и пользователи, имеющие доступ к сигналу спутниковой связи, не могут прочитать или изменить эти сообщения.
Обмен ключами Диффи — Хеллмана на эллиптических кривых NIST P256 начинается, когда клиент находится в сети, и завершается, когда клиент покидает сеть и устанавливает первичное спутниковое соединение. На основе этого обмена ключами Apple и устройство создают несколько ключей по алгоритму HKDF‑SHA‑256. Один ключ симметрично шифрует клиентскую информацию (по алгоритму AES‑GCM с 256‑битным ключом), необходимую для правильной маршрутизации SMS (IMSI и SMSC). Другой набор обеспечивает двустороннее шифрование сообщений между клиентом и IWF также по алгоритму AES‑GCM с 256‑битным ключом.
Поскольку спутниковое соединение обладает меньшей пропускной способностью и большей задержкой, чем традиционная сотовая связь, не все входящие SMS сразу поступают клиенту, подключившемуся вне зоны действия сети. Это позволяет предотвратить задержку важных SMS из‑за загрузки спама или сообщений низкой значимости. Вместо этого система передает входящие сообщения клиенту только в одном из нижеперечисленных случаев.
1. Клиент, находясь вне зоны действия сети, отправлял сообщение этому абоненту в последние 24 часа.
2. Отправитель является одобренным (добавлен пользователем в список контактов на случай ЧП или список членов семьи в iCloud).
В иных случаях Apple хранит сообщение в зашифрованном виде на своих серверах, пока клиент не подключится к сети и не извлечет сообщения по традиционным каналам связи. Чтобы обеспечить конфиденциальность пользователей, Apple гарантирует, что IWF не может узнать список отправителей, одобренных пользователем.
Используя алгоритм HMAC‑SHA‑256 с ключом, созданным на основе первичного ключа сеанса, клиент генерирует случайные псевдонимы для каждого номера телефона в каждом сеансе. При установлении сеанса клиент отправляет на сервер Apple псевдонимы для каждого номера телефона из списка разрешенных. Аналогичным образом он генерирует псевдоним и отправляет его в Apple каждый раз при отправке SMS на определенный номер телефона. Это позволяет Apple поддерживать список псевдонимов разрешенных отправителей для данного сеанса.
Когда кто‑то отправляет клиенту SMS после установления сеанса, IWF шифрует это сообщение и вычисляет псевдоним номера телефона отправителя. Этот псевдоним передается на серверы Apple вместе с зашифрованным сообщением. Сервер сравнивает псевдоним отправителя входящего сообщения со списком разрешенных отправителей и пересылает зашифрованное сообщение, если найдено совпадение.