Arquivos e páginas

Decodificador de certificados X.509

Execução localNova

A ferramenta em si está em inglês; esta página explica como usá-la no seu idioma.

Use Decodificador de certificados X.509

O que ele faz

Cole um certificado ou uma cadeia PEM, ou solte um arquivo .crt, .cer, .der ou .p7b, para ver todos os nomes que ele cobre, quem o emitiu, por quanto tempo é válido e suas impressões digitais (fingerprints), com links do crt.sh para cada nome.

Ele funciona inteiramente no seu navegador: nada do que você digitar é enviado.

Como usar Decodificador de certificados X.509

  1. Obtenha o certificado. Baixe-o na entrada do site no crt.sh ou rode openssl s_client -showcerts em um ambiente isolado. Você não precisa visitar a página suspeita.
  2. Cole ou solte. Cole o texto PEM, uma cadeia inteira se você a tiver, e clique em Decode (decodificar), ou solte um arquivo .pem, .crt, .cer, .der ou .p7b, que é decodificado na hora.
  3. Leia os selos e as sinalizações. Cada certificado mostra o status, o nível de validação e avisos como expirado, autoassinado ou nomes em punycode.
  4. Confira os nomes. Subject Alternative Names lista todos os domínios, endereços IP e endereços de e-mail que o certificado cobre, com um link de pesquisa do crt.sh para cada um.
  5. Aprofunde a investigação. Use os links das impressões digitais SHA-256 ou da chave pública para encontrar o mesmo certificado ou a mesma chave no crt.sh. Send to passa os nomes DNS ao IOC Converter, ao Blocklist Converter, ao Abuse Report Generator ou ao URL Defanger.

Exemplo

Certificado de teste para example.com

Entrada
-----BEGIN CERTIFICATE-----
MIIEujCCBD+gAwIBAgIJASNFZ4mrze8BMAoGCCqGSM49BAMCMEIxCzAJBgNVBAYT
AlVTMRQwEgYDVQQKDAtFeGFtcGxlIE9yZzEdMBsGA1UEAwwURXhhbXBsZSBUZXN0
IFJvb3QgQ0EwHhcNMjYwMTAxMDAwMDAwWhcNMjYwNDAxMDAwMDAwWjCB4jETMBEG
CysGAQQBgjc8AgEDEwJVUzEdMBsGA1UEDwwUUHJpdmF0ZSBPcmdhbml6YXRpb24x
DjAMBgNVBAUTBTEyMzQ1MQswCQYDVQQGEwJVUzETMBEGA1UECAwKQ2FsaWZvcm5p
YTEVMBMGA1UEBwwMRXhhbXBsZSBDaXR5MRQwEgYDVQQKDAtFeGFtcGxlIE9yZzEQ
MA4GA1UECwwHVGVzdGluZzEUMBIGA1UEAwwLZXhhbXBsZS5jb20xJTAjBgkqhkiG
9w0BCQEWFmhvc3RtYXN0ZXJAZXhhbXBsZS5jb20wWTATBgcqhkjOPQIBBggqhkjO
PQMBBwNCAAQKRzEIgSE3KuPFFfnBW/e1rv/eBMvB9UcJV2IzmnCmeL1OQ2bZMgys
Uw5kZkK0MML16Q7waZrihdHZJTHFPXCfo4ICezCCAncwDAYDVR0TAQH/BAIwADAO
BgNVHQ8BAf8EBAMCB4AwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMB0G
A1UdDgQWBBRYpSZy3JLND2TiEQEyO23ty3tawjAfBgNVHSMEGDAWgBQgtQyBIetb
dU1WSz0o2wT+FYlkVjCBlQYDVR0RBIGNMIGKggtleGFtcGxlLmNvbYINKi5leGFt
cGxlLmNvbYIPd3d3LmV4YW1wbGUubmV0ghFsb2dpbi5leGFtcGxlLm9yZ4cEwAAC
CocQIAENuAAAAAAAAAAAAAAAAYEWaG9zdG1hc3RlckBleGFtcGxlLmNvbYYYaHR0
cHM6Ly9leGFtcGxlLmNvbS9jZXJ0MDMGA1UdHwQsMCowKKAmoCSGImh0dHA6Ly9j
cmwuZXhhbXBsZS5jb20vdGVzdC1jYS5jcmwwYgYIKwYBBQUHAQEEVjBUMCMGCCsG
AQUFBzABhhdodHRwOi8vb2NzcC5leGFtcGxlLmNvbTAtBggrBgEFBQcwAoYhaHR0
cDovL2NhLmV4YW1wbGUuY29tL3Rlc3QtY2EuY3J0MEkGA1UdIARCMEAwCAYGZ4EM
AQIBMDQGCysGAQQBgt8TAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHA6Ly9jcHMuZXhh
bXBsZS5jb20vMHwGCisGAQQB1nkCBAIEbgRsAGoAMwARERERERERERERERERERER
EREREREREREREREREREREQAAAZt22qgAAAAEAwAEAQIDBAAzACIiIiIiIiIiIiIi
IiIiIiIiIiIiIiIiIiIiIiIiIiIiAAABm3baq+gAAAQDAAQBAgMEMAoGCCqGSM49
BAMCA2kAMGYCMQCVPfxWDN1hJmIcriOW5n7OvtId8An+59spRf24F0C+4dvRYqcy
kXB/QBoZX8Q70OkCMQCi76K7RJ0TRsZVIojXtA5/nrV4ndDx3KcQ936ya2QsGUny
hokNkWGVbyoShu/7tJc=
-----END CERTIFICATE-----
Saída (registrada em 2026-10-20)
example[.]com

