TLS (Transport Layer Security) ist ein Ver­schlüs­se­lungs­pro­to­koll, das für sichere Da­ten­über­tra­gun­gen im Internet sorgt. Es ist der Nach­fol­ger des ver­al­te­ten SSL und wird heute fast aus­schließ­lich in der Version TLS 1.3 ein­ge­setzt.

Was ist TLS?

In den Anfängen des Internets war Da­ten­si­cher­heit noch kein großes Thema. Die gesamte Kom­mu­ni­ka­ti­on wurde offen und un­ver­schlüs­selt über­tra­gen. Das kannst du dir wie eine Postkarte vor­stel­len: Jede Person, die sie in die Hand bekommt, kann den Inhalt mitlesen.

Das TLS-Protokoll – oft auch SSL/TLS genannt – hat die Ver­schlüs­se­lung der über­tra­ge­nen Inhalte ein­ge­führt. Um beim Vergleich zu bleiben: Diese Ver­schlüs­se­lung ist wie ein ver­sie­gel­ter Brief­um­schlag, den nur die recht­mä­ßi­gen Empfänger:innen öffnen können.

Die Abkürzung TLS steht für Transport Layer Security (Trans­port­schicht-Si­cher­heit). Dieser Name bezieht sich auf die „Trans­port­schicht“ im TCP/IP-Modell. TLS ist ein Verfahren, das Da­ten­strö­me im Web ver­schlüs­selt, damit sie vor neu­gie­ri­gen Blicken geschützt sind.

Hinweis

Früher hieß das Protokoll SSL (Secure Socket Layer). Da dieser Begriff noch immer sehr ver­brei­tet ist, nutzt man heute oft die Be­zeich­nung „SSL/TLS“.

Wie funk­tio­niert TLS?

TLS ver­schlüs­selt den gesamten Da­ten­ver­kehr, der über TCP läuft, mit einem sym­me­tri­schen Verfahren.

Was in der Theorie simpel klingt, ist technisch etwas komplexer. Die Her­aus­for­de­rung: Der Server muss dem Client den Schlüssel schicken, noch bevor die Leitung sicher ist. Das ist wie bei einem ver­schlüs­sel­ten Mail-Anhang, bei dem du das Passwort erst separat (z. B. te­le­fo­nisch) durch­ge­ben musst.

Das TLS-Protokoll (aktuell in der Version 1.3 seit 2018) löst das so:

  1. Cli­ent­Hel­lo: Dein Browser klopft beim Server an und über­mit­telt Infos zu un­ter­stütz­ten Ver­schlüs­se­lun­gen, Pro­to­koll­ver­sio­nen und einen zu­fäl­li­gen Wert für den Schlüs­sel­aus­tausch (ECDHE-Wert).
  2. Ser­ver­Hel­lo: Der Server wählt die passende Ver­schlüs­se­lung aus und antwortet mit seinem eigenen Wert sowie seinem digitalen Zer­ti­fi­kat. Dieses SSL-Zer­ti­fi­kat bestätigt die Identität des Servers. Nun wird der Sit­zungs­schlüs­sel berechnet.
  3. Schlüs­sel­be­rech­nung: Beide Seiten erstellen un­ab­hän­gig von­ein­an­der denselben Sit­zungs­schlüs­sel (Session Key) auf Basis der geteilten Daten.
  4. Die Ver­bin­dung steht: Der Server beendet den Handshake, und ab jetzt fließen die Daten voll­stän­dig gesichert hin und her.
Hinweis

In der Version 1.3 ist der TLS-Handshake deutlich schneller und sicherer. Der Ablauf benötigt nur noch eine einzige Hin- und Rück­über­tra­gung (1 RTT), was deine Website-Ver­bin­dung spürbar be­schleu­nigt.

Dass die asym­me­tri­sche Ver­schlüs­se­lung nur für den Austausch des Schlüs­sels genutzt wird, hat einen einfachen Grund: Sie ist re­chen­in­ten­siv. Für die ei­gent­li­chen Daten nutzt man das schnel­le­re sym­me­tri­sche Verfahren, damit alles glatt läuft.

