Utilia

X.509-Zertifikat-Decoder

SSL/TLS-Zertifikat, Kette oder CSR im Browser dekodieren: Inhaber, Aussteller, Ablaufdatum, SAN, Schlüsselverwendung und SHA-256-Fingerabdruck.

Zertifikate werden in Ihrem Browser dekodiert. Nichts wird hochgeladen, interne Zertifikate und CSRs bleiben also auf Ihrem Rechner.

Dieses Tool liest das Zertifikat, prüft aber weder seine Signatur noch seine Vertrauenskette: Ein dekodiertes Zertifikat ist kein Beweis für seine Echtheit.

So dekodieren Sie ein Zertifikat

  1. Fügen Sie ein Zertifikat in das Feld „Zertifikat, Kette oder CSR (PEM oder Base64)“ ein oder ziehen Sie eine Datei auf die Ablagefläche. Akzeptiert werden PEM-Text (-----BEGIN CERTIFICATE-----), binäres DER (.der, .cer), eine Zertifikatsignierungsanforderung (.csr) und ein PKCS#7-Bündel (.p7b).
  2. Klicken Sie auf „Dekodieren“. Ein eingefügter PEM-Block wird auch automatisch dekodiert, sobald seine Zeile -----END …----- vollständig ist. „Beispiel laden“ zeigt ein Testzertifikat.
  3. Jedes Zertifikat und jede CSR erhält eine eigene Tabelle. Ein Badge zeigt „Datum gültig“, „Abgelaufen“ oder „Noch nicht gültig“, und „PEM kopieren“ kopiert den Eintrag als PEM zurück (praktisch, nachdem Sie eine binäre DER-Datei geöffnet haben).
  4. Bei einer Kette (ein Serverzertifikat gefolgt von seinen Zwischenzertifikaten) wird jeder Block der Reihe nach dekodiert. Stimmt der Aussteller eines Zertifikats mit dem Inhaber eines anderen in der Liste überein, vermerkt das Tool „Ausgestellt von Zertifikat n“.

Was die Felder bedeuten

  • Inhaber (Subject) und Aussteller (Issuer) sind Distinguished Names: CN (Common Name), O (Organisation), OU, L (Ort), ST (Bundesland oder Provinz), C (Land). Ein Zertifikat, dessen Aussteller dem Inhaber entspricht, wird als „Selbstsigniert“ markiert.
  • Gültig ab und Gültig bis sind die Daten notBefore und notAfter, angezeigt in Ihrer Zeitzone, zusammen mit der Zahl der verbleibenden Tage. Seit 2020 lehnen Browser öffentliche TLS-Zertifikate mit mehr als 398 Tagen Laufzeit ab, und das CA/Browser Forum verkürzt diese Grenze weiter.
  • Seriennummer erscheint hexadezimal (wie in Browsern und OpenSSL) und dezimal.
  • Signaturalgorithmus und Öffentlicher Schlüssel: bei RSA die Modulusgröße (2048, 3072, 4096 Bit) und der öffentliche Exponent (fast immer 65537), bei elliptischen Kurven die Kurve (P-256, P-384 …); auch Ed25519 wird erkannt.
  • Erweiterungen: Subject Alternative Name (die Hostnamen, IP-Adressen und E-Mail-Adressen, die das Zertifikat abdeckt; Browser ignorieren den CN und verwenden nur den SAN), Key Usage, Extended Key Usage (serverAuth, clientAuth, codeSigning …), Basic Constraints (CA: TRUE für eine Zertifizierungsstelle), Subject und Authority Key Identifier, CRL Distribution Points, Authority Information Access (OCSP-Responder und CA-Issuers-URL) sowie Certificate Policies (DV, OV, EV). Als „kritisch“ markierte Erweiterungen muss jede Software verstehen, die das Zertifikat verwendet.
  • SHA-1-Fingerabdruck und SHA-256-Fingerabdruck sind Hashwerte des gesamten DER-Zertifikats, berechnet mit der Web Crypto API des Browsers; sie entsprechen openssl x509 -fingerprint. Der Public-Key-Pin ist der Base64-kodierte SHA-256-Hash der Public-Key-Info, das Format für Certificate Pinning.

Dekodieren ist nicht Prüfen

Dieses Tool ist ein reiner ASN.1/DER-Parser. Es prüft die Signatur nicht, baut keine Vertrauenskette bis zu einer Stammzertifizierungsstelle auf und fragt weder Sperrlisten noch OCSP ab, denn dafür wäre ein Netzwerkzugriff nötig. Nutzen Sie es, um ein Zertifikat zu untersuchen, herauszufinden, warum ein Hostname nicht passt oder wann es abläuft – nicht, um zu entscheiden, ob es vertrauenswürdig ist. Private Schlüssel werden absichtlich abgelehnt: Fügen Sie einen PRIVATE KEY-Block ein, wird er nicht dekodiert, und Sie sollten ihn als kompromittiert betrachten, falls Sie ihn jemals weitergegeben haben.

Häufige Fragen

Wie erhalte ich das Zertifikat einer Website?

In den meisten Browsern klicken Sie auf das Schloss-Symbol, öffnen die Zertifikatsanzeige und exportieren das Zertifikat als PEM. Auf der Kommandozeile gibt openssl s_client -connect example.com:443 -showcerts die gesamte Kette aus; fügen Sie die Blöcke hier ein.

Was ist der Unterschied zwischen PEM und DER?

DER ist die binäre Kodierung des Zertifikats. PEM sind dieselben Bytes in Base64 zwischen den Zeilen BEGIN und END – leichter zu kopieren und einzufügen. Das Tool liest beide Formate und dekodiert denselben Inhalt.

Was ist eine CSR?

Eine Zertifikatsignierungsanforderung (Certificate Signing Request) senden Sie an eine Zertifizierungsstelle: Sie enthält den gewünschten Inhaber, den öffentlichen Schlüssel und oft die gewünschten SANs. Aussteller, Gültigkeit und Seriennummer fehlen noch; diese ergänzt die Zertifizierungsstelle.

Warum meldet mein Browser das Zertifikat als ungültig, obwohl die Daten stimmen?

Die Daten sind nur eine Prüfung von vielen. Der Hostname muss im Subject Alternative Name stehen, die Kette muss zu einer vertrauenswürdigen Stammzertifizierungsstelle führen (ein fehlendes Zwischenzertifikat ist eine häufige Ursache), die Schlüsselverwendung muss TLS erlauben, und das Zertifikat darf nicht gesperrt sein.

Ist es sicher, ein Zertifikat hier einzufügen?

Ja. Ein Zertifikat ist eine öffentliche Information, die Server jedem Besucher schicken, und dieses Tool verarbeitet es lokal, ohne es hochzuladen. Nur private Schlüssel müssen geheim bleiben.