Безопасность FaceTime
FaceTime — это служба Apple для совершения видео- и аудиозвонков. Подобно iMessage для установления первоначального соединения с зарегистрированными устройствами пользователя вызовы FaceTime используют службу Apple Push Notification (APNs). Содержимое вызовов FaceTime защищено с помощью сквозного шифрования, поэтому никто, кроме отправителя и получателя, не может получить к ним доступ. Apple не может расшифровать данные.
Изначальное соединение FaceTime устанавливается через серверную инфраструктуру Apple, которая ретранслирует пакеты данных между зарегистрированными устройствами пользователей. Передавая уведомления APNs и сообщения Утилиты прохождения сессий для NAT (STUN) через ретранслированное соединение, устройства проверяют свои сертификаты подлинности и выбирают общий ключ для каждого сеанса. Этот общий ключ используется для генерации ключей сеансов для медиаканалов, передаваемых в потоковом режиме через Secure Real-time Transport Protocol (SRTP). Пакеты SRTP шифруются с использованием алгоритма AES256 в режиме счетчика и аутентифицируются с помощью HMAC-SHA1. После первоначального соединения и настройки параметров безопасности FaceTime использует STUN и Internet Connectivity Establishment (ICE) для установления прямого соединения между устройствами, если это возможно.
Функция групповых вызовов по FaceTime обеспечивает поддержку одновременно до 33 участников. Как и при обычном вызове FaceTime, соединения между устройствами приглашенных участников группового вызова защищены с помощью сквозного шифрования. Несмотря на то, что для групповых вызовов FaceTime в значительной степени используются те же инженерные решения и разработки, что и для обычных вызовов, в групповых вызовах применяется механизм задания ключа, помимо средств проверки подлинности, обеспечиваемых службой идентификации Apple (IDS). Этот протокол обеспечивает прямую секретность: даже при взломе устройства пользователя данные прошлых вызовов останутся защищены. Ключи сеансов защищаются по алгоритму AES-SIV и распределяются между участниками вызова с использованием построения ECIES (интегрированная схема шифрования на эллиптических кривых) с динамическими ключами ECDH P‑256.
Когда в текущий групповой вызов по FaceTime добавляется новый номер телефона или адрес электронной почты, активные устройства назначают новые ключи сеансов для медиаканалов. Ранее использовавшиеся ключи никогда не предоставляются вновь добавленным устройствам.