TLS Verbindungsaufbau mit Diffie-Hellman

Aus xinux.net
Zur Navigation springen Zur Suche springen
Client Hello
  • Der Client sendet eine „Client Hello“-Nachricht mit der Protokollversion, dem Client Random und einer Liste von Cipher Suites.w
Server Hello
  • Der Server antwortet mit seinem SSL-Zertifikat, seiner ausgewählten Cipher Suite und dem Server Random.
  • Server wählt eine Cipher Suite aus der Liste aus, die sowohl vom Client als auch vom Server unterstützt wird und die den höchsten gemeinsamen Sicherheitsstandard bietet.
Authentifizierung
  • Der Client überprüft das SSL-Zertifikat des Servers bei der Zertifizierungsstelle, die es ausgestellt hat.
  • Dieser Vorgang bestätigt, dass der Server der ist, der er vorgibt zu sein, und dass der Client mit dem tatsächlichen Eigentümer der Domain interagiert.
Die digitale Signatur des Servers
  • Der Server berechnet eine digitale Signatur aller Nachrichten bis zu diesem Punkt.
  • Das bedeutet einen Hash auf alle Nachrichten und diese werden verschlüsselt mit dem privaten Schlüssel des Servers
  • Dies wird an den Client geschickt.
Digitale Signatur bestätigt
  • Der Client berechnet eine digitale Signatur aller Nachrichten bis zu diesem Punkt.
  • Das bedeutet Hash auf alle Nachrichten.
  • Der Client entschlüsselt die digitale Signature des Servers.
  • Dann vergleicht er den eigenen gebildeten Hash mit diesem Wert.
  • Stimmen sie überein, ist der Server derjenige der er vorgibt zu sein.
Client-DH-Parameter
  • Der Client sendet seinen DH-Parameter an den Server.
Client und Server berechnen Premaster Secret
  • Client und Server die von ihnen ausgetauschten DH-Parameter, um ein passendes Premaster Secret separat zu berechnen.
Sitzungsschlüssel werden erstellt
  • Nun berechnen Client und Server den Sitzungsschlüssel aus dem Premaster Secret, dem Client Random und dem Server Random.
Client ist bereit
  • Der Client sendet eine „Fertig“-Nachricht, die mit einem Sitzungsschlüssel verschlüsselt ist, der mithilfe der DH-Parameter und des Premaster Secrets erstellt wurde.
Server ist bereit
  • Der Server sendet eine „Fertig“-Nachricht, die ebenfalls mit dem gleichen Sitzungsschlüssel verschlüsselt ist, der zuvor durch die DH-Parameter und das Premaster Secret erzeugt wurde.
Sichere symmetrische Verschlüsselung erfolgreich
  • Der Handshake ist abgeschlossen, und die Kommunikation wird mit den generierten Sitzungsschlüsseln fortgesetzt, wobei Diffie-Hellman die Grundlage für die Sicherheit der Schlüsselvereinbarung bildet.