E2EE-Effort charten #9

Open
opened 2026-08-14 17:10:42 +00:00 by RDietermann · 0 comments
Owner

Der groesste offene Brocken und das Kernversprechen des Produkts: der Serverbetreiber gilt als Angreifer.

Die Realtime-Map hat vier bindende Zusagen hinterlassen, die dort eingeloest werden muessen:

  1. Blob-Feldliste — messages.content, attachments.filename, attachments.mime_type, reactions.emoji (Letzteres deterministisch, damit der UNIQUE-Constraint weiter greift).
  2. DTLS-Fingerprint-Naht — sicheres Voice haengt daran. Ohne Identitaetsschluessel kann der Signaling-Server Fingerprints tauschen (RFC 8827), und der spezifizierte Gegenmechanismus ist in keiner Ziel-Engine implementiert.
  3. SecretStore-Implementierung — bewusst hierher verschoben, weil dasselbe Problem fuer Geraeteschluessel gilt, nur unwiederbringlich statt ablaufend.
  4. voice_rooms.name — nutzererzeugter Inhalt, aber ein neues Workspace-Mitglied muss die Raumliste lesen koennen, ohne vorher Schluesselmaterial zu haben.

Multi-Device (Desktop und Mobile parallel) ist gefordert und ist der teuerste Teil.

Hintergrund: docs/realtime/map.md, Abschnitt Out of scope

Der groesste offene Brocken und das Kernversprechen des Produkts: der Serverbetreiber gilt als Angreifer. Die Realtime-Map hat vier bindende Zusagen hinterlassen, die dort eingeloest werden muessen: 1. **Blob-Feldliste** — `messages.content`, `attachments.filename`, `attachments.mime_type`, `reactions.emoji` (Letzteres deterministisch, damit der `UNIQUE`-Constraint weiter greift). 2. **DTLS-Fingerprint-Naht** — sicheres Voice haengt daran. Ohne Identitaetsschluessel kann der Signaling-Server Fingerprints tauschen (RFC 8827), und der spezifizierte Gegenmechanismus ist in keiner Ziel-Engine implementiert. 3. **`SecretStore`-Implementierung** — bewusst hierher verschoben, weil dasselbe Problem fuer Geraeteschluessel gilt, nur unwiederbringlich statt ablaufend. 4. **`voice_rooms.name`** — nutzererzeugter Inhalt, aber ein neues Workspace-Mitglied muss die Raumliste lesen koennen, ohne vorher Schluesselmaterial zu haben. Multi-Device (Desktop und Mobile parallel) ist gefordert und ist der teuerste Teil. Hintergrund: `docs/realtime/map.md`, Abschnitt *Out of scope*
RDietermann added the effort label 2026-08-14 17:10:42 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: RDietermann/rustification-server#9