Hallo Leute,
Hab mich gerade etwas mit der Ende zu Ende Verschlüsselung von
verschiedenen Diensten(Beispielsweise WhatsApp) beschäftigt.
Wenn ich es richtig verstanden habe, haben Sender und Empfänger ja einen
Verschlüsselungscode und somit kann niemand (zumindest theoretisch)
nicht einmal Whatsapp selber die gesendeten Nachrichten entschlüsseln.
Soweit so klar. Aber wo bekommen Sender und Empfänger diesen
Verschlüsselungscode her ? Beide brauchen ja den selben Code um die
jeweilige Nachricht zu entschlüsseln. Wenn dieser vom WhatsApp-Server
kommt bringt das ganze ja nichts weil dann kennt WhatsApp ja den
Entschlüsselungscode. Selbst Wenn der Verschlüsselungscode zu Beginn
einer Konversation nur einmal übertragen wird bringt es ja nichts, wird
der mit abgefangen ist ja alles weitere hinfällig. Habe ich da irgendwie
einen Denkfehler ?
Habe mir einiges dazu angeguckt aber auf dieses „Problem“ wird
irgendwie nie eingegangen. Mir geht es ganz allgemein um dieses Problem
also jetzt nicht speziell und WhatsApp. Kann mir das einer erklären?
In der Regel muss es einen Schlüssel zwischen beiden
Kommunikationspartnern geben. Damit dieser Schlüssel nicht zu einfach
erraten werden kann, wir ein zufällig ermittelter Session-Schlüssel
verschlüsselt zwischen beiden übertragen.
Für die Übertragung des anfänglichen Schlüssels zwischen beiden Partner
gibt es verschiedene Verfahren. Diffie-Hellman z.b. erlaubt den
Austausch zwischen 2 Partner, der komplett öffentlich stattfinden kann
(https://de.wikipedia.org/wiki/Diffie-Hellman-Schlüsselaustausch). Am
Ende haben dann aber trotzdem beide ein gemeinsames Geheimnis. Häufig
wird bei soetwas auch asymmetrische Verschlüsselungen eingesetzt, wo es
einen private und einen öffentlichen Schlüssel gibt. Kennst Du den
öffentlichen Schlüssel eines Partners, kannst Du ihm eine verschlüsselte
Nachricht schicken, die dann nur derjenige Entschlüsse kann, der den
privaten Schlüssel kennt-
Wenn Dich soetwas interessiert, würde ich Dir dieses Buch empfehlen:
https://www.schneier.com/books/applied-cryptography/
Wenn ein Programm, wie hier Whatsapp die Schlüssel für dich erzeugt,
dann kann es die auch weitergeben an den Hersteller oder sonstige
Dritte.
Ich finde also Programme nur dann vertrauenswürdig wenn man da selbst
den Schlüssel oder das Schlüsselpaar übergeben kann. Z. B. E-Mail mit
PGP.
Aber das wird sich nicht durchsetzen, dann das ist weniger bequem. Leute
müssten ihrem Kommunikationspartner erstmal den Schlüssel auf anderem
Wege schicken oder auf Schlüsselserver hochladen. Das ist zwar alles
machbar, sind nur wenige Klicks, aber das ist der Mehrheit zu unbequem.
Gustl B. schrieb:> Aber das wird sich nicht durchsetzen, dann das ist weniger bequem. Leute> müssten ihrem Kommunikationspartner erstmal den Schlüssel auf anderem> Wege schicken oder auf Schlüsselserver hochladen. Das ist zwar alles> machbar, sind nur wenige Klicks, aber das ist der Mehrheit zu unbequem.
Und auch absolut unnötig, das kann man bei wichtigen Business Mails
machen, bei privaten "Ich bin in 3min da, Schatz" ist das einfach
paranoid.
Gustl B. schrieb:> ch finde also Programme nur dann vertrauenswürdig wenn man da selbst den> Schlüssel oder das Schlüsselpaar übergeben kann. Z. B. E-Mail mit PGP.
Haha, good joke!
Und das Programm gibt den von dir sorgfältig generierten Schlüssel
einfach unbemerkt weiter...
Genauso kann die App die empfangenen entschlüsselten Daten an den Server
(zurück)schicken, wäre aber wohl zu auffällig.
Hier aus den AGB:
1
"Du teilst deine Informationen, wenn du unsere Dienste nutzt und über sie kommunizierst, und wir teilen deine Informationen, damit wir unsere Dienste betreiben, anbieten, verbessern, verstehen, individualisieren, unterstützen und vermarkten können."
Im Klartext: Whatsapp darf jede Nachricht einsehen und verarbeiten.
1
"Als Teil der Facebook-Unternehmen erhält WhatsApp Informationen (siehe hier) von den Facebook-Unternehmen und teilt auch Informationen mit diesen. Wir können mithilfe der von ihnen erhaltenen Informationen und sie können mithilfe der Informationen, die wir mit ihnen teilen, unsere Dienste bzw. ihre Angebote, einschließlich der Produkte von Facebook-Unternehmen, betreiben, bereitstellen, verbessern, verstehen, individualisieren, unterstützen und vermarkten. Dazu gehört: [...]"
Peter schrieb:> Aber wo bekommen Sender und Empfänger diesen> Verschlüsselungscode her ?
Unabhängig davon, welche Verfahren ein Anbieter nun genau implementiert
hat, in der Welt der Verschlüsselung gibt es so genannte
"Schlüssel-Austausch-Verfahren".
Der Kern ist, das zwei Teilnehmer einen gemeinsamen Schlüssel errechnen
können, den nur die beiden kennen und ein potentieller Mithörer nicht
abhören kann. Das funktioniert mit Mathematik so wie alles in der
Verschlüsselungswelt.
D.h. obwohl jemand mithört/mitliest, können zwei Teilnehmer über eine
unsichere Leitung, einen gemeinsamen Schlüssel erzeugen, obwohl sie sich
beide nie getroffen haben.
Ein Problem bleibt aber noch: Die beiden Teilnehmer wissen nicht sicher,
mit wem sie gesprochen haben. Ein Angreifer könnte in der Mitte sitzen,
und mit beiden jeweils einen eigenen Schlüsselaustausch machen.
Damit man das erkennt, gibt es noch die dritte Komponente in der
Verschlüsselungstechnik: Die Authentifizierung. D.h. irgendein Beweis,
das jemand auch wirklich der ist, den er vorgibt zu sein.
https://de.wikipedia.org/wiki/Diffie-Hellman-Schl%C3%BCsselaustausch
Aber das funktioniert nur wenn Sender und Empfänger miteinander sprechen
können.
Systeme, wo Nachrichten asynchron übermittelt werden (z.B. E-Mail oder
Messenger-Dienste) brauchen einen anderen Mechanismus.