Vier Schichten, und die letzte ist eine Ablehnung.
Jede davon ist etwas Eigenes, das scheitern kann, und jedes Scheitern beendet die Sitzung, statt sie schwächer fortzusetzen. Der ganze Entwurf steht in diesem Satz.
- Der Träger
Chiffretext auf der Leitung
Der Strom ist mit XSalsa20-Poly1305 versiegelt, unter einem Schlüssel, der nur für diese Sitzung vereinbart wurde. Ein Relay leitet Bytes weiter, die es nicht lesen kann, und hält keinen Schlüssel, der sie öffnet.
XSalsa20-Poly1305 - Der Beweis
Eine signierte Identität
Der Rendezvous-Server signiert die Identität jeder Gegenstelle mit einem Ed25519-Schlüssel. Der Client prüft diese Signatur gegen den in ihm einkompilierten öffentlichen Schlüssel und prüft dann, ob die Identität darin das Gerät ist, das du gewählt hast.
Ed25519 - Die Einigung
Ein Schlüssel je Sitzung
Erst wenn der Beweis hält, einigen sich beide Seiten auf den symmetrischen Schlüssel. Vor diesem Punkt geht kein Pixel, kein Tastendruck und keine Datei über die Leitung.
1 Schlüssel · 1 Sitzung - Die Ablehnung
Und kein Zweig, der weitermacht
Falscher Schlüssel, falsche Identität, falscher Nachrichtentyp, keine Antwort: der Client bricht ab. Es gibt keinen Weg, der auf Klartext zurückfällt — genau den Weg, auf den ein Angreifer zielen würde.
Die Sitzung wird abgelehnt
