E2E Verschlüsselung am Beispiel Signal: Wie wird das "Shared Secret" übertragen?

Hallo Zusammen,

vielleicht kann mir unter euch jemand etwas zum Thema E2E Verschlüsselung erklären:

Das Prinzip ist mir klar und wird auf der Signal-Seite auch toll erklärt. Mir stellt sich nur die Frage wie bei einem Messenger mit zentralem Server das „Shared Secret“ also der Kern der E2E Verschlüsselung übertragen wird. Geschieht das Peer-to-Peer zwischen den beiden Gesprächspartnern? Und wie ist das wenn einer der Gesprächspartner bei der Gesprächsaufnahme offline ist.

Ich habe verstanden dass es dafür ein Schlüsselaustauschprotokoll gibt. Aber ich verstehe irgendwie nicht wie es ganz plastisch funktioniert mit dem Austausch - den mit dem Shared Secret steht und fällt ja die E2E Verschlüsselung.

Danke für eure Hinweise :slight_smile:

Die genaue Funktionsweise des double ratchet Algorithmus mit dem shared secret key wird HIER explizit und bildlich erklärt.

5 „Gefällt mir“

und hier Probleme dazu:
https://www.kuketz-forum.de/t/whatsapp-signal-ende-zu-ende-verschluesselung-hintertuere/
https://www.kuketz-forum.de/t/messenger-matrix-uebersicht-vergleich-der-aktuellen-messenger/

Das „shared Secret“ wird ja nicht „ausgetauscht“ sondern auf beiden Seiten, also von beiden Partnern der E2EE-Kommunikation ausgerechnet.
Guck mal hier: DHM bei Wikipedia
Ausgetauscht werden nur Public Keys.
Das Verfahren ist so sicher, wie der Private Key sicher gespeichert ist.
Das Verfahren muss sicherstellen, dass aus dem Shared Secret nicht ein Private Key rückausgerechnet werden kann.
Das Verfahren erspart dir nicht die Authentisierung des jeweils anderen Publick Keys:
https://signal.org/docs/specifications/x3dh/#authentication
und
https://signal.org/docs/specifications/x3dh/#identity-binding

1 „Gefällt mir“

Vielen Dank für die hilfreichen Links und die Erkenntnis, dass das Shared Secret errechnet wird. Es will noch nicht so richtig in meinen Kopf, wie nur durch Errechnen zwei Gegenstellen sicher miteinander kommunizieren, aber langsam wächst das Verständnis der mathematischen Grundlage.

Der relevante Teil zum Errechnen des Shared Secret auf Wikipedia ist glaube dieser:
„In einem letzten Schritt mischen nun Alice und Bob die Farbmischung ihres Gegenübers mit ihrer eigenen geheimen Farbe. Daraus entsteht wiederum eine neue Farbe (im Beispiel Ockerbraun), die für beide Kommunikationspartner gleich ist (gelb + orange + türkis = gelb + türkis + orange = ockerbraun). Somit haben Alice und Bob eine gemeinsame geheime Farbe. Für Eve ist es unmöglich, diese herauszufinden, da sie Alices und Bobs geheime Farbzutaten nicht kennt.“ (https://de.wikipedia.org/wiki/Diffie-Hellman-Schlüsselaustausch#Veranschaulichung_der_Grundidee_anhand_gemischter_Farben)