TLS - Verwendung von Transport Layer Security

Empfehlungen und Schlüssellängen (TR-02102-2)

Transport Layer Security (TLS), früher bekannt als Secure Socket Layer (SSL), ermöglicht die sichere Übertragung von Informationen aus der Anwendungsschicht (zum Beispiel HTTPS, FTPS oder IMAPS) über TCP/IP-basierte Verbindungen (insbesondere das Internet).

Bevor Daten übertragen werden können, muss zunächst eine gesicherte Verbindung zwischen den beiden Verbindungspartnern (Client und Server) aufgebaut werden. Dieser Vorgang heißt Handshake und ist ein wichtiger Bestandteil des TLS-Protokolls. Hierbei werden zwischen Client und Server vereinbart:

  1. Kryptographische Verfahren für die Verschlüsselung, Integritätssicherung, Schlüsseleinigung und ggf. für die (ein- oder beidseitige) Authentisierung. Diese Verfahren werden durch sogenannte Cipher-Suiten und weitere kryptographische Parameter festgelegt (siehe Abschnitte 3.3 und 3.4).
  2. Ein gemeinsames Geheimnis, das master secret. Aus diesem werden von beiden Verbindungspartnern die Sitzungsschlüssel für den Integritätsschutz und die Verschlüsselung abgeleitet.

SSL/TLS-Versionen

Das SSL-Protokoll existiert in den Versionen 1.0, 2.0 und 3.0, wobei die Version 1.0 nicht veröffentlicht wurde. TLS 1.0 ist eine direkte Weiterentwicklung von SSL 3.0 und wird in [RFC2246] spezifiziert. Des Weiteren gibt es die TLS-Versionen 1.1, 1.2 und 1.3, welche in [RFC4346], [RFC5246] und [RFC8446] spezifiziert werden.

Empfehlungen für die Wahl der TLS-Version sind:

  • Grundsätzlich werden TLS 1.2 und TLS 1.3 empfohlen.
  • TLS 1.0 und TLS 1.1 werden nicht empfohlen (siehe auch Abschnitt 3.3.1.4).
  • SSL v2 ([SSLv2]) und SSL v3 ([SSLv3]) werden nicht empfohlen (siehe auch [RFC6176] und [RFC7568]).

Weiter zur Technischen Richtlinie TR-02102-2