Wie funktioniert Verschlüsselung ?

Blutschlumpf

Fleet Admiral
Registriert
März 2001
Beiträge
20.668
Ich les hier gerade in nem Linux-Training-Guide wie Daten angeblich mittels SSH verschlüsselt werden.
Nur versteht ichs nicht. Ich geh jetzt mal von 3 Rechnern aus, die noch nix voneinander wissen, aber vernetzt sind.
Rechner A will sich einloggen.
Rechner B ist der Server.
Rechner C ist der Sniffer/Hacker/Faker/was auch immer

Hier lese ich, dass A bei der Anmeldung einen öffentlichen Key nach B sendet.
B sendet eine Antwort verschlüsselt mit diesem Key zurück.
A entschlüsselt die Nachricht mit einem 2. (nur ihm bekannten) Key.
Dann soll die Verbindung schon fertig sein.

Nur verstehe ich jetzt nicht im entferntesten, warum das
1. funktionieren soll
2. schon ne Verbindung darstellen soll

Den letzten Punkt verstehe ich nicht.
1. Wie kann ich mit nem ganz anderen Key entschlüsseln als mit dem, der zum Verschlüsseln diente, bzw. was hat Rechner A denn davon ?
2. So wie ich das sehe, erfährt C erst den öffentlichen Key und kann dann die Nachricht von B entschlüsseln.
Da B den 2. geheimen Key ja auch nicht kennt, weiß C genau so viel wie B.
3. Woher weiß A denn, ob die Nachricht wirklich von B stammt und nicht gefaked von C kommt ?

Wusste nicht in welche Kategorie ichs posten sollte, betrifft hier zwar Linux, das Problem ist aber mehr ein allgemeines.
 
Also mir ist eines unklar (und diese Frage konnte ich bei dir nicht rauslesen):

"Hier lese ich, dass A bei der Anmeldung einen öffentlichen Key nach B sendet.
B sendet eine Antwort verschlüsselt mit diesem Key zurück.
A entschlüsselt die Nachricht mit einem 2. (nur ihm bekannten) Key."

Wieso weiß denn nun A wie man die Nachricht von B entschlüsselt, aber C nicht !? Angeblich ist der Key nur A bekannt, aber wie soll dann B wissen wie man verschlüsseln soll, wenn nicht mit dem Key, den er von A erhält. Und den hätte C ja auch...
 
Das ist ja auch eins meiner Probleme, dass C ja geanu so viel weiß wie B und ich mir selbst prinzipiell nicht vorstellen kann, dass es überhaupt möglich ist, jemandem Daten sicher zukommen zu lassen ohne dass man vorher auf A und B nen Key hat, den C nicht kennt.
 
Warst Du mal beim Bund Blutschlumpf? Funktioniert vereinfacht dargestellt genauso wie das Funken.

Woher weiß der Kommandeur das wirklich sein Kompaniechef ihn angefunkt hat und nicht der Feind?

Ganz einfach. Authentifizieren!

Der Kompaniechef hat ein bestimmtes Kennwort (Rufname) den er durch einen nur ihm und dem Kommandeur verschlüsseltes Wirrwarr durchgibt.

z.B.
Kommandeur: Authentifizieren sie sich durch den 3 Buchstaben.
(angenommen der Rufname ist BLAUFISCH, also der 3. Buchstabe ist ein A)
Kompaniechef: Nimmt seine Tabelle und schaut in welchem Planquadrat ein A ist.
Dann gibt er durch: Victor 3 (das ist in der Tabelle ein A)
Kommandeur schaut nach und sieht, das es stimmt. Nun weiß er, das dies sein Kompaniechef ist.

So ähnlich funktioniert es auch mit den Computern.
Entscheident ist nicht der öffentliche Schlüssel, sondern der Schlüssel den nur beide kennen. Diesen Schlüssel sollte man daher auch niemals online weitergeben, sondern nur auf Disk o.ä. und dann installieren.
 
Genau da liegt der Knackpunkt.

Du hast 2 frische Rechner, keiner weiß irgendwas vom anderen, aber du kannst dich trotzdem auf dem anderen einloggen.