Die Vor- und Nachteile von TLS

TLS ist eine smarte Lösung für mehr Si­cher­heit im Web. Das Beste daran: Du musst deine Daten (wie For­mu­lar­da­ten) nicht selbst ver­schlüs­seln. Das Protokoll übernimmt das au­to­ma­tisch im Hin­ter­grund, ganz egal, welches Be­triebs­sys­tem oder welche Software du nutzt.

Ein kleiner Wer­muts­trop­fen: Der Ver­bin­dungs­auf­bau dauert durch den Austausch von Zer­ti­fi­ka­ten und Schlüs­seln minimal länger, da dieser Vorgang Re­chen­leis­tung be­an­sprucht.

Ein­satz­ge­bie­te von TLS

Da TLS uni­ver­sell ein­setz­bar ist, gibt es für fast jedes Protokoll eine ge­si­cher­te Variante. Meist erkennst du das am an­ge­häng­ten „S“ für „Secure“.

Das be­kann­tes­te Beispiel ist das World Wide Web mit dem HTTP-Protokoll, das ver­schlüs­selt zu HTTPS wird.

Weitere wichtige Ein­satz­be­rei­che sind:

  • POP3S: Sicherer Mail-Abruf via POP3
  • IMAPS: Postfach-Syn­chro­ni­sa­ti­on via IMAP
  • SMTPS: Sicherer E-Mail-Versand
  • FTPS: Da­tei­trans­fer via FTP
  • SIPS: Ver­schlüs­sel­te IP-Telefonie (VoIP)
  • IRCS: Ab­ge­si­cher­te Chats
  • QUIC: Googles Trans­port­pro­to­koll mit in­te­grier­tem TLS 1.3 für Highspeed-Ver­bin­dun­gen (z. B. bei HTTP/3)

Auch OpenVPN, eine Lösung für Virtual Private Networks (VPN), setzt auf die Si­cher­heit von TLS.

Im­ple­men­tie­run­gen von TLS

Es gibt ver­schie­de­ne tech­ni­sche Um­set­zun­gen von TLS, darunter:

  • OpenSSL – der Standard für die meisten HTTPS-Seiten
  • GnuTLS (von der Free Software Foun­da­ti­on)
  • LibreSSL (von OpenBSD)
  • NSS (Network Security Services)
  • BoringSSL (die Variante von Google)
  • Rustls (moderne Im­ple­men­tie­rung der Open-Source-Community)
  • Botan (unter BSD-Lizenz)
  • JSSE (für Java-An­wen­dun­gen)
  • S2n (von Amazon)

Mehr Details zu den Un­ter­schie­den findest du in der eng­li­schen Wikipedia.

Bekannte Angriffe auf TLS

Keine Technik ist perfekt. Über die Jahre gab es ver­schie­de­ne Schwach­stel­len:

  • Pro­gram­mier­feh­ler: Der He­art­bleed-Bug (2014) in OpenSSL war einer der be­kann­tes­ten Fehler, ist aber längst behoben.
  • Schwache Ver­schlüs­se­lung: Früher gab es bewusst schwä­che­re Versionen für den Export, die einfacher zu knacken waren.
  • Kom­pres­si­ons­an­grif­fe: Hier versuchen Angreifer:innen, ver­schlüs­sel­te Inhalte durch sta­tis­ti­sche Verfahren zu erraten.
  • Veraltete Versionen: Angriffe wie BEAST (TLS 1.0) oder Padding-Oracle (SSL 3.0) sind bei modernen TLS 1.3-Ver­bin­dun­gen kein Thema mehr.
  • ALPACA-Angriff: Diese Methode aus 2021 nutzt falsch kon­fi­gu­rier­te Server aus, um Daten ab­zu­fan­gen oder User:innen um­zu­lei­ten.

Trotz dieser theo­re­ti­schen Gefahren gilt TLS 1.3 heute als extrem sicher und ist das Fundament für Sor­gen­frei­heit beim Surfen und Arbeiten im Web.

Zum Hauptmenü