Terran Marine Geschrieben 28. Juli 2003 Geschrieben 28. Juli 2003 Nabend, ich hatte mich neulich für die Technik von https bzw. ssl interessiert und bin dabei auf diese Seite gestossen : http://www.4secure.de/was_ist_ssl.htm Nun wird das http ja durch das SSL durchgetunnelt, dabei kommt eine asynchrone Verschlüsslung zum Einsatz (Public/Private Key). Für die Kommunikation zum Server hin benutzt der Browser den öffentlichen Schlüssel des Webservers (diesen hat er aus dem Zertifikat). Nur mit welchem Schlüssel verschlüsselt der Webserver die Daten die zum Client hingehen ? Eine einfache Antwort wäre, mit dem öffentlichen Schlüssel des Users, nur hat afaik doch nicht jeder automatisch einen (X,509 ?) Schlüssel ? Gruß Terran Marine
egoist Geschrieben 29. Juli 2003 Geschrieben 29. Juli 2003 es ist eigentlich eine Hybride Verschlüsselung! Es wird der Schlüsselaustausch assynchron betrieben und der eigentliche Datenaustausch synchron verschlüsselt!
Terran Marine Geschrieben 29. Juli 2003 Autor Geschrieben 29. Juli 2003 Original geschrieben von egoist es ist eigentlich eine Hybride Verschlüsselung! Es wird der Schlüsselaustausch assynchron betrieben und der eigentliche Datenaustausch synchron verschlüsselt! Ist klar, aber woher hat der Browser sein Schlüsselpaar ? Gruß Terran Marine
nic_power Geschrieben 29. Juli 2003 Geschrieben 29. Juli 2003 Hallo, welches Schlüsselpaar meinst Du denn? Der Browser benötigt im ersten Schritt nur den öffentlichen Schlüssel des Web-Servers und das dazugehörende Zertifikat. Das Zertifikat ist mit dem öffentlichen Key der Zertifizierungsinstanz (beispielsweise Verisign) signiert. Damit kann der Browser die Gültigkeit überprüfen und den Session-Key aushandeln. Eine ausführliche Beschreibung findest Du unter dem folgenden URL: http://developer.netscape.com/tech/security/ssl/howitworks.html Nic
Terran Marine Geschrieben 29. Juli 2003 Autor Geschrieben 29. Juli 2003 Original geschrieben von nic_power Hallo, welches Schlüsselpaar meinst Du denn? Vielleicht ist ja mein Grundsatzgedanke zur asynchronen Verschlüsslung schon falsch, ich bin bisher davon ausgegangen, das bei einer verschüsselten Kommunikation zwischen zwei Hosts, die Nachrichten immer mit dem öffentlichen Schlüssel des Partner verschüsselt werden. Host A hat also einen öffentlichen Schlüssel und einen privaten Schlüssel Host B hat ebenfalls einen öffentlichen Schlüssel und einen privaten Schlüssel Verschickt Host A nun eine Nachricht an Host B wird diese mit dem öffentlichen Schlüssel von Host B verschlüsselt, damit nur Host B diese Nachricht mit seinem privaten Schlüssel lesen kann. Und umgekehrt läuft das ganze genauso. Kommen wir wieder zu unserem SSL - Beispiel, wo ebenfalls eine asynchrone Verschlüsselung eingesetzt wird, dort ist Host B der Webserver und Host A ein Rechner bzw. der Browser. Wo sind die Schlüssel von Host A ? Selbst wenn die Verschlüsslung synchron abläuft, müssen zum Aushandeln, dieses Schlüssels beide Paare vorhanden sein. Gruß Terran Marine
egoist Geschrieben 29. Juli 2003 Geschrieben 29. Juli 2003 villeicht hilft dir das! Quelle: http://www.ssl.de/ssl.html Das SSL-Protokoll wird dadurch initiiert, dass dem bekannten http ein s angehängt wird. Das ist für den Browser der Anlaß, vom angesprochenen Server ein Zertifikat und seinen öffentlichen Schlüssel abzufordern. Dieser Schlüssel wird zusammen mit einer Prüfsumme und einer ID an den Browser zurückgemeldet. Diese Informationen werden von einigen wenigen Zertifizierungsfirmen errechnet. Der Browser prüft anhand der übermittelten Daten, ob er wirklich mit dem Server verbunden ist, der in der URL angegeben ist. Ist das der Fall, gibt der Browser dem Anwender eine entsprechende Information In der folgenden Phase verständigen sich die beiden Rechner auf einen symetrischen Schlüssel (Session Key). Da diese Absprache in asymetrischer Verschlüsselung vollzogen wird, ist die Sicherheit gegeben. Der Browser schickt dem Server vor dem Beginn des eigentlichen Datenaustausches einige Testnachrichten, die der Server nur beantworten kann, wenn es wirklich der Server ist, der er zu sein vorgibt.
TschiTschi Geschrieben 29. Juli 2003 Geschrieben 29. Juli 2003 Original geschrieben von Terran Marine Vielleicht ist ja mein Grundsatzgedanke zur asynchronen Verschlüsslung schon falsch, ich bin bisher davon ausgegangen, das bei einer verschüsselten Kommunikation zwischen zwei Hosts, die Nachrichten immer mit dem öffentlichen Schlüssel des Partner verschüsselt werden. Richtig, Dein Verständnis ist falsch! Der Session Key (symmetrisch) wird vom Client generiert und dem Server mit seinem öffentlichen Schlüssel verschlüsselt mitgeteilt. Daher benötigt der Server den öffentlichen Schlüssel vom Client nicht! GG
nic_power Geschrieben 29. Juli 2003 Geschrieben 29. Juli 2003 Hallo, @egoist: Hast Du mal den Text hinter dem ersten Link von Terran Marine gelesen? Der ist identisch mit dem von Dir geposteten. Nic
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden