Cryptography Reference
In-Depth Information
Berechnung der Schlüssel für die Sicherung der Datenübertragung in den nach dem SSL-
Handshake übermittelten SSL-Records.
Server
Client
Client Hello (ID, RND1, CipherSuite)
Server Hello (ID, RND2, CipherSuite)
Certificate
Certificate Request
Hello Done
Certificate
ClientKeyExchange (
Enc PubKey Server
)
Certificate Verify (
Enc PrivKey Client
)
ChangeCiperSpec/Finished (
Enc SessionKey
)
Abb. 6-7: Zwischen Client und
Server ausgetauschte Nachrich-
ten im SSL-Handshake
ChangeCiperSpec/Finished
(Enc SessionKey
)
Beim SSL-Handshake wird, wie in Abb. 6-7 dargestellt, der öffentliche Signaturschlüssel
PubKey Server des Servers zum Verschlüsseln der ClientKeyExchange -Nachricht vom Client
eingesetzt. Der dafür benötigte öffentliche Schlüssel des Servers kann vom Client aus dem
zuvor übermittelten Server-Zertifikat ( Certificate -Nachricht) entnommen werden (Kap. 6.1).
Nur der Server, der im Besitz des passenden privaten Schlüssels ist, kann die ClientKeyEx-
change -Nachricht des Clients entschlüsseln. Diese Nachricht enthält wichtige Informationen
zur Initialisierung der Transportverschlüsselung ( Pre-Master-Secret ). Das Pre-Master-Secret
besteht aus einer 46-Byte langen Zufallszahl und zwei Byte Versionsnummer. Beide Seiten
kennen den Wert der Zufallszahl nach Austausch der ClientKeyExchange -Nachricht, obwohl
das Pre-Master-Secret nie im Klartext übermittelt wurde und somit von einem Angreifer auch
nicht abgefangen werden kann. Aus dem Pre-Master-Secret berechnen der Client und der
Server mit Hilfe der Hashfunktionen SHA-1 und MD5 das 48-Byte Master-Secret . Eine Kom-
bination beider Hashfunktionen schafft dabei eine höhere Sicherheit vor Angriffen aufgrund
einer kompromittierten Hashfunktion. Das nur dem Client und dem Server bekannte Master-
Secret ist dann die Grundlage, um folgende Schlüssel für die Transportsicherung abzuleiten:
Verschlüsselungsschlüssel SessionKey
Search WWH ::




Custom Search