Certificate Transparency: wie öffentliche Logs Zertifikate sichtbar machen
Certificate Transparency (CT) ist ein System öffentlicher Logs, in die Zertifizierungsstellen ihre TLS-Zertifikate eintragen. Die Logs wachsen nur an, Einträge werden nie gelöscht, und jeder kann sie lesen. So fallen falsch ausgestellte Zertifikate auf, und Browser wie Chrome akzeptieren öffentliche Zertifikate nur noch mit Nachweis eines Logeintrags.

Zertifizierungsstellen stellen jeden Tag sehr viele Zertifikate aus. Lange konnte niemand von außen sehen, ob darunter eines für eine fremde Domain war. Certificate Transparency macht diese Ausstellungen öffentlich und prüfbar. Das Verfahren haben Ben Laurie, Adam Langley und Emilia Kasper von Google im Juni 2013 als RFC 6962 beschrieben [1]. Die Version 2.0 steht seit Dezember 2021 in RFC 9162, das RFC 6962 ablöst. Beide sind als experimentell eingestuft [1, 2].
Wie ein CT-Log funktioniert
Ein Log ist ein Merkle-Baum, in dem jedes Zertifikat ein Blatt bildet. Neue Einträge werden nur angehängt [1]. Über die Hashwerte im Baum lässt sich nachweisen, dass eine neuere Fassung des Logs alle älteren Einträge enthält. Ein Log, das verschiedenen Prüfern verschiedene Inhalte zeigt, fällt dadurch auf [1].
Reicht eine Zertifizierungsstelle ein Zertifikat ein, bekommt sie sofort einen Signed Certificate Timestamp, kurz SCT. Damit verspricht das Log, das Zertifikat innerhalb einer festen Frist aufzunehmen [1]. Der Server liefert mindestens einen SCT mit dem Zertifikat aus, entweder im Zertifikat selbst, über eine TLS-Erweiterung oder über OCSP Stapling [1].
Wer die Logs prüft
RFC 6962 unterscheidet zwei Rollen. Monitore beobachten die Logs laufend und suchen nach Zertifikaten, die sie interessieren, etwa für die eigenen Domains. Auditoren prüfen, ob die Logs sich korrekt verhalten und ob ein bestimmtes Zertifikat wirklich darin steht [1]. Als Betreiber einer Website bist du in der Rolle des Monitors, wenn du nachsiehst, welche Zertifikate für deine Domain existieren.
Was Chrome verlangt
Chrome prüft öffentliche Zertifikate gegen eine eigene CT-Richtlinie. Bei SCTs im Zertifikat braucht ein Zertifikat mit bis zu 180 Tagen Laufzeit Einträge aus mindestens zwei verschiedenen Logs, bei längerer Laufzeit aus drei. Mindestens zwei davon müssen von verschiedenen Logbetreibern stammen [3]. Erfüllt ein Zertifikat das nicht, lehnt Chrome es ab [3]. Für dich heißt das: Jedes öffentlich vertrauenswürdige Zertifikat, das ein Besucher in Chrome ohne Warnung sieht, steht in öffentlichen Logs.
Folgen für Subdomains
Weil die Logs alle Namen im Zertifikat enthalten, werden damit auch Subdomains bekannt, etwa test.beispiel.de oder intern.beispiel.de. Genau das nutzt der Subdomain-Finder: Er fragt über die Suchmaschine crt.sh die Logs ab und listet jede Subdomain, für die es ein öffentliches Zertifikat gab. Der SSL-Check zeigt die zuletzt ausgestellten Zertifikate einer Domain. Wer interne Namen nicht preisgeben will, kann ein Wildcard-Zertifikat verwenden, dann steht nur *.beispiel.de im Log. Welche Stelle überhaupt für deine Domain ausstellen darf, legst du mit einem CAA-Eintrag fest. Wie Angreifer öffentliche Informationen über Firmen sammeln, beschreibt Social Engineering auf betrug.domain-root.de.

- Gesetz RFC 6962: Certificate Transparency. IETF. Stand Juni 2013. abgerufen am 29.10.2026
- Gesetz RFC 9162: Certificate Transparency Version 2.0. IETF. Stand Dezember 2021. abgerufen am 29.10.2026
- Organisation Chrome Certificate Transparency Policy. Google Chrome. Stand laufend. abgerufen am 29.10.2026
Zuletzt geprüft am 29.10.2026, nächste Prüfung spätestens im Oktober 2027. Fehler entdeckt? Schreib uns.
Weitere Artikel
GlossarFachbegriffe zu Domain, DNS, E-Mail, SSL, Hosting und CDN in wenigen Sätzen erklärt, von AuthInfo über CNAME und HSTS bis …
IP-AdresseWas eine IP-Adresse ist, wie IPv4 und IPv6 aufgebaut sind, wer Adressen vergibt, was private Adressen sind und warum die IP …
Registrar und RegistryRegistrar und Registry einfach erklärt: wer die Datenbank einer Endung führt, bei wem du eine Domain bestellst und welche …
HostingHTTP-Statuscodes von 200 bis 503Was HTTP-Statuscodes wie 200, 301, 404, 410 und 503 bedeuten, wie Browser und Google sie auswerten und welcher Code in …