Verschlüsselung für Anfänger
foo_on_air 10.09.2010 - 20:52 2101 4
foo_on_air
OC Addicted
|
Wie funktioniert Verschlüsselung und Authentifizierung ganz einfach erklärt? Hilft mir jemand dabei, die Bruchstücke, die ich weiß, zusammenzuführen? Asynchrone Verschlüsselung verwendet einen privaten und einen öffentlichen Schlüssel, die irgendwie mathematisch verrechnet sind  Autorisierte Trust Center ordnen einer Person ein Schlüsselpaar zu und beglaubigen, dass der Unterzeichner (der mit dem privaten Schlüssel) eine bestimmte Person ist. Angenommen, ein Anwender ruft eine Website auf oder öffnet z.B. ein PDF oder eine Email mit Zertifikat. Wie stellt das Programm fest, ob das Zertifikat gültig ist? Gültig hieße, dass der private Schlüssel, der zur Unterzeichnung des Dokuments verwendet wurde, mit dem öffentlichen Schlüssel verifiziert werden kann (und ggf. wird der Inhalt entschlüsselt, aber das ist für das Verständnis egal). [*] Wie erfolgt die Prüfung? Muss eine Internetverbindung existieren, über die bei einem Trust Center der öffentliche Schlüssel abgefragt wird? [*] Woher weiß der PC, welchen Trust Centers er vertrauen kann? [*] Stellt jedes Betriebssystem Schnittstellen zur Verfügung, mit denen Zertifikate und Trust Center verwaltet und abgerufen werden können? Oder gibt es standardisierte Protokolle und jeder Programmierer strickt das in seiner SW selbst?
|
watchout
Legendundead
|
Wie funktioniert Verschlüsselung und Authentifizierung ganz einfach erklärt?
Hilft mir jemand dabei, die Bruchstücke, die ich weiß, zusammenzuführen?
Asynchrone Verschlüsselung verwendet einen privaten und einen öffentlichen Schlüssel, die irgendwie mathematisch verrechnet sind 
Autorisierte Trust Center ordnen einer Person ein Schlüsselpaar zu und beglaubigen, dass der Unterzeichner (der mit dem privaten Schlüssel) eine bestimmte Person ist.
Angenommen, ein Anwender ruft eine Website auf oder öffnet z.B. ein PDF oder eine Email mit Zertifikat. Wie stellt das Programm fest, ob das Zertifikat gültig ist?
Gültig hieße, dass der private Schlüssel, der zur Unterzeichnung des Dokuments verwendet wurde, mit dem öffentlichen Schlüssel verifiziert werden kann (und ggf. wird der Inhalt entschlüsselt, aber das ist für das Verständnis egal).
[*] Wie erfolgt die Prüfung? Muss eine Internetverbindung existieren, über die bei einem Trust Center der öffentliche Schlüssel abgefragt wird?
[*] Woher weiß der PC, welchen Trust Centers er vertrauen kann?
[*] Stellt jedes Betriebssystem Schnittstellen zur Verfügung, mit denen Zertifikate und Trust Center verwaltet und abgerufen werden können? Oder gibt es standardisierte Protokolle und jeder Programmierer strickt das in seiner SW selbst? Naja, ich glaub es ist wenig sinnvoll wenn ich http://de.wikipedia.org/wiki/Pretty_Good_Privacy neu schreib, also erstmal der Link dort hin  Du vermischt hier etwas PGP und Zertifikate glaub ich. Ein Zertifikat ist mit dem Public Key einer CA (Certificate Authority) verschlüsselt und enthält unter anderem meistens einen weiteren public key. Nachdem das Zertifikat verschlüsselt ist, ist mehr oder weniger sicher gestellt dass es von der CA ausgestellt wurde, wenn man der CA vertraut hat man eine Vertrauenskette. Man kann damit also sagen dieses Zertifikat ist echt. Wenn dann ein Name drin steht, kann man sagen dass eine Message die verschlüsselt mit dem Zertifikat signiert ist von dieser Person kommt. Zertifikate und CAs sind also ein Mittel zum Austausch von Public Keys und zum Aufbau einer Vertrauenskette Programme/Frameworks haben normal eine vordefinierte Liste an CAs (die auch erweiterbar ist), es definiert also der Entwickler des verwendeten Programms wem man vertrauen kann. Die Liste kann man - mehr oder weniger einfach - auch bearbeiten und erweitern. Praktisch für große Firmen, da man damit eine interne CA bauen kann. (Die entsprechend billig ist  ) Wenn du das Zertifikat vom Sender, den Public Key von dessen CA (Die beiden werden meist vom Verschlüsselungsprogramm verwaltet) und die Nachricht hast, brauchst du keine Verbindung ins Internet. Soo, ich hoff ich hab da jetzt nichts falsch geschrieben  Siehe auch: http://de.wikipedia.org/wiki/Digitales_Zertifikathttp://de.wikipedia.org/wiki/Public_Key_Infrastrukturversus http://de.wikipedia.org/wiki/Web_of_TrustDas Thema is riesig, vielleicht solltest du auch deine Fragen noch genauer stellen
|
Guest
Deleted User
|
Schrittlänge messen; 90 hast du bestimmt nicht; meine 91 sind für meine 1,87m schon verdammt viel.
ASYMMETRISCH!!!!!!
|
foo_on_air
OC Addicted
|
Das Thema is riesig, vielleicht solltest du auch deine Fragen noch genauer stellen  Deswegen wußte ich nicht, wie ich es angehen soll  Ich les mich in die Links ein. edit: Ich habe gleich noch eine. Wenn ich im Internet eine Banking Seite ansurfe, zeigt mir der Browser an, dass sie sicher ist. So ein grünes Hakerl erscheint, das anscheinend bedeutet, dass das Zertifikat gültig ist und evtl. dass der Datentransfer verschlüsselt wird. Haben die Programmierer vom Firefox die CA integriert, die das Zertifikat der Seite verwaltet und abgefragt, während ich die Seite besucht hab? Oder wenn ich ein Programm herunterlade, zeigt Windows manchmal einen Hinweis für das Zertifikat an. Erfolgt eine Prüfung im Hintergrund bzw. über das Internet mit der CA? @deleted875824: Recht hast du. Hab beim Schreiben was durcheinander gebracht.
Bearbeitet von foo_on_air am 11.09.2010, 20:31
|
watchout
Legendundead
|
Ich habe gleich noch eine. Wenn ich im Internet eine Banking Seite ansurfe, zeigt mir der Browser an, dass sie sicher ist. So ein grünes Hakerl erscheint, das anscheinend bedeutet, dass das Zertifikat gültig ist und evtl. dass der Datentransfer verschlüsselt wird. Haben die Programmierer vom Firefox die CA integriert, die das Zertifikat der Seite verwaltet und abgefragt, während ich die Seite besucht hab? Wenn du eine HTTPS-Seite ansurfst wird schon bei der Verbindung ein Zertifikat übertragen (jetzt mal grob gesagt) Wenn du was siehst, wurde es entschlüsselt, wenn es entschlüsselt wurde ist das Zertifikat eigentlich gültig (die CA signiert das Zertifikat, vertraut man der CA- also hat man den Schlüssel installiert - ist auch keine weitere Aktion notwendig. Manchmal bekommt man eine Fehlermeldung dass der Aussteller unbekannt ist oder dass es ein self-signed Zertifikat ist, da muss man halt entscheiden ob man dem vertraut oder nicht - bei einer Bank würd ich das zB. nicht machen  ) Was das grüne Hakerl (Meistens is es aber eher ein Schloss-Symbol) genau bedeutet kommt jetzt auf den Browser an, beim Firefox schaut das seit 3.irgendwas wie folgt aus (Nein, ich hab mit der Bank Austria nichts zu tun, waren einfach die ersten die mir so einfielen) Man sieht da die unterschiedlichen Farben, das grüne ist laut der Zertifikat-Verkäufer das "bessere", in der Verschlüsselung selbst ist da aber eigentlich kein Unterschied, die Käufer müssen nur mehr Daten angeben, mehr blechen und bekommen dafür etwas mehr Versicherung und ein grünes Feld mit Firmen-Namen statt einem blauen nur mit der Domain... Bei einer Bank würd ich mir aber eigentlich auch schon ein grünes erwarten (*hust* Bawag naja), das sollt's ihnen Wert sein... Oder wenn ich ein Programm herunterlade, zeigt Windows manchmal einen Hinweis für das Zertifikat an. Erfolgt eine Prüfung im Hintergrund bzw. über das Internet mit der CA? Treiber werden von Microsoft signiert, wie das genau abläuft weiß ich nicht, war bisher noch nicht in der Situation einen Treiber zu schreiben  Die CA wird in dem Fall aber wahrscheinlich Microsoft sein, eine Internetverbindung ist dabei nicht notwendig, weil Windows - auch sehr wahrscheinlich - den public key von Microsoft schon kennt, also sollte eine Verifizierung ohne Probleme möglich sein. Kanns aber auch nicht sicher sagen, weiß ja nicht was MS da macht
|