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

Защита без магических обещаний.

ChatOffline рассчитан на любопытных соседей, вредоносные пакеты, повторы и потерю устройства. Он не обещает защиту от заражённой ОС или глобального анализа трафика.

01

Личный текст не хранится открыто

Outbox, courier bag, журналы и файловые части содержат только шифротекст. Ошибка secure storage закрывает функцию, а не включает plaintext fallback.

02

Ник — не личность

Доверие закрепляется за криптографическими ключами и сверкой QR/SAS. Смена ключа проверенного контакта требует новой проверки.

03

Живая сессия сильнее sealed fallback

Когда доступен Noise-сеанс с forward secrecy, ChatOffline использует его. Sealed mail нужен для отложенной доставки.

04

ACK только после фиксации

Сообщение считается принятым после атомарной записи зашифрованной временной шкалы и replay-state. Сбой диска удерживает подтверждение.

05

Телеметрия выключена

Нет crash upload и скрытой аналитики. Любая будущая диагностика требует отдельного понятного opt-in.

06

Лимиты на злоупотребления

Ограничены пакеты, сессии, очереди, размеры, частота ANNOUNCE и courier bag; декодирование повреждённых данных fail-closed.

В модели угроз

  • Пассивное чтение Bluetooth-трафика рядом
  • Внедрение, повтор и flood повреждённых пакетов
  • Любопытный ретранслятор или курьер
  • Потеря устройства и экстренная очистка

Пока вне модели

  • Malware с правами пользователя или root
  • Глобальный активный противник
  • Компрометация большинства mesh-узлов
  • Формальная защита от side-channel атак

Криптографический реестр

Что чем защищается

СессииNoise XX · X25519 · ChaCha20-Poly1305

ПодписиEd25519 ANNOUNCE и PrivateEnvelope v2

Отложенная почтаX25519 sealed box + подпись origin

ФайлыPer-chunk AEAD + полный hash

WebWebCrypto non-extractable keys + AES-GCM

УстройстваRoot-signed device certificates + revocation