Utilia

X.509 dekoder certifikata

Dekodiraj SSL/TLS certifikat, lanac ili CSR u pregledniku. Vidi subjekt, izdavača, datum isteka, SAN, upotrebu ključa, javni ključ i SHA-256 otisak.

Certifikati se dekodiraju u tvom pregledniku. Ništa se ne šalje, pa interni certifikati i CSR-ovi ostaju na tvom računaru.

Ovaj alat čita certifikat, ali ne provjerava njegov potpis ni lanac povjerenja: dekodiran certifikat nije dokaz da je originalan.

Kako dekodirati certifikat

  1. Zalijepi certifikat u polje Certifikat, lanac ili CSR (PEM ili Base64) ili spusti datoteku na zonu za spuštanje. Prihvataju se PEM tekst (-----BEGIN CERTIFICATE-----), binarni DER (.der, .cer), zahtjev za potpisivanje certifikata (.csr) i PKCS#7 paket (.p7b).
  2. Klikni na Dekodiraj. Zalijepljeni PEM blok dekodira se i čim je njegova linija -----END …----- kompletna. Učitaj primjer prikazuje testni certifikat.
  3. Svaki certifikat ili CSR dobija svoju tabelu. Oznaka prikazuje Datumi važe, Istekao ili Još ne vrijedi, a Kopiraj PEM ga kopira nazad kao PEM (zgodno nakon otvaranja binarne DER datoteke).
  4. Za lanac (certifikat servera iza kojeg slijede posredni certifikati) svaki blok se dekodira redom, a alat bilježi Izdao certifikat n kada izdavač jednog certifikata odgovara subjektu drugog u listi.

Šta znače polja

  • Subjekt i Izdavač su istaknuta imena (distinguished names): CN (uobičajeno ime), O (organizacija), OU, L (grad), ST (država ili pokrajina), C (zemlja). Certifikat čiji je izdavač jednak subjektu označen je kao Samopotpisan.
  • Vrijedi od i Vrijedi do su datumi notBefore i notAfter, prikazani u tvojoj vremenskoj zoni, s brojem preostalih dana. Od 2020. preglednici odbijaju javne TLS certifikate koji važe duže od 398 dana, a CA/Browser Forum taj rok dodatno skraćuje.
  • Serijski broj prikazan je heksadecimalno (kao u preglednicima i OpenSSL-u) i decimalno.
  • Algoritam potpisa i Javni ključ: za RSA veličina modula (2048, 3072, 4096 bita) i javni eksponent (gotovo uvijek 65537); za eliptične krivulje krivulja (P-256, P-384…); prepoznaje se i Ed25519.
  • Ekstenzije: Subject Alternative Name (nazivi hostova, IP adrese i adrese e-pošte koje certifikat pokriva; preglednici ignorišu CN i koriste samo SAN), Key Usage, Extended Key Usage (serverAuth, clientAuth, codeSigning…), Basic Constraints (CA: TRUE za autoritet), identifikatori ključa subjekta i autoriteta, CRL Distribution Points, Authority Information Access (OCSP responder i URL izdavača) i Certificate Policies (DV, OV, EV). Ekstenzije označene kao kritično mora razumjeti svaki softver koji koristi certifikat.
  • SHA-1 otisak i SHA-256 otisak su hashevi cijelog DER certifikata, izračunati pomoću Web Crypto API-ja preglednika; podudaraju se s openssl x509 -fingerprint. Pin javnog ključa je Base64 SHA-256 informacija o javnom ključu, format koji se koristi za pinning certifikata.

Dekodiranje nije provjera

Ovaj alat je čisti ASN.1/DER parser. Ne provjerava potpis, ne gradi lanac povjerenja do korijenskog autoriteta i ne upituje liste opozvanih certifikata ni OCSP, jer bi to zahtijevalo pristup mreži. Koristi ga za pregled certifikata, za otkrivanje zašto se naziv hosta ne podudara ili kada certifikat ističe, a ne da odlučiš može li mu se vjerovati. Privatni ključevi se namjerno odbijaju: ako zalijepiš blok PRIVATE KEY, on se ne dekodira, a ako si ga ikada podijelio, treba ga smatrati kompromitovanim.

Sve radi u tvom pregledniku. Ništa što zalijepiš ne šalje se na server.

Česta pitanja

Kako da dobijem certifikat web stranice?

U većini preglednika klikni na lokot, otvori pregled certifikata i izvezi ga kao PEM. U komandnoj liniji openssl s_client -connect example.com:443 -showcerts ispisuje cijeli lanac; zalijepi blokove ovdje.

Koja je razlika između PEM i DER?

DER je binarno kodiranje certifikata. PEM su isti bajtovi u Base64 između linija BEGIN i END, što je lakše kopirati i zalijepiti. Alat čita oba i dekodira isti sadržaj.

Šta je CSR?

Zahtjev za potpisivanje certifikata je ono što šalješ certifikacijskom tijelu: sadrži traženi subjekt, javni ključ i često tražene SAN-ove. Još nema izdavača, važenja ni serijskog broja; to dodaje certifikacijsko tijelo.

Zašto moj preglednik kaže da je certifikat neispravan iako su datumi u redu?

Datumi su samo jedna provjera. Naziv hosta mora biti u Subject Alternative Name, lanac mora voditi do pouzdanog korijena (čest uzrok je nedostajući posredni certifikat), upotreba ključa mora dozvoljavati TLS, a certifikat ne smije biti opozvan.

Je li sigurno zalijepiti certifikat ovdje?

Jeste. Certifikat je javna informacija koju serveri šalju svakom posjetiocu, a ovaj alat ga obrađuje lokalno bez slanja. Samo privatni ključevi moraju ostati tajni.