Gruppen
Gruppen in TalX kommen ohne Server aus. Das bedeutet: Es gibt keine Instanz, die die Mitgliederliste hält, Rechte prüft oder Nachrichten verteilt. Alles davon passiert auf den Geräten selbst.
Erstellen und verwalten
Abschnitt betitelt „Erstellen und verwalten“Über das Gruppen-Symbol in der Chatliste: Name eingeben – der läuft durch denselben Extremismus-Filter wie Anzeigenamen – und Mitglieder aus den verbundenen Kontakten auswählen. Wer die Gruppe erstellt, bekommt die Rolle Ersteller.
| Rolle | Darf |
|---|---|
| Ersteller | umbenennen, Gruppenbild setzen und entfernen, Mitglieder hinzufügen und entfernen, Moderatoren ernennen und zurückstufen, Eigentümerschaft übertragen, Gruppe für alle löschen |
| Moderator | Mitglieder entfernen |
| Mitglied | schreiben, Gruppe verlassen |
Der Ersteller ist unantastbar – er kann von niemandem entfernt werden und kann die Gruppe auch nicht selbst verlassen, weil sie sonst führungslos wäre. Wer aussteigen will, überträgt vorher die Eigentümerschaft oder löscht die Gruppe.
Rechte ohne Server durchsetzen
Abschnitt betitelt „Rechte ohne Server durchsetzen“Weil es keinen Server gibt, der Rechte prüft, prüft jedes Gerät beim Empfang selbst, ob der Absender die Rolle für diese Änderung hat:
- Eine Änderung an Name, Mitgliedern oder Rollen wird nur akzeptiert, wenn sie vom Ersteller kommt.
- Ein Rauswurf wird nur von Ersteller oder Moderator akzeptiert.
- Ein „Ich verlasse die Gruppe“ darf ausschließlich den Absender selbst entfernen.
Eine manipulierte App kann sich damit keine Rechte erschleichen. Sie kann Behauptungen senden – die anderen Geräte glauben sie einfach nicht.
Das Vertrauensmodell dahinter ist klar benannt: Man vertraut dem Ersteller der Gruppe. Seine Mitgliederliste ist die Wahrheit, an der sich alle ausrichten.
Verschlüsselung in Gruppen
Abschnitt betitelt „Verschlüsselung in Gruppen“Jedes Mitglied hat eine eigene Sender-Key-Kette. Diese Ketten werden über den normalen verschlüsselten 1:1-Kanal verteilt – auch dafür braucht es keinen Server.
Rotiert wird die eigene Kette in drei Fällen:
- nach jeweils 100 eigenen Nachrichten,
- zeitbasiert, damit eine wenig genutzte Kette nicht ewig steht,
- verpflichtend bei jedem Mitgliederwechsel.
Damit hat ein kompromittierter Kettenschlüssel ein begrenztes Zeitfenster, und wer die Gruppe verlässt oder entfernt wird, kann nichts Neues mehr mitlesen. Nach einer Rotation bleiben noch 16 Schlüssel der alten Kette gültig – sonst gingen Nachrichten verloren, die zum Zeitpunkt der Rotation schon unterwegs waren.
Der Inhalt selbst wird pro Mitglied einzeln verschlüsselt und über die Outbox mit einer eigenen Bestätigung je Empfänger zugestellt.
Wenn eine Kette fehlt
Abschnitt betitelt „Wenn eine Kette fehlt“Fehlt einem Mitglied unsere Senderkette, kann es die erste Nachricht in diese Lücke nicht öffnen und fordert die Kette an. Die Antwort enthält den aktuellen Kettenstand – eine frühere Iteration lässt sich daraus wegen Forward Secrecy nicht zurückrechnen.
Früher war die auslösende Nachricht damit verloren, und der Absender wiederholte bis zu 30-mal denselben Blob, den die Gegenseite nachweislich nie öffnen konnte. Heute wird alles Ausstehende für dieses Mitglied neu versiegelt: mit einer frischen Iteration, die es ableiten kann. Der alte Ciphertext bleibt dabei tot – es wird kein alter Kettenstand herausgegeben, sondern vorwärts versiegelt. Die Forward Secrecy bleibt unangetastet.
Zugestellt heißt: bei allen
Abschnitt betitelt „Zugestellt heißt: bei allen“Der Haken an einer Gruppennachricht erscheint erst, wenn alle Mitglieder bestätigt haben. Vorher setzte schon die erste Bestätigung irgendeines Mitglieds den Haken – das sah aus wie „alle haben es“ und verdeckte echte Verluste.
Die Folge ist ehrlich: In einer Gruppe mit einem dauerhaft offline Mitglied steht die eigene Nachricht länger auf „Wartet auf Zustellung“ als früher. Das ist die Wahrheit, kein Rückschritt.
Verlassen, entfernt werden, löschen
Abschnitt betitelt „Verlassen, entfernt werden, löschen“- Verlassen: Gruppe und Verlauf werden lokal aufgeräumt, alle Mitglieder werden informiert.
- Entfernt werden: Beim Entfernten wird ebenso vollständig aufgeräumt – Verlauf, Gruppenbild und Schlüsselmaterial.
- Löschen: Nur der Ersteller. Alle Mitglieder entfernen die Gruppe samt Verlauf und Schlüsselmaterial. Ältere Apps, die diesen Befehl nicht kennen, ignorieren ihn still und behalten die Gruppe lokal – Rückwärtskompatibilität geht hier vor.
Grenzen
Abschnitt betitelt „Grenzen“- Keine sehr großen Gruppen. Jede Nachricht wird pro Mitglied einzeln verschlüsselt und einzeln zugestellt. Das skaliert gut für Haushalte und Teams, nicht für hunderte Teilnehmer.
- Offline-Mitglieder werden über den Relay-Puffer bedient. Ohne Relay wartet die Nachricht, bis sich das Mitglied wieder zeigt.
- Der Ersteller ist ein Vertrauensanker. Er bestimmt, wer dazugehört.
