Ein Handshake ist ein einleitender Austausch von Nachrichten zwischen zwei Geräten oder Programmen, um eine Verbindung aufzubauen und Parameter abzustimmen. Er dient meist der Authentifizierung, dem Schlüsselaustausch und der Festlegung von Verschlüsselungsarten oder Kommunikationsregeln.

Typische Funktionen eines Handshakes

  • Verbindungsanfrage und -annahme
  • Verhandlung von Protokollversionen und Optionen
  • Schlüsselaustausch zur Verschlüsselung
  • Überprüfung der Identität (z. B. per Passwort oder Zertifikat)

Beispiele

  • WLAN (WPA2/WPA3): 4-Wege-Handshake (WPA2) oder SAE-Handshake (WPA3)
  • TLS/SSL: TLS-Handshake zur Aushandlung verschlüsselter HTTPS-Verbindungen
  • Bluetooth: Geräte erkennen und bestätigen sich gegenseitig

Warum ist der Handshake wichtig?

  • Sichert die Kommunikation vor unbefugtem Zugriff
  • Legt alle Verbindungsparameter vor dem Datentransfer fest
  • Stellt sicher, dass beide Parteien kompatibel sind

Angriffsrisiken

  • Man-in-the-Middle: Angreifer schleusen sich zwischen zwei Parteien
  • Replay-Angriffe: Wiederholung eines aufgezeichneten Handshakes
  • Brute-Force auf PSK: bei unsicherem WLAN-Handshake (z. B. WPA2 ohne SAE)

Siehe auch