Вопрос или проблема
Веб-приложение Wire может относительно легко полностью потерять историю бесед, когда хранилище браузера удаляется или повреждается. История также не отображается (хотя неясно, потеряна ли она или просто недоступна пользователю) при входе пользователя с нового устройства.
Когда его спросили о том, чтобы предупредить пользователей об этой потере данных, один из разработчиков Wire заявил следующее:
Потеря истории из-за потери хранилища свойственна сквозному шифрованию
Верно ли это утверждение? (Я предполагаю, что они имели в виду “Потеря истории из-за потери хранилища присуща сквозному шифрованию”). Разве сервер не может хранить историю бесед в зашифрованном виде, передавать ее клиенту по запросу, который сможет расшифровать ее с использованием закрытого ключа? В конце концов, именно так, похоже, работают E2E сервисы электронной почты, такие как Protonmail.
Нет, потеря истории сообщений не присуща сквозному шифрованию, но присуща принципу forward secrecy.
Возможно, разработчик Wire путает между e2e и FS, или они считают FS важным компонентом e2e, что не является совсем unreasonable точкой зрения, но это не вполне распространено.
Одно, строго говоря, не имеет ничего общего с другим. Цель сквозного шифрования мгновенных сообщений – защитить содержимое сообщений от прослушивания в публичной сети, однако как только сообщение было получено и расшифровано на клиенте, оно не обязывает хранить сообщения.
Некоторые приложения пытаются помочь пользователям быстро избавляться от сообщений, предлагая функции для автоматического удаления сообщений сразу после их прочтения. Это выбор разработчика приложения; шифрование при передаче не диктует это. Хранение истории сообщений предоставляет возможность тем, кто вас преследует, получить доступ к сообщениям, взломав хранилище ваших устройств, но это также очень удобная функция, и безопасность заключается в нахождении баланса между удобством и безопасностью.
Ответ или решение
Утверждение разработчика Wire о том, что потеря истории сообщений связана с энд-то-энд шифрованием (E2E), не совсем корректно. На самом деле, потеря истории сообщений не является неотъемлемой частью E2E шифрования, но она может быть связана с концепцией “прямой секретности” (forward secrecy), которая часто применяется в системах E2E.
Энд-то-энд шифрование предназначено для защиты содержимого сообщений от перехвата на общих каналах связи, обеспечивая, что только отправитель и получатель имеют возможность расшифровать содержание сообщения. После получения и расшифровки сообщения клиентом, решение о хранении или удалении этого сообщения не определяется самим механизмом E2E. Таким образом, E2E шифрование само по себе не предполагает, что история сообщений должна быть потеряна.
Некоторые приложения могут выбирать автоматическое удаление сообщений после их прочтения как часть своей политики безопасности, однако это — выбор разработчиков, а не результат применения E2E шифрования. Хранение истории сообщений может быть потенциально уязвимым при взломе устройства пользователя, но многие пользователи предпочитают иметь доступ к своей истории переписки ради удобства.
В случае с Wire, потеря истории при очистке данных браузера или при входе с нового устройства может быть результатом их подхода к реализации шифрования и управлению данными, но это не является общей характеристикой E2E шифрования как такового. Некоторые другие сервисы, такие как ProtonMail, позволяют хранить зашифрованную историю на сервере, где пользователь может получить к ней доступ с помощью своего приватного ключа, что демонстрирует, что можно использовать E2E шифрование и при этом сохранять историю сообщений.
Таким образом, утверждение о том, что потеря истории сообщений “неизбежна при энд-то-энд шифровании”, следует рассматривать в контексте конкретной реализации и подходов к безопасности, а не как общее правило.