Сквозное шифрование: что оно защищает, а что нет
Сквозное шифрование превратилось в маркетинговую галочку, и от этого почти стёрлось понимание, от чего именно оно спасает. Хорошая новость: чтобы разобраться, криптография не нужна. Достаточно посмотреть, в каких местах сообщение вообще может быть перехвачено.
Три места, где сообщение уязвимо
Путь сообщения от вас к собеседнику проходит через три участка, и защищаются они разными средствами.
Сквозное шифрование закрывает второй и третий участки: ключи есть только на устройствах собеседников, поэтому сервер передаёт непонятный ему набор байтов и расшифровать его не может, даже если очень захочет или если его об этом попросят.
- Ваше устройство: здесь сообщение существует открытым текстом, потому что вы его читаете.
- Сеть между вами и сервером: провайдер, точка Wi-Fi, любой посредник по пути.
- Сервер сервиса: место, где сообщение хранится до доставки.
Чего сквозное шифрование не делает
Здесь начинаются неприятные подробности, о которых редко пишут в описании приложения. Ни одна из них не отменяет пользы шифрования, но каждая ограничивает его в реальной жизни.
Иначе говоря, сквозное шифрование защищает канал и хранилище, но не защищает концы. А концы, то есть телефоны, обычно и есть самое слабое место.
- Не защищает устройство. Если телефон разблокирован или заражён, переписка видна целиком, независимо от шифрования.
- Не мешает собеседнику. Он может сделать скриншот или переслать вашу переписку дальше.
- Не закрывает облачные копии. Резервная копия чата в облаке может храниться в виде, доступном владельцу облака.
- Не скрывает метаданные. Кто, кому и когда писал, обычно остаётся известно сервису.
- Не спасает от подмены ключей, если вы не сверяли отпечатки безопасности с собеседником хотя бы раз.
Как проверить, что оно вообще включено
Формулировка «ваши данные защищены современным шифрованием» не означает сквозного шифрования: обычно так описывают обычный TLS, который есть у любого сайта. Признак настоящего сквозного шифрования, кроме прямого упоминания в документации, это возможность сверить ключ или код безопасности с собеседником в интерфейсе приложения.
Отдельно стоит проверять, включено ли оно по умолчанию во всех чатах или только в специальном режиме, который нужно включать вручную для каждого разговора. Это очень разные уровни защиты, хотя в описании они звучат одинаково.
Как с этим у Chattr
Скажем прямо: сквозного шифрования в Chattr нет. Сообщения зашифрованы при передаче и на сервере, мы не используем переписку для рекламы и не передаём её третьим лицам, но по криптографической модели это слабее, чем Signal или WhatsApp, и мы не собираемся называть это иначе.
Chattr решает другую задачу: остаться доступным там, где остальные мессенджеры не подключаются, и не требовать при регистрации ни номера телефона, ни каких-либо личных данных. Если вам нужна максимально строгая криптография для конкретного разговора, разумно взять для него Signal, а Chattr держать для повседневного общения в сетях, где Signal не работает. Мы считаем такой ответ более полезным, чем реклама.