Zum Hauptinhalt springen
lila Hexagonmuster

Das wichtigste Protokoll für die Datenübertragung zwischen einem Webbrowser und einer Website ist das Hypertext-Transfer-Protokoll (HTTP). HTTPS verwendet TLS (Transport Layer Security) zur Verschlüsselung von HTTP-Anfragen und -Antworten und ist damit eine sichere Version (daher das "S") desselben Protokolls. Es wird in verschiedenen Anwendungen wie Kontoanmeldungen, E-Commerce und Webmail-Anwendungen verwendet, um nur einige zu nennen.

HINWEIS: TLS-Zertifikate werden oft als TLS/SSL-Zertifikate bezeichnet.

Wie funktioniert HTTPS? (Grundlagen)

HTTPS ist eine Implementierung der TLS-Verschlüsselung auf dem HTTP-Protokoll. Wenn ein Benutzer eine Website besucht, die HTTPS unterstützt, erhält er daher die folgenden Sicherheitsvorteile:

  • Authentifizierung: Hilft, die Identität der Website zu überprüfen. Wenn zum Beispiel in der Browserleiste https://www.entrust.com angezeigt wird, können Sie sicher sein, dass sie der Entrust Corporation gehört.
  • Verschlüsselung: Verbirgt die in Übertragung befindlichen Daten vor Dritten.
  • Integrität: Überprüft, ob die Daten nicht verfälscht wurden.
Was bewirkt HTTPS?

Warum ist die Authentifizierung bei HTTPS so wichtig?

Die Authentifizierung einer Website ist wichtig, da sie es dem Besucher ermöglicht, die Identität und die Eigentümerschaft einer Website zu überprüfen, und ihm hilft, zwischen einer echten Website und einer möglicherweise gefälschten oder betrügerischen Website zu unterscheiden.

Ein Website-Besucher kann durch verschiedene Angriffsvektoren wie DNS-Poisoning, Malware oder Phishing-Seiten auf einer falschen Website landen.

Die Zuordnung einer Identität zu einer Website wird in der Regel von einer Drittorganisation wie einer Zertifizierungsstelle (CA) vorgenommen, die strenge Branchenrichtlinien befolgt.

Wie funktioniert die Identität bei HTTPS?

Ein Webbrowser, der eine Verbindung zu einer Website herstellt, verwendet ein TLS/SSL-Zertifikat, das von einer Zertifizierungsstelle wie Entrust ausgestellt wurde, um sich bei einer HTTPS-Website zu authentifizieren.

Anforderung eines TLS/SSL-Zertifikats

Um einer Website einen Identitätsnachweis hinzuzufügen, muss ein TLS/SSL-Zertifikat vom Eigentümer der Website angefordert und von einer öffentlich vertrauenswürdigen Certificate Authority wie Entrust ausgestellt werden. Ein TLS/SSL-Zertifikat ist vergleichbar mit einem digitalen Reisepass für ein Unternehmen, da es verifizierte Angaben enthält wie z. B.:

  • Website-URL(s)
  • Die Organisation, der die Website gehört
  • Datum der Ausstellung und des Ablaufs des Zertifikats
  • Der Name der Zertifizierungsstelle, die das Zertifikat ausgestellt hat
  • Der öffentliche Schlüssel (für die Verschlüsselung von Daten)

Um ein TLS/SSL-Zertifikat zu erhalten, muss der Inhaber einer Website die folgenden Schritte durchlaufen:

  1. Generieren einer Zertifikatsignierungsanforderung (CSR), die ein öffentliches/privates Schlüsselpaar enthält
  2. Nachweis an die Zertifizierungsstelle, dass sie die Kontrolle über die in das TLS/SSL-Zertifikat aufzunehmenden Domains haben
  3. Nachweis der Identität der Organisation und der Berechtigung zur Beantragung eines TLS/SSL-Zertifikats im Namen der Organisation

Nach Abschluss des Prüfverfahrens wird das TLS/SSL-Zertifikat ausgestellt und kann dann vom Website-Besitzer auf den entsprechenden Websites installiert werden. Das TLS/SSL-Zertifikat wird dann jedes Mal angezeigt, wenn ein Website-Besucher über https:// eine Verbindung zu einer Website-URL herstellt.

Wie eine Website ihre Identität mit Website-Besuchern teilt

Wenn ein Website-Besucher eine HTTPS-Website aufruft, wird seinem Webbrowser eine Kopie des TLS/SSL-Zertifikats übermittelt. Wenn Sie auf das Vorhängeschloss-Symbol auf der linken Seite der URL-Leiste klicken und dann Verbindung ist sicher und Zertifikat ist gültig auswählen, wird ein Website-Zertifikat angezeigt, das der nachstehenden Abbildung ähnelt.

