Sichere Kryptographie ohne Vorkenntnisse
Rachus
- programmiertechnik
0 Novi0 Jens Holzkämper
Hallo liebe Community!
Mir stellt sich die Frage, ob eine sichere Kryptographie zwischen zwei Gesprächspartnern (z.B. im Internet) möglich ist, ohne dass sie gemeinsame Informationen besitzen (wie z.B. bei SSL/TLS Zertifikate).
Der eigentliche Datenaustausch findet anscheinend meistens auf Basis eines symmetrischen Verschlüsselungsverfahrens statt. Doch hierfür benötigen beide Parteien einen gemeinsamen geheimen Schlüssel. Dieser wiederum kann mit dem Diffie-Hellman-Schlüsselaustausch übertragen werden. Doch was, wenn ein Man-In-The-Middle angreift? Dann funktioniert das ganze nicht mehr. Als Sicherung dafür werden digitale Signaturen oder Message Authentication Codes vorgeschlagen. Erstere benötigen jedoch wieder beidseitig bekannte Zertifikate und zweiter einen beidseitig bekannten geheimen Schlüssel. Damit wäre man wieder beim Problem des sicheren Schlüsselaustausches.
Gibt es denn überhaupt eine Möglichkeit, ohne irgendwelche gemeinsamen Daten eine gesicherte Datenverbindung aufzubauen, die auch vor einem Man-In-The-Middle-Angriff sicher ist?
Würde mich freuen, wenn ihr mich aufklären könntet.
Schönen Abend!
Hallo,
Gibt es denn überhaupt eine Möglichkeit, ohne irgendwelche gemeinsamen Daten eine gesicherte Datenverbindung aufzubauen, die auch vor einem Man-In-The-Middle-Angriff sicher ist?
Du musst deinen Gesprächspartner erkennen können, um einen Man-In-The-Middle-Angriff abwehren zu können. Also braucht du Informationen über den Gesprächspartner. Diese können sogar wie bei einem Öffentlichen Schlüssel frei zugänglich sein. Jedoch muss gewährleistet werden, dass du den richtigen öffentlichen Schlüssel besitzt.
Viele Grüße Novi
Tach,
Gibt es denn überhaupt eine Möglichkeit, ohne irgendwelche gemeinsamen Daten eine gesicherte Datenverbindung aufzubauen, die auch vor einem Man-In-The-Middle-Angriff sicher ist?
Du musst deinen Gesprächspartner erkennen können, um einen Man-In-The-Middle-Angriff abwehren zu können. Also braucht du Informationen über den Gesprächspartner. Diese können sogar wie bei einem Öffentlichen Schlüssel frei zugänglich sein. Jedoch muss gewährleistet werden, dass du den richtigen öffentlichen Schlüssel besitzt.
meist passiert das heutzutage indem man einer (oder halt 1500) externen Quelle vertraut, diesen Zusammenhang hergestellt zu haben.
mfg
Woodfighter
Hallo,
danke für eure Antworten!
meist passiert das heutzutage indem man einer (oder halt 1500) externen Quelle vertraut, diesen Zusammenhang hergestellt zu haben.
genau das wollte ich eben vermeiden. Bei einer Verbindung zwischen zwei Parteien müssen die beiden es doch irgendwie schaffen, ohne eine dritte Partei einen Schlüsselaustausch durchzuführen.
Du musst deinen Gesprächspartner erkennen können, um einen Man-In-The-Middle-Angriff abwehren zu können. Also braucht du Informationen über den Gesprächspartner. Diese können sogar wie bei einem Öffentlichen Schlüssel frei zugänglich sein. Jedoch muss gewährleistet werden, dass du den richtigen öffentlichen Schlüssel besitzt.
Würde es hier denn reichen, wenn man die IP-Adresse des Gesprächspartners (praktisch als eindeutige Identifikation und öffentlicher Schlüssel) kennt, wenn man einmal davon ausgeht, dass man sicher die richtige IP-Adresse hat und das IP-Protokoll keine weiteren Schwachstellen hat? Nur gibt es hier nicht dann das Problem, dass man keinen privaten Schlüssel hat, der mit der IP-Adresse "verbunden" ist? Soweit es mir bekannt ist, wird der öffentliche Schlüssel ja aus dem privaten Schlüssel erstellt. Andersherum soll es ja eben nicht (in absehbarer Zeit) funktionieren.
Also muss man wohl in jedem Falle so oder so vorher einen öffentlichen Schlüssel übertragen, wenn man einmal von Zertifikaten (die ich ja eben vermeiden will) absieht.
Schöne Grüße!
meist passiert das heutzutage indem man einer (oder halt 1500) externen Quelle vertraut, diesen Zusammenhang hergestellt zu haben.
genau das wollte ich eben vermeiden.
Meinst du dann in etwa sowas?:
http://de.wikipedia.org/wiki/Diffie-Hellman-Schl%C3%BCsselaustausch
Das geht dann eben auch ohne externe Quelle. Aber bei einem man in the middle Angriff, der die Daten auch verändern kann, hilft - wenn überhaupt - nur Quanktenkryptographie weiter.
Tach,
Meinst du dann in etwa sowas?:
http://de.wikipedia.org/wiki/Diffie-Hellman-SchlüsselaustauschDas geht dann eben auch ohne externe Quelle.
wie aus dem Wikipedia-Artikel hervorgeht, kann Diffie-Hellman das Problem der Authentifizierung nicht lösen.
Aber bei einem man in the middle Angriff, der die Daten auch verändern kann, hilft - wenn überhaupt - nur Quanktenkryptographie weiter.
Auch Quantenkryptographie verbessert nur die Verschlüsselung (indem sie nicht mehr darauf basiert, dass gewisse Probleme schwer zu lösen sind, sofern P!=NP) und sollte theoretisch Abhörsicherheit bringen, d.h. man kann erkennen, wenn versucht wird den Datenstrom mitzulesen (oder auch nicht http://www.heise.de/newsticker/meldung/Abhoersicheres-System-abgehoert-1262992.html, https://events.ccc.de/congress/2009/Fahrplan/events/3576.en.html).
mfg
Woodfighter
Tach,
genau das wollte ich eben vermeiden. Bei einer Verbindung zwischen zwei Parteien müssen die beiden es doch irgendwie schaffen, ohne eine dritte Partei einen Schlüsselaustausch durchzuführen.
nur, wenn sie gegenseitig sicherstellen können, mit dem richtigen Partner zu kommunizieren.
Würde es hier denn reichen, wenn man die IP-Adresse des Gesprächspartners (praktisch als eindeutige Identifikation und öffentlicher Schlüssel) kennt, wenn man einmal davon ausgeht, dass man sicher die richtige IP-Adresse hat und das IP-Protokoll keine weiteren Schwachstellen hat?
Nein, IP ist viel zu unsicher dafür, ein MitM, der Diffie-Hellman angreifen (also Daten verändern) kann, kann auch in beide Richtungen IPs vortäuschen.
mfg
Woodfighter
Hallo,
Du musst deinen Gesprächspartner erkennen können, um einen Man-In-The-Middle-Angriff abwehren zu können. Also braucht du Informationen über den Gesprächspartner. Diese können sogar wie bei einem Öffentlichen Schlüssel frei zugänglich sein. Jedoch muss gewährleistet werden, dass du den richtigen öffentlichen Schlüssel besitzt.
Würde es hier denn reichen, wenn man die IP-Adresse des Gesprächspartners (praktisch als eindeutige Identifikation und öffentlicher Schlüssel) kennt, wenn man einmal davon ausgeht, dass man sicher die richtige IP-Adresse hat und das IP-Protokoll keine weiteren Schwachstellen hat? Nur gibt es hier nicht dann das Problem, dass man keinen privaten Schlüssel hat, der mit der IP-Adresse "verbunden" ist? Soweit es mir bekannt ist, wird der öffentliche Schlüssel ja aus dem privaten Schlüssel erstellt. Andersherum soll es ja eben nicht (in absehbarer Zeit) funktionieren.
Außerdem wäre die IP-Adresse allein schon wegen der Länge als öffentlicher Schlüssel ungeeignet. Aber selbst wenn wir mal annehmen, dass es gehen würde, hilft es dir nicht weiter. Denn woher willst du die IP kennen. Dafür brauchst du auch eine dritte Stelle. Ob du nun die IP gleich als öffentlichen Schlüssel nutzt oder zusätzlich noch einen öffentlichen Schlüssel abrufst, ändert doch am Grundproblem nichts: Du brauchst Informationen über den Gesprächspartner, die du von einer dritten Stelle beziehen musst.
Also muss man wohl in jedem Falle so oder so vorher einen öffentlichen Schlüssel übertragen, wenn man einmal von Zertifikaten (die ich ja eben vermeiden will) absieht.
Eine bessere Lösung scheint es nicht zu geben.
Schöne Grüße!
Viele Grüße Novi
Hallo,
also bleibt zusammenfassend zu sagen, dass man einfach irgendeine Information des Gesprächspartners braucht, die man am besten persönlich abklärt, damit im digitalen Datenverkehr keine Schwachstelle bestehen bleibt?
Nun gut, damit wäre meine Frage beantwortet!
Vielen Dank!
Schöne Grüße!
Die Überlegung ist eigentlich ganz einfach.
Bei einer Verbindung zwischen zwei Parteien müssen die beiden es doch irgendwie schaffen, ohne eine dritte Partei einen Schlüsselaustausch durchzuführen.
Das würde der man in the middle dann aber genauso schaffen. Ohne was über den am anderen Ende zu wissen, kannst du auch nicht sicherstellen dass er derjenige ist mit dem du kommunizierst.