Transport Layer Security (TLS) ist ein kryptografisches Protokoll auf Layer 4 im OSI Modell zur Verschlüsselung, das in der Informationssicherheit verwendet wird, um eine sichere Kommunikation über ein Computernetzwerk zu gewährleisten. TLS ist eine Weiterentwicklung des Secure Sockets Layer (SSL)-Protokolls. TLS bietet eine verschlüsselte Verbindung zwischen einem Client und einem Server und schützt so vor Abhörangriffen und Manipulationen durch Dritte. TLS verwendet asymmetrische (public-key) und symmetrische (shared-key) Verschlüsselung, um die Sicherheit zu gewährleisten.
Der SSL/TLS-Handshake ist der erste Schritt, bei dem der Client und der Server die Parameter der sicheren Verbindung aushandeln. Dies umfasst die Auswahl einer Verschlüsselungsmethode, den Austausch von Verschlüsselungsschlüsseln und die Authentifizierung des Servers (optional auch des Clients). Der Handshake verwendet asymmetrische Verschlüsselung (Public-Key-Kryptografie), um die Kommunikation zu sichern.
Siehe z.B Diffie Hellman Key Exchange
Während des Handshakes tauschen der Client und der Server Informationen aus, um einen symmetrischen Sitzungsschlüssel zu generieren. Der symmetrische Schlüssel wird dann für die Verschlüsselung und Entschlüsselung der eigentlichen Datenübertragung verwendet. Dies ermöglicht eine effiziente Verschlüsselung und Entschlüsselung großer Datenmengen.
Sobald der Handshake abgeschlossen ist und der symmetrische Sitzungsschlüssel etabliert ist, können Daten sicher zwischen Client und Server übertragen werden. Die Daten werden mit symmetrischer Verschlüsselung verschlüsselt, um sicherzustellen, dass sie auf dem Übertragungsweg nicht abgefangen oder manipuliert werden. TLS bietet auch Integritätsschutz für die übertragenen Daten. Hierzu werden Hash-Algorithmen verwendet, die sicherstellen, dass die Daten während der Übertragung nicht manipuliert wurden.
TLS wird in einer Vielzahl von Anwendungen eingesetzt, um die Sicherheit der Datenübertragung zu gewährleisten. Dazu gehören:
STARTTLS ist ein Befehl, der in den Kommunikationsprotokollen SMTP (Simple Mail Transfer Protocol), IMAP (Internet Message Access Protocol) und POP (Post Office Protocol) verwendet wird, um eine sichere Verbindung für E-Mail-Kommunikation herzustellen. Der Befehl wird normalerweise verwendet, wenn der E-Mail-Server eine verschlüsselte Verbindung unterstützt, aber die Verbindung zunächst im Klartext (unverschlüsselt) gestartet wird. Sobald der STARTTLS-Befehl gesendet wird, wird die Verbindung auf eine verschlüsselte Verbindung aktualisiert.