Utilia

X.509-sertifikatdekoder

Dekod et SSL/TLS-sertifikat, en kjede eller en CSR i nettleseren. Se subjekt, utsteder, utløpsdato, SAN, nøkkelbruk og SHA-256-fingeravtrykk.

Sertifikater dekodes i nettleseren din. Ingenting lastes opp, så interne sertifikater og CSR-er blir på datamaskinen din.

Dette verktøyet leser sertifikatet, men verifiserer ikke signaturen eller tillitskjeden: et dekodet sertifikat er ikke bevis på at det er ekte.

Slik dekoder du et sertifikat

  1. Lim inn et sertifikat i Sertifikat, kjede eller CSR (PEM eller Base64), eller slipp en fil på slippsonen. PEM-tekst (-----BEGIN CERTIFICATE-----), binær DER (.der, .cer), en sertifikatforespørsel (.csr) og en PKCS#7-pakke (.p7b) godtas alle.
  2. Klikk Dekod. En innlimt PEM-blokk dekodes også så snart linjen -----END …----- er fullført. Last inn et eksempel viser et testsertifikat.
  3. Hvert sertifikat eller hver CSR får sin egen tabell. Et merke viser Gyldige datoer, Utløpt eller Ikke gyldig ennå, og Kopier PEM kopierer det tilbake som PEM (praktisk etter at du har åpnet en binær DER-fil).
  4. For en kjede (et serversertifikat etterfulgt av mellomsertifikatene) dekodes hver blokk i rekkefølge, og verktøyet noterer Utstedt av sertifikat n når utstederen til et sertifikat samsvarer med subjektet til et annet i listen.

Hva feltene betyr

  • Subjekt og Utsteder er distinguished names: CN (common name), O (organisasjon), OU, L (by), ST (delstat eller provins), C (land). Et sertifikat der utstederen er lik subjektet, merkes Selvsignert.
  • Gyldig fra og Gyldig til er datoene notBefore og notAfter, vist i tidssonen din, med antall dager igjen. Siden 2020 avviser nettlesere offentlige TLS-sertifikater som er gyldige i mer enn 398 dager, og CA/Browser Forum kutter denne grensen ytterligere.
  • Serienummer vises heksadesimalt (som i nettlesere og OpenSSL) og desimalt.
  • Signaturalgoritme og Offentlig nøkkel: for RSA modulusstørrelsen (2048, 3072, 4096 bit) og den offentlige eksponenten (nesten alltid 65537), for elliptiske kurver kurven (P-256, P-384 …). Ed25519 gjenkjennes også.
  • Utvidelser: Subject Alternative Name (vertsnavnene, IP-adressene og e-postadressene sertifikatet dekker; nettlesere ignorerer CN og bruker bare SAN), Key Usage, Extended Key Usage (serverAuth, clientAuth, codeSigning …), Basic Constraints (CA: TRUE for en sertifiseringsinstans), Subject og Authority Key Identifiers, CRL Distribution Points, Authority Information Access (OCSP-tjener og URL for CA Issuers) og Certificate Policies (DV, OV, EV). Utvidelser merket kritisk må forstås av all programvare som bruker sertifikatet.
  • SHA-1-fingeravtrykk og SHA-256-fingeravtrykk er hasher av hele DER-sertifikatet, beregnet med nettleserens Web Crypto API. De samsvarer med openssl x509 -fingerprint. Pin for offentlig nøkkel (SHA-256, Base64) er Base64-SHA-256 av informasjonen om den offentlige nøkkelen, formatet som brukes til sertifikat-pinning.

Å dekode er ikke det samme som å verifisere

Dette verktøyet er en ren ASN.1/DER-parser. Det sjekker ikke signaturen, bygger ikke en tillitskjede til en rotinstans og spør ikke tilbakekallingslister eller OCSP, fordi det ville krevd nettverkstilgang. Bruk det til å inspisere et sertifikat, finne ut hvorfor et vertsnavn ikke stemmer eller når det utløper, ikke til å avgjøre om det kan stoles på. Private nøkler avvises med vilje: hvis du limer inn en PRIVATE KEY-blokk, dekodes den ikke, og du bør regne den som eksponert hvis du noen gang har delt den.

Ofte stilte spørsmål

Hvordan får jeg tak i sertifikatet til et nettsted?

I de fleste nettlesere klikker du på hengelåsen, åpner sertifikatvisningen og eksporterer det som PEM. På kommandolinjen skriver openssl s_client -connect example.com:443 -showcerts ut hele kjeden. Lim inn blokkene her.

Hva er forskjellen på PEM og DER?

DER er den binære kodingen av sertifikatet. PEM er de samme byte-ene i Base64 mellom linjene BEGIN og END, noe som er enklere å kopiere og lime inn. Verktøyet leser begge og dekoder det samme innholdet.

Hva er en CSR?

En sertifikatforespørsel (certificate signing request) er det du sender til en sertifiseringsinstans: den inneholder det ønskede subjektet, den offentlige nøkkelen og ofte de ønskede SAN-ene. Den har ennå ingen utsteder, gyldighet eller serienummer. Det legger instansen til.

Hvorfor sier nettleseren min at sertifikatet er ugyldig, selv om datoene er i orden?

Datoene er bare én kontroll. Vertsnavnet må stå i Subject Alternative Name, kjeden må føre til en pålitelig rot (et manglende mellomsertifikat er en vanlig årsak), nøkkelbruken må tillate TLS, og sertifikatet må ikke være tilbakekalt.

Er det trygt å lime inn et sertifikat her?

Ja. Et sertifikat er offentlig informasjon som servere sender til alle besøkende, og dette verktøyet behandler det lokalt uten å laste det opp. Bare private nøkler må holdes hemmelige.