OpenSSL Perfect Forward Secrecy

· Funktionen
OpenSSL Perfect Forward Secrecy

Ab sgcWebSockets 4.4.8 gibt es kleine Änderungen in der Bibliothek, um die Sicherheit der Verbindungen zu verbessern. Eine davon ist Perfect Forward Secrecy

Wenn du den RSA-Schlüsselaustauschmechanismus verwendest, entsteht eine Verknüpfung zwischen dem Schlüsselpaar des Servers und dem Session-Key, der für jede einzelne sichere Sitzung erzeugt wird. Wenn ein Angreifer also jemals den Private Key des Servers in die Hände bekommt, kann er deine SSL-Sitzung und alle gespeicherten SSL-Sitzungen entschlüsseln.

Wenn du dagegen Perfect Forward Secrecy (PFS) aktivierst, gibt es keine Verknüpfung zwischen dem Private Key des Servers und den einzelnen Session-Keys. Selbst wenn ein Angreifer Zugriff auf den Private Key deines Servers erhält, kann er damit keine deiner archivierten Sitzungen entschlüsseln – deshalb heißt das Verfahren "Perfect Forward Secrecy".


Perfect Forward Secrecy aktivieren 

Um Perfect Forward Secrecy für TLS-1.2-Verbindungen zu aktivieren, schalte einfach die folgende Eigenschaft ein:

SSLOptions.OpenSSL_Options.ECDHE := True;

Das aktiviert ECDHE für TLS-1.2-Verbindungen, wenn du die openSSL-1.0.2-Bibliotheken verwendest (bei 1.1.1 ist ECDHE standardmäßig aktiv). Wenn ECDHE aktiviert ist, übergibt die Bibliothek der openSSL-Bibliothek eine Liste von Ciphern mit hoher Sicherheit.

Wenn du einen Sicherheitstest auf der Online-Seite https://entrust.ssllabs.com/ durchführst, bekommst du nach dem Aktivieren von ECDHE auf deinem Server ein sicheres Ergebnis.

Der Server, der die Tests bestand, nutzte openSSL 1.1.1 und erlaubt TLS 1.2 und TLS 1.3; ECDHE war ebenfalls aktiviert.