На этой неделе вышло последнее обновление iOS 17.2, в котором общедоступна проверка контактного ключа . Эта функция, анонсированная
В этом посте я расскажу о том, почему эта дополнительная безопасность важна, что на самом деле делают эти две новые функции и как вы можете прямо сейчас выбрать более высокий уровень безопасности в iMessage на своем телефоне.
Защита сообщений в таких приложениях, как iMessage (которые используют сквозное шифрование), включает в себя «криптографию с открытым ключом». По сути, предположим, что вы отправляете сообщение своей подруге Алисе. У Алисы есть два ключа: один открытый ключ и один закрытый ключ.
Но вы можете думать об открытом ключе как о сейфе, в который можно поместить сообщение, и единственный способ открыть этот сейф и прочитать сообщение — использовать закрытый ключ, чтобы «открыть» или расшифровать его.
Обычно это работает так: Алиса дает вам свой открытый ключ, и вы используете его для шифрования сообщения в одну сторону, прежде чем отправить сообщение ей обратно.
Затем она сможет использовать свой отдельный закрытый ключ на своем устройстве, чтобы расшифровать это сообщение и прочитать его, и она будет единственным человеком, который когда-либо сможет прочитать это сообщение.
Это все хорошо, пока вы не задумаетесь… как вообще получить открытый ключ Алисы?
Некоторые приложения используют «одноранговый» подход, при котором вы просите устройство Алисы напрямую отправить вам ее открытый ключ. Это хорошо работает, если у Алисы и всех, с кем вы отправляете сообщение, есть устройство, которое всегда подключено к сети.
Но если устройство другого человека выключено, находится в режиме полета или иным образом отключено от Интернета — этот подход не работает!
Вот почему многие мессенджеры, включая Signal, Google RCS, WhatsApp и iMessage, используют другой подход к обмену этими ключами. Они используют центральный сервер ключей , который распределяет ключи от имени каждого.
Теперь вместо того, чтобы напрямую спрашивать у вашей подруги Алисы ее открытый ключ, ваш телефон спрашивает Apple, какой открытый ключ Алисы, и Apple отвечает открытым ключом Алисы.
На первый взгляд, это не представляет прямой угрозы вашему шифрованию. Не имеет значения, знает ли Apple открытый ключ Алисы, потому что открытый ключ вообще нельзя использовать для расшифровки сообщений, отправленных Алисе: он общедоступен.
Тем не менее, это по-прежнему позиция власти, которую Apple заняла. Наиболее заметной угрозой является возможность того, что Apple включит в свой ответ дополнительные открытые ключи, возможно, находящиеся под контролем Apple или кого-то еще, а не только вашей подруги Алисы.
Затем, когда вы отправите сообщения Алисе в будущем после получения этого вредоносного ответа, ваша подруга Алиса больше не будет единственным человеком, который сможет расшифровать это сообщение, возможно, Apple или кто-то еще тоже сможет!
Именно эту угрозу и призвана устранить проверка ключей в iMessage.
Первый способ, которым Apple пытается решить эту проблему, — это технология под названием
То, как это работает, похоже на
Краткое объяснение прозрачности ключей заключается в том, что Apple создала проверяемый реестр открытых ключей, к которому можно только добавлять новые данные, но существующие данные в реестре никогда не могут быть изменены .
Это означает, что Apple не может незаметно добавить в этот реестр поддельные открытые ключи человека, а затем удалить их, прежде чем кто-либо это заметит.
Когда вы включаете проверку контактного ключа в настройках Apple ID на своем устройстве, а затем отправляете сообщение своей подруге Алисе, ваш телефон локально сравнивает открытые ключи Алисы, которые он получает от сервера обмена ключами Apple, с тем, что указано в реестре прозрачности открытых ключей. Открытые ключи Алисы должны быть.
Такое сравнение гарантирует, что ключи, которые сервер обмена ключами Apple отправляет вам, ничем не отличаются от тех, которые они отправляют всем остальным.
Кроме того, ваш телефон будет регулярно отслеживать или проверять этот универсальный реестр прозрачности ключей на предмет того, что он говорит о ваших собственных ключах, чтобы убедиться, что в реестре есть только те открытые ключи, которые ожидает ваше устройство.
Эта автоматическая проверка ключей с помощью Key Transparency является огромным улучшением безопасности, но Apple также выпускает второй механизм, который обеспечивает еще более высокую надежность.
Ручная проверка контактного ключа — это второй механизм, и пользователи
В этой системе у вас теперь есть возможность вручную сравнивать коды подтверждения с человеком, с которым вы общаетесь, полностью исключая серверы Apple, включая ключевой реестр прозрачности, из процесса проверки.
Для этого вы можете открыть профиль контакта в iMessage, и в разделе «Расширенная безопасность сообщений» он отобразит 8-значный код аутентификации, который вы можете сравнить лично, по телефону или с помощью любого другого внешнего средства связи. метод, который вам нужен.
Этот код действует как своего рода уникальный идентификатор открытого ключа для этого человека, и когда вы помечаете его как проверенный, хэш открытого ключа этого человека привязывается к карточке контакта вашего друга на вашем устройстве.
Если сервер обмена ключами Apple когда-либо отправит вам другой открытый ключ в будущем или ключ изменится по сравнению с тем, который хранится в карточке контакта вашего друга по какой-либо другой причине, iMessage отобразит ошибку непосредственно в расшифровке разговора, чтобы вы могли изучить ее дальше.
Чтобы воспользоваться этими функциями безопасности для своих контактов, вам обоим придется открыть настройки Apple ID в приложении «Настройки» и включить проверку в iMessage в разделе «Проверка ключа контакта ».
Я определенно рекомендую вам сделать это немедленно, а также распространить информацию об этом изменении. Он добавляет уровень безопасности к вашим разговорам, практически не имея никаких недостатков, так что это не составит труда для любого, кто использует эту услугу.