expired
DV: domain validated

Warning: Expired 202 days ago (2026-04-01T00:00:00Z).
Note: 1 wildcard name: *.example[.]com.
SUBJECT
emailAddress=hostmaster[@]example[.]com, CN=example[.]com, OU=Testing, O=Example Org, L=Example City, ST=California, C=US, serialNumber=12345, businessCategory=Private Organization, jurisdictionC=US
ISSUER
Example Test Root CA (Example Org)
VALID
2026-01-01 00:00:00 UTC →
2026-04-01 00:00:00 UTC
LIFETIME
90 days, expired 202 days ago
SERIAL NUMBER
01:23:45:67:89:AB:CD:EF:01
VERSION
v3
SIGNATURE ALGORITHM
ecdsa-with-SHA256
PUBLIC KEY
EC P-256 (256 bits)
CT TIMESTAMPS (SCTS)
2 SCTs, earliest 2026-01-01T00:00:00Z
Subject Alternative Names (8)
DNS
example[.]com
crt.sh ↗
DNS
*.example[.]com
crt.sh ↗
DNS
www[.]example[.]net
crt.sh ↗
DNS
login[.]example[.]org
crt.sh ↗
IP
192[.]0[.]2[.]10
crt.sh ↗
IP
2001:db8::1
crt.sh ↗
Email
hostmaster[@]example[.]com
crt.sh ↗
URI
hxxps://example[.]com/cert
Copy 4 DNS names
SUBJECT ATTRIBUTES
Common name (CN)
example[.]com
Organization (O)
Example Org
Organizational unit (OU)
Testing
Country (C)
US
State or province (ST)
California
Locality (L)
Example City
Email address (emailAddress)
hostmaster[@]example[.]com
Serial number (serialNumber)
12345
Business category (businessCategory)
Private Organization
Jurisdiction country (jurisdictionC)
US
ISSUER ATTRIBUTES
Common name (CN)
Example Test Root CA
Organization (O)
Example Org
Country (C)
US
Extensions (10)
Basic Constraints
critical
2.5.29.19
CA: no
Key Usage
critical
2.5.29.15
Digital signature
Extended Key Usage
2.5.29.37
TLS server authentication,
…

Gerado com OpenSSL para esta página: oito entradas SAN, incluindo *.example.com, www.example.net e 192.0.2.10, uma política DV, dois SCTs embutidos e o emissor Example Test Root CA. Ele foi válido de 1º de janeiro a 1º de abril de 2026, por isso aparece como expirado.

O que ele verifica

SinalO que isso significa
Selo de statusVálido com os dias restantes, expirado ou ainda não válido. Um certificado válido só mostra que alguém controlava o domínio quando ele foi emitido, não que o site seja honesto.
Nível de validaçãoDV, OV, IV ou EV, lido das políticas do certificado. DV significa que só o controle do domínio foi verificado.
AutoassinadoNenhuma autoridade certificadora pública responde por ele, então os navegadores exibem um aviso.
Emissor DV gratuitoLet's Encrypt, ZeroSSL, Google Trust Services ou cPanel AutoSSL. Apenas contexto: sites legítimos e de phishing usam esses emissores.
Curingas e quantidade de nomesNomes curinga são anotados; 25 ou mais nomes em um certificado é típico de certificados de CDN, de hospedagem ou em massa.
Nomes em punycodeNomes xn-- são sinalizados para que você verifique se há letras parecidas.
Assinatura ou chave fracaAssinaturas SHA-1 ou MD5 e chaves RSA com menos de 2048 bits são avisos.
Timestamps de CTSCTs embutidos mostram quando o certificado foi registrado publicamente; o mais antigo fica perto do momento da emissão.
Ordem da cadeiaEm uma cadeia colada, cada certificado é associado ao seguinte pelo nome do emissor e pelo identificador de chave. As assinaturas não são verificadas.
Atributos do titular e do emissorOrganização, país e outros campos de nome das duas partes. Em certificados de confiança pública, o nome de uma organização só aparece em certificados OV e EV; certificados DV indicam apenas o domínio.