Zertifikat – Allgemeine Informationen zum Zertifikat

Ein Website-Besucher kann die Registerkarte Details öffnen, um weitere Informationen über die Organisation zu erhalten, die Eigentümer der Website ist, ähnlich wie in der folgenden Abbildung dargestellt.

Zertifikatsdetails – Subjekt

Details zum SSL-Zertifikat für entrust.com

Wenn das Zertifikat die Unternehmensdaten des Website-Besitzers (Firmenname, Standort) enthält, handelt es sich entweder um ein Zertifikat mit erweiterter Validierung (EV) oder ein Zertifikat mit Unternehmensvalidierung (OV).

 

Wie ein Browser ein TLS/SSL-Zertifikat überprüft

Ein Browser führt eine Reihe von Überprüfungen durch, um zu verifizieren, ob das von der Website vorgelegte TLS/SSL-Zertifikat korrekt und rechtmäßig ist. Der Browser zeigt Folgendes:

  1. Überprüfen der digitalen Signatur der Zertifizierungsstelle, um sicherzustellen, dass das Zertifikat von einer Zertifizierungsstelle im vertrauenswürdigen Root Store des Browsers ausgestellt wurde
  2. Überprüfen, ob die Domain im SSL-Zertifikat mit der Domain der Website übereinstimmt, auf die der Besucher der Website zugreift
  3. Überprüfen, ob das SSL-Zertifikat gültig ist und nicht abgelaufen ist oder widerrufen wurde

Nach Abschluss dieser Prüfungen zeigt der Browser des Website-Besuchers https:// und ein Vorhängeschloss-Symbol vor der URL der Website an.

Die nachstehende Abbildung zeigt, dass das Zertifikat der Website von Entrust ausgestellt wurde und dass es eine digitale Signatur von Entrust enthält, mit der der Browser des Website-Besuchers überprüfen kann, ob das Zertifikat gültig ist und von Entrust ausgestellt wurde.

Zertifikatsdetails – Signaturalgorithmus

Digitale Signatur auf einem SSL-Zertifikat, ausgestellt von der Entrust Certification Authority

Root Stores

Um das TLS/SSL-Zertifikat einer Website verifizieren zu können, benötigt ein Browser eine Kopie des öffentlichen Schlüssels der Zertifizierungsstelle, der im Root Store des Browsers gespeichert ist.

Ein Root Store enthält die digitalen Zertifikate und die zugehörigen öffentlichen Schlüssel aller Zertifizierungsstellen, denen er vertraut.

Zertifizierungspfad

Zertifizierungspfad für das SSL-Zertifikat von Entrust.com

  1. Das oberste Zertifikat ist das Root-Zertifikat. Es ist im Root Store des Browsers vorinstalliert.
  2. Das mittlere Zertifikat ist das Zwischenzertifikat. Es ist von der Stammzertifizierungsstelle digital signiert, so dass der Browser ihm ebenfalls vertraut. Der Browser verifiziert die Signatur mit dem öffentlichen Schlüssel von Entrust aus dem vorgeladenen Stammzertifikat.
  3. Das unterste Zertifikat ist das Zertifikat der Endeinheit und ist das TLS/SSL-Zertifikat von Entrust, das vom Webserver gesendet wird, wenn der Browser sich mit der Website verbindet. Der Browser kann das Endeinheitzertifikat mit Hilfe der digitalen Signatur des Zwischenzertifikats überprüfen.

Wie funktioniert die Verschlüsselung in HTTPS?

Auf jeder HTTPS-Website, auf der ein Besucher Informationen eingibt (Kreditkartendaten, Anmeldedaten, Ausfüllen eines Formulars usw.), verschlüsselt der Browser die Daten mit dem öffentlichen Schlüssel des TLS/SSL-Zertifikats der Website, bevor die Daten vom Browser an den Server gesendet werden.

Bei der Verschlüsselung werden die Daten während der Übertragung verschlüsselt, so dass sie nur von autorisierten Parteien gelesen werden können. Bei der Verschlüsselung wird also ein für den Menschen lesbarer Klartext in einen unverständlichen Chiffretext übersetzt.

Die Verschlüsselung lässt die Daten scheinbar zufällig erscheinen, verschlüsselte Daten folgen jedoch einem logischen und vorhersehbaren Muster. Allerdings muss die Website, die die Daten empfängt, über den richtigen privaten Schlüssel verfügen, um die Daten zu entschlüsseln.

Ver- und Entschlüsselungsprozess

Allgemeine Übersicht über den Verschlüsselungs- und Entschlüsselungsprozess

Was ist ein Schlüssel in der Kryptografie?

