Wie Vertrauen entsteht
Verschlüsselung ist der einfache Teil. Das schwierige Problem ist die Frage, mit wem man eigentlich verschlüsselt spricht. Zwei Systeme lösen das an verschiedenen Stellen: TLS für die Verbindung, DNSSEC für die Namensauflösung.
Was ein Zertifikat beweist
Abschnitt betitelt „Was ein Zertifikat beweist“Ein TLS-Zertifikat bestätigt, dass der öffentliche Schlüssel, den ein Server vorzeigt, zu genau diesem Namen gehört. Es sagt nichts darüber, ob die Website vertrauenswürdig ist, ob die Firma seriös ist oder ob die Inhalte stimmen. Es beantwortet eine einzige Frage: rede ich wirklich mit dem Namen, den ich aufgerufen habe.
Die Kette
Abschnitt betitelt „Die Kette“Ein Browser kennt nicht jedes Zertifikat, sondern nur eine Liste von Wurzelzertifikaten. Von dort führt eine Kette zum Serverzertifikat: die Wurzel unterschreibt ein Zwischenzertifikat, dieses unterschreibt das Zertifikat des Servers.
Der Server muss die Zwischenglieder mitschicken. Fehlen sie, funktioniert die Seite in einem Browser trotzdem, der das Glied zufällig zwischengespeichert hat, und schlägt in einem anderen fehl. Das ist die Ursache hinter den meisten Fehlern, die nur bei manchen Nutzern auftreten.
Was geprüft wird, bevor unterschrieben wird
Abschnitt betitelt „Was geprüft wird, bevor unterschrieben wird“Eine Zertifizierungsstelle stellt Zertifikate erst aus, nachdem sie etwas geprüft hat. Der Umfang dieser Prüfung ist der eigentliche Unterschied zwischen den Produkten:
Domain-Validierung (DV) prüft nur die Kontrolle über den Namen, meist über einen DNS-Eintrag oder eine Datei auf dem Server. Das geht in Minuten und ist automatisierbar.
Organisations-Validierung (OV) prüft zusätzlich die Existenz der Organisation anhand von Registerauszügen. Das dauert und braucht Menschen, dafür steht der Name der Organisation im Zertifikat.
Laufzeit und Widerruf
Abschnitt betitelt „Laufzeit und Widerruf“Zertifikate laufen ab, und die erlaubten Laufzeiten werden seit Jahren kürzer. Der Grund ist der schwache Punkt des Systems: Ein Widerruf vor Ablauf funktioniert nur, wenn die Gegenseite ihn auch abfragt, und das tut sie nicht zuverlässig. Eine kurze Laufzeit begrenzt den Schaden also wirksamer als ein Widerruf. Praktisch heißt das: Erneuerung gehört automatisiert, nicht in den Kalender.
Ein CAA-Record ist ein DNS-Eintrag, der festlegt, welche Zertifizierungsstellen für eine Domain überhaupt ausstellen dürfen. Er verhindert nicht, dass jemand ein Zertifikat beantragt, aber eine regelkonforme Stelle prüft ihn vor der Ausstellung und lehnt ab, wenn sie nicht aufgeführt ist.
TLS sichert die Verbindung, aber nicht den Weg dorthin. Wer eine gefälschte DNS-Antwort unterschiebt, lenkt den Aufruf auf einen fremden Server, bevor TLS überhaupt beginnt.
DNSSEC unterschreibt die DNS-Antworten. Jeder Eintrag bekommt eine Signatur, die mit dem Schlüssel der Zone gebildet wird, und die übergeordnete Ebene hinterlegt einen Fingerabdruck dieses Schlüssels, den DS-Eintrag. Damit entsteht eine Vertrauenskette von der Wurzel bis zur Domain, genau parallel zur Delegierung.
Wie das im dash abläuft, steht unter DNSSEC.