Маршрутизация без одного центра
Координатор выбирает прямой Noise-сеанс, mesh, sealed outbox, courier, локальную сеть или WebRTC по доступности и вашим правилам. Запрещённый мобильный трафик не включается скрыто.
Возможности продукта
ChatOffline объединяет несколько способов доставки, но оставляет пользователю простой язык состояний. Ниже — что действительно реализовано в коде и какие гарантии заложены в архитектуру.
Координатор выбирает прямой Noise-сеанс, mesh, sealed outbox, courier, локальную сеть или WebRTC по доступности и вашим правилам. Запрещённый мобильный трафик не включается скрыто.
При живом соединении ChatOffline предпочитает Noise XX. Если адресат недоступен, сообщение упаковывается в подписанный sealed-конверт. Получение подтверждается только после надёжной локальной фиксации.
Соседнее устройство хранит только непрозрачный шифротекст с ограниченным сроком и квотой. Оно не знает текст, ключ и не может объявить доставку без подтверждения адресата.
Фото, видео, документы, архивы, APK и EXE режутся на части, шифруются и проверяются. Выполняемые файлы не запускаются приложением, а передача умеет продолжаться после перезапуска.
Приватные группы используют подписанные манифесты, роли и эпохи ключей. Новый участник не получает старую историю, удалённый — новые ключи.
Телефон остаётся корнем доверия и подписывает ограниченный сертификат Mac, Windows или браузера. Устройство можно отозвать без экспорта главного приватного ключа.
Голосовые, изображения, видео и видеокружки используют тот же защищённый транспорт. Транскрипция выполняется локально, когда языковой пакет доступен на устройстве.
Браузер готовит файл в локальном зашифрованном сейфе, соединяется по WebRTC и требует сверки короткого SAS. Signaling mailbox хранит только AES-GCM-конверт до 10 минут.
Текст и имя отправителя в уведомлениях скрыты по умолчанию. Технические fingerprint, RSSI и packet types находятся в диагностике, а не мешают обычному чату.
Экстренная очистка уничтожает identity, доверие, ключи, очереди, кэш и создаёт новую идентичность. Повреждённое хранилище не переключается на открытый текст.
Граница обещаний
Автоматически подтверждено: протоколы, защищённое хранение, Android-сборка, iOS archive, desktop lifecycle, Web/PWA и кроссплатформенные test vectors.
Ещё требует физических gates: длительный mesh на 2–3 телефонах, фоновые режимы, production-подписи Apple/Windows и независимый security review.