Ein kryptografischer Schlüssel ist eine Zeichenfolge, die in einem Verschlüsselungsalgorithmus verwendet wird, um die Klartextdaten so zu verändern, dass sie zufällig erscheinen. Der kryptografische Schlüssel wird zum Ver- und Entschlüsseln der Daten verwendet.

Was sind die verschiedenen Arten der Verschlüsselung?

Es gibt zwei Hauptarten der Verschlüsselung:

Symmetrische Verschlüsselung

Bei der symmetrischen Verschlüsselung gibt es nur einen Schlüssel, der von allen Kommunikations­teilnehmern zum Ver- und Entschlüsseln der Kommunikation verwendet und gemeinsam genutzt wird. Die symmetrische Verschlüsselung ist zwar schneller als die asymmetrische, aber aufgrund der Komplexität, die mit der sicheren Verteilung des Schlüssels verbunden ist, keine skalierbare Form der Verschlüsselung.

Symmetrische Verschlüsselung

Asymmetrische Verschlüsselung

Die asymmetrische Verschlüsselung (auch bekannt als Public-Key-Verschlüsselung oder öffentlicher Schlüssel) umfasst zwei separate Schlüssel. Ein Schlüssel (der öffentliche Schlüssel) ist für jeden zugänglich und wird zur Verschlüsselung verwendet. Ein zweiter Schlüssel (der private Schlüssel) wird vom Empfänger sicher aufbewahrt und für die Entschlüsselung verwendet. Die asymmetrische Verschlüsselung ist langsamer als die symmetrische Verschlüsselung, aber die Verteilung der Schlüssel auf mehrere Benutzer ist einfacher.

Asymmetrische Verschlüsselung

Was ist ein Verschlüsselungsalgorithmus?

Ein Verschlüsselungsalgorithmus ist die Methode, die Klartext in Chiffretext umwandelt. Klartext wird in Chiffretext umgewandelt, wenn ein Verschlüsselungsalgorithmus die Daten auf vorhersehbare Weise mit Hilfe eines privaten Schlüssels verändert. Dadurch kann der verschlüsselte Text mit Hilfe eines Entschlüsselungsschlüssels wieder in Klartext umgewandelt werden.

Beliebte symmetrische Verschlüsselungsalgorithmen sind:

  • AES
  • 3-DES
  • SNOW

Beliebte asymmetrische Verschlüsselungsalgorithmen sind:

  • RSA
  • Elliptische-Kurven-Kryptografie (ECC)

Was ist der TLS/SSL-Handshake?

Eine TLS-Verbindung wird durch eine Sequenz gestartet, die oft als TLS/SSL-Handshake bezeichnet wird. Dieser Prozess wird gestartet, wenn ein Website-Besucher eine Website öffnet, die ein TLS/SSL-Zertifikat verwendet. Der Prozess beginnt zwischen dem Gerät des Nutzers und der Website, mit der er sich verbindet.

TLS/SSL-Handshake

Schritte 1-2: „Hello“-Nachricht und Festlegung der Cipher Suites

Der Browser des Website-Besuchers und der Webserver senden ihre „Hello“-Nachrichten und vereinbaren, welche Cipher Suites (Verschlüsselungsalgorithmen) zu verwenden sind.

Schritte 3-4: Zertifikat- und Schlüsselaustausch

Der Webserver sendet eine Kopie seines TLS/SSL-Zertifikats und Zwischenzertifikats zusammen mit dem öffentlichen Schlüssel an den Browser des Website-Besuchers. Der Browser des Website-Besuchers prüft die Gültigkeit des TLS/SSL-Zertifikats anhand seiner digitalen Signatur und des Stammzertifikats im Zertifikatsstammspeicher des Browsers.

Schritt 5: „Server Hello“ erfolgreich

Wenn alle Prüfungen des Browsers bestanden sind, wird ein sicherer Einweg-Kommunikationskanal zwischen dem Browser und dem Webserver aufgebaut.

Schritte 6-10: Client-Schlüsselaustausch und Änderung der Chiffrierspezifikation

Der Webbrowser und der Webserver wechseln von der asymmetrischen Verschlüsselung zur symmetrischen Verschlüsselung, indem sie einen neuen gemeinsamen Verschlüsselungsschlüssel einrichten und den sicheren Einweg-Kommunikationskanal verwenden, da dieser schneller und effizienter ist. Wie dieser gemeinsame Sitzungsschlüssel erstellt wird, hängt von der Chiffre­sammlung ab, die nach der Aushandlung der Chiffresammlung in Schritt 2 vereinbart wurde.

Nachdem der Sitzungsschlüssel generiert wurde, ist der TLS-Handshake-Prozess abgeschlossen, und der Webbrowser und der Webserver verwenden den Sitzungsschlüssel, um alle ausgetauschten Daten zu ver- und entschlüsseln.