Skip to content

Безопасность

E2E-шифрование, сетевые угрозы, наши гарантии.

Шифрование для своих — от устройства к устройству.

Модель безопасности

Svoi проектируется как защищённый мессенджер для повседневных разговоров: личных, семейных, рабочих. Ниже — чёткое и сдержанное описание того, что мы защищаем, как именно, и где границы этой защиты.

E2E-шифрование по умолчанию

  • Все сообщения шифруются на клиенте по стандарту MLS (RFC 9420) с использованием библиотеки OpenMLS.
  • Группы масштабируются через TreeKEM: обновление ключа при изменении состава группы занимает O(log N) операций вместо O(N).
  • Каждое устройство пользователя — отдельный лист в MLS-дереве. Это даёт мультидевайс без компромиссов по forward secrecy.
  • 1-на-1 чат — это MLS-группа из двух участников. Отдельный канал шифрования для секретных чатов не нужен.

Что видит сервер

Сервер никогда не видит plaintext сообщений и медиафайлов. Чтобы доставлять сообщения, серверу нужны отдельные метаданные:

  • идентификаторы пользователей и устройств,
  • маршрутизация чатов и членство в группах,
  • MLS-эпохи и номера сообщений,
  • временные метки и размеры,
  • логи безопасности без содержимого.

Мы намеренно документируем эти поля, чтобы не создавать иллюзию «ничего не видно». Privacy — это конкретный контракт, не маркетинг.

Медиафайлы

  • Файлы, фото и видео шифруются на клиенте до отправки. В хранилище попадает только ciphertext.
  • Ключи шифрования отдельных медиа передаются внутри зашифрованных MLS-сообщений, а не как отдельная серверная сущность.
  • Превью-изображения генерируются и шифруются на клиенте.

Звонки

  • Голосовые и видеозвонки идут через самостоятельно размещённый LiveKit-SFU, а не через сторонние коммерческие сервисы.
  • Медиа-потоки звонков шифруются поверх WebRTC через insertable transforms; SFU маршрутизирует пакеты, но не может их расшифровать.
  • Транспорт звонков — многослойный: прямой UDP, TURN/UDP, TURN/TCP 443, TURN/TLS 443. Это ответ на нестабильные сети, не обещание обхода блокировок.
  • Relay-мощности размещены близко к пользователям, поэтому пути через TURN остаются рабочими даже когда прямой UDP недоступен.

Мультидевайс

  • Каждое устройство регистрируется независимо со своим набором MLS-ключей.
  • Новое устройство не получает доступ к истории прошлых эпох — это намеренное свойство MLS, а не ограничение реализации.
  • Отзыв устройства — это не просто выход из аккаунта: устройство исключается из MLS-дерева, и будущий трафик для него недоступен даже при компрометации старых ключей.

Регистрация по приглашениям

Ограничение регистрации инвайтами — не косметическая фича, а часть модели безопасности:

  • контролируется рост и нагрузка на инфраструктуру,
  • снижается массовый spam и raid-пригодные сценарии,
  • каждый новый участник связан с пригласившим для audit-трейла.

Связь «пригласивший ↔ приглашённый» не используется как публичный социальный граф.

Угрозы вне нашей модели

Мы честно перечисляем, от чего Svoi не защищает:

  • компрометация самого устройства пользователя (malware, физический доступ, корневой доступ к ОС);
  • атаки социальной инженерии на конкретного пользователя;
  • анализ трафика на уровне интернет-провайдера, если у атакующего есть мотив и ресурсы отслеживать целевого человека;
  • утечки через скриншоты, пересылку в другие мессенджеры, фото экрана камерой.

Это не «оговорки мелким шрифтом», это граница, которую нужно знать, чтобы пользоваться продуктом осознанно.

Хранение на устройстве

  • Локальная база данных на нативных клиентах шифруется ключом, производным от пароля или биометрии пользователя.
  • Веб-клиент использует OPFS-бэкенд для локального хранения; хранение секретов в браузере имеет свои ограничения, и мы документируем их отдельно в настройках веб-приложения.

Ответственное раскрытие

Если вы нашли уязвимость, напишите на security@svoi.red. Мы подтверждаем получение в течение 72 часов и отвечаем предметно, а не отписками.