Заложить репозиторий: философия, архитектура, модель угроз, ADR

Документы фиксируют принятые проектные решения Bare:
клиент без фреймворков и сборки, Go-сервер одним бинарём,
E2EE на WebCrypto, сервер-реле без истории, локальная история
с экспортом/импортом, Web Push + VAPID. Кода нет — сначала документы.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SW4ZXtKn5NjX8NH3Lhm2ND
This commit is contained in:
Claude
2026-08-20 09:17:37 +00:00
co-authored by Claude Fable 5
commit 3d814112a9
20 changed files with 397 additions and 0 deletions
+15
View File
@@ -0,0 +1,15 @@
# ADR-007: Симметричный ключ комнаты и rekey
## Контекст
Сообщение в комнате должны читать все участники, но не сервер. Шифровать каждое сообщение отдельно каждому участнику — квадратичный объём работы и трафика.
## Решение
У комнаты один симметричный ключ. Он раздаётся участникам зашифрованным на их публичные ключи. При любом изменении состава — rekey: новый ключ, новая раздача.
## Следствия
- Новый участник не видит сообщений до своего вступления — их и не существует нигде, кроме устройств участников.
- Вышедший участник не читает сообщения после rekey.
- Rekey выполняют клиенты; серверу ключи недоступны.