Mais exemplos

Um certificado de teste autoassinado

Entrada
-----BEGIN CERTIFICATE-----
MIIBbjCCARSgAwIBAgICEAEwCgYIKoZIzj0EAwIwHDEaMBgGA1UEAwwRbG9naW4u
ZXhhbXBsZS5uZXQwHhcNMjYwOTAxMDAwMDAwWhcNMjYwOTMwMDAwMDAwWjAcMRow
GAYDVQQDDBFsb2dpbi5leGFtcGxlLm5ldDBZMBMGByqGSM49AgEGCCqGSM49AwEH
A0IABB099CoPjeVdV472QJm6aOiVnWB3Rt2f3ogDdGfYz1ZbGvAUnuakRPNSxsKB
7q8f85osjs4VwdlQOsK+glwPiNijRjBEMDQGA1UdEQQtMCuCEWxvZ2luLmV4YW1w
bGUubmV0ghZ4bi0tZXhtcGxlLWN1YS5leGFtcGxlMAwGA1UdEwEB/wQCMAAwCgYI
KoZIzj0EAwIDSAAwRQIgLNhJcyCi3RUzf8iT0nYsLjwsmKDmqNIJf4iHsc7d050C
IQD5p8u3+1i9+YCIXxuRAzWn2kXk1L2dPvnn33HLli6EQw==
-----END CERTIFICATE-----
Resultado

Título login.example.net (os nomes aparecem neutralizados) com um selo de expirado e três avisos: expirado (2026-09-30T00:00:00Z), autoassinado e o nome em punycode xn--exmple-cua.example. Chave EC P-256, vida útil de 29 dias, sem SCTs, 2 nomes SAN com links do crt.sh.

Um domínio colado no lugar de um certificado

Entrada
example.com
Resultado

Só a nota "No PEM block (-----BEGIN CERTIFICATE-----) found."

Perguntas frequentes

O que o decodificador lê de um certificado?

Ele analisa a estrutura DER de forma estrita e mostra a versão, o número de série, o algoritmo de assinatura, os atributos do titular e do emissor, a validade, o tipo e o tamanho da chave pública e as extensões: nomes SAN, usos de chave, políticas (DV, OV, EV), endereços de CRL e OCSP e timestamps de CT embutidos. As impressões digitais SHA-1, SHA-256 e da chave pública são calculadas com a Web Crypto.

Ele verifica se o certificado é confiável ou foi revogado?

Não. Ele não verifica assinaturas, não monta um caminho até uma raiz confiável nem consulta OCSP e CRLs; ele só compara os nomes de emissor e titular e os identificadores de chave para dizer se uma cadeia está em ordem. Sinalizações como um emissor DV gratuito ou um nome curinga são contexto para uma investigação, não um veredito.

O certificado é enviado a algum lugar?

Não. A decodificação e o cálculo das impressões digitais rodam no seu navegador. Os botões do crt.sh são links que abrem o crt.sh em uma nova aba com a impressão digital ou o nome no endereço, e só quando você clica neles.

Por que olhar o certificado de um site de phishing?

A lista SAN dele pode citar outros domínios da mesma campanha, e a impressão digital ou a chave pública podem ser pesquisadas no crt.sh para encontrar certificados relacionados. O início da validade também indica quando o site foi montado.

Posso colar um certificado copiado de um log JSON?

Sim. Texto PEM com sequências \n literais é desescapado primeiro, e Base64 simples ou DER em hex sem a linha BEGIN também são aceitos.

E se eu colar uma chave privada ou um CSR?

Nenhum dos dois é decodificado. Uma chave privada gera um aviso para não colar chaves em páginas da web, e uma solicitação de assinatura de certificado (CSR) é ignorada com uma nota.

Ele lê pacotes .p7b?

Sim. Um pacote PKCS#7 é desempacotado, uma nota diz quantos certificados foram extraídos e cada um é exibido em ordem. São exibidos até 20 certificados por execução.

Explicação dos termos

Pesquisa do PhishDestroy