Es gibt ja noch nix zum authentifizieren !

"Entscheident ist nicht der öffentliche Schlüssel, sondern der Schlüssel den nur beide kennen."

Vor der Verbindung gibts ja genau diesen Schlüssel nicht. Ich will ja wissen, wie die an den kommen.
 
So wie Du es beschreibst geht es nicht.
Bei PGP wird ja zum bsp. ein geheimer Schlüssel erzeugt, der dann auf dem anderen Rechner implementiert werden muß.
Der zweite Rechner MUSS im Besitz des Geheimen-, nicht öffentlichen Schlüsselpaares sein.
 
Und wie soll das denn praktisch funktionieren ?
Ist ja schließlich scheinbar möglich, hab mir SSH ja nicht ausgedacht, das gibts ja wirklich.
 
Ich bin mir nicht sicher ob ich dein problem richtig verstanden habe aber prinzipiell gibts kein problem.
A erhält eine verschlüsselte nachricht von B, B selber kann diese nur verschlüseln, es ist nicht notwendig daß B seine eigene nachricht entschlüsseln kann, das muß nur A können, mit einem geheimen key den nur A kennt.
D.h. B verschlüsselt mit dem öffentlichen key nach einem bestimmten algorithmus, und A entschlüsselt mit einem anderen key und logischerweise anderen algorithmus.
Ich bin zwar mathematisch noch nicht soweit daß ich codierungstheorie hab, aber z.b. können zwei äußerlich völlig verschiedene matrizen im endeffekt ein-und-dasselbe bewirken.
Ganz einfaches beispiel: A sendet als key 2, B verschlüsselt mit 2*3+2=8, und A entschlüsselt mit: 8/4 , oder 8*2-14 ...

Wenn das nicht die antwort ist die du wolltest schreib einfach nochmal.

SirMcSpider425
 
Da seh ich auch kein Problem, aber wenn C den öffentlichen Key hat, dann kann C auch die Nachricht von B entschlüsseln, denn es muss ja nach nem bestimmten vorgegebenen Mechanismus verschlüsselt werden, da A und B den Verschlüsselungsmechanismus ja nicht untereinander abstimmen können (bzw selbst wenn, dann würde C das ja auch mitbekommen). Man kann ja den verschlüsselungweg einfach umkehren. Somit sind wir wieder am Angangspunkt C kennt alle Infos, die auch B hat.
Nächstes Problem wäre: Woher nimmt A seine Schlüssel, denn um mit dem 2. Schlüssel die mit dem 1. kodierten Infos dekodieren zu können, müssen beide Schlüssel voneinader Abhängig sein. Somit könnte C den 2. (privaten) Schlüssel ja vom 1. ableiten.

Also schon 2 Wege um die Verbindung zu knacken (ich sollte Hacker werden :D)
 
B sendet A den verschluesslungs-schluessel..A verschluesselt und nur B kennt den anderen schluessel zum ENTschluesseln....A kann nicht entschluesseln was er verschluesselt hat :)

so hats ein freund mir erklaert :)
 
Ja so gesehen schon, aber es ist ja nicht gesagt daß der kram nachdem A wieder entschlüsselt hat, wieder das ausgansmaterial rauskommt.
Somit könnte C (vorrausgesetzt C kennt den encoderalgorithmus) zwar vielleicht die ursprungsanfrage hearusbekommen, aber dies ist völlig uninteressant wenn das was rauskommen soll was komplett anderes ist.
So super kenn ich mich mit dem kram auch nich aus, aber so könnte es hinhaun.
Beim SSH gibts ja auch regeln und bestimmte festgelegte formen die eingehalten werden müssen damits überhaupt funktioniert.
Schick die frage doch mal an die sendung mit der maus, wäre sicher interessant ;)

SirMcSpider425
 
Ob die Zuschauer der "Senung mit der Maus" sich dafür interressieren wage ich stark zu bezweifeln, die wollen wissen, wie die Marmelade in den Berliner kommt.

@Stan: Dein Weg ändert eigentlich nix an den Problemen
 
Zurück
Oben