Meine Frage bezieht sich auf Zertifikate speziell in ssl, aber ich denke, die Fragen sollten für alle Zertifikate gelten. Ich habe das SSL-Verfahren aus Gründen der Übersichtlichkeit eingefügt.SSL: Wie sind Zertifikate gegen Menschen in der Mitte Angriffe geschützt?
In SSL das ist, was ich verstehe, das Verfahren zu sein:
1) Client
- Sends unterstützten Verschlüsselungsalgorithmen
- sendet Client nonce
2) Server
- wählt (und sendet) ein
- symmetrischen Algorithmus
- ein öffentlicher Schlüsselalgorithmus
- ein MAC-Algorithmus
- sendet es Zertifikat des
- Server Nonce sendet
3) Kunde
- prüft Zertifikat
- Extracts öffentlichen Schlüssel
- Erzeugt eine pre-Master-Geheimschlüssel (pms)
- mit Servern öffentlichen Schlüssel verschlüsselt und sendet
4) Kunden und Server
- Rechen Master absondern (MS) von PMS und Nonces
- PMS in Scheiben geschnitten zwei Schlüssel-Verschlüsselung & zwei mac
5) Auftraggeber
- sendet einen Mac aller Handschläge zu erzeugen (sie, um sicherzustellen, nicht vorher modifide) waren
6) Server
- sendet einen Mac aller Handschläge
Frage
Was geschieht bei Schritt zwei einen Mann in der Mitte Angriff stoppt?Warum kann ein Mann in der Mitte nicht sagen, trudy, das vom Server gesendete Zertifikat erfassen und den öffentlichen Schlüssel darin ändern (zu etwas, zu dem es den privaten Schlüssel hat).
Ich gehe davon aus, dass das Zertifikat irgendwie verschlüsselt ist.
Jedoch kann der Server das Zertifikat nicht verschlüsselt werden, da der Client noch den öffentlichen Schlüssel nicht hat. Wenn der Server den Schlüssel von einer Autorität bekommt (wie ein Veri-Zeichen), würde der Schlüssel mit dem öffentlichen Schlüssel von verisign vorinklinkt werden? Ich denke, das sollte funktionieren, weil alle Webbrowser die öffentlichen Schlüssel der meisten Behörden haben sollten.
In Ausführliche Beschreibung, wie ssl (oder TLS) arbeitet für alle Interessierten: http://www.moserware.com/2009/06/first-few-milliseconds-of-https.html – sixtyfootersdude