Certificado, CSR ou chave
Cole um certificado X.509, uma solicitação de assinatura (CSR), uma chave ou uma cadeia completa em PEM, ou carregue um arquivo .crt, .cer, .der, .p7b, .pfx ou .p12. Você verá o sujeito, os SANs, a validade, as extensões e as impressões digitais, se a cadeia está em ordem e assinada, e se a chave privada corresponde ao certificado. Nada sai do seu navegador.
Você pode colar vários blocos juntos (certificado, intermediários e chave) ou arrastar um arquivo para cá

Como funciona

Um certificado X.509 é um documento assinado que vincula uma chave pública a um nome: um domínio, uma pessoa ou uma organização. O que trafega entre servidores e arquivos é sua forma binária (DER), e o que se copia e cola é essa mesma estrutura em Base64 entre as linhas BEGIN CERTIFICATE e END CERTIFICATE, o formato PEM. Dentro há um sujeito, um emissor, um período de validade, a chave pública e extensões que dizem para que ele serve e onde consultar se foi revogado.

A ferramenta reconhece certificados, solicitações de assinatura PKCS#10 (CSR), chaves privadas PKCS#8, PKCS#1 e SEC1, chaves públicas, pacotes PKCS#7 (.p7b) e arquivos PKCS#12 (.pfx, .p12). Se você colar vários blocos juntos, ela ordena a cadeia do certificado final até a raiz, verifica cada assinatura com a chave do emissor e compara a chave privada com cada certificado e cada CSR para dizer qual corresponde a qual.

Ela também converte entre formatos, monta o .pfx exigido pelo IIS e pelo Azure a partir do certificado e da chave, e gera uma nova CSR com sua chave privada ou um certificado autoassinado para testes. Tudo é feito com a API criptográfica do seu navegador: nem os certificados nem as chaves são enviados a um servidor.

Exemplos

ISRG Root X1 · SHA-25696:BC:EC:06:26:49:76:F3:74:60:77:9A:CF:28:C5:A7:CF:E8:A3:C0:AA:E1:1A:8F:FC:EE:05:C0:BD:DF:08:C6A impressão digital SHA-256 da raiz do Let's Encrypt. É a que a autoridade e os repositórios de confiança publicam: se a do arquivo que você tem coincidir, é exatamente esse certificado.
ISRG Root X1 · pin SPKIC5+lpZ7tcVwmwQIMcRtPbsQtWLABXhQzejna0wHFr8M=O SHA-256 da chave pública em Base64. É o valor que vai no pin-sha256 da configuração de segurança de rede do Android ou no certificate pinning de um app, e não muda ao renovar o certificado se a chave for reutilizada.
root.crt + intermediate.crt + server.crtserver.crt + intermediate.crt + root.crtO nginx e o HAProxy consideram o primeiro certificado do arquivo como o do servidor. Se a cadeia estiver invertida, o nginx falha com key values mismatch porque compara a chave privada com o certificado da raiz.
openssl pkcs12 -in viejo.pfx -legacy -nodes | openssl pkcs12 -export -out nuevo.pfxPBES2 · AES-256-CBC · MAC SHA-256Os .pfx exportados por versões antigas do Windows ou pelo OpenSSL 1.x são criptografados com RC2 e 3DES, que os navegadores não implementam. Este comando os criptografa novamente com AES, o formato que o OpenSSL 3 usa por padrão.

Casos de uso

  • Conferir, antes de instalar, se o certificado enviado pela autoridade cobre todos os domínios (SAN) e se a data de expiração é a esperada.
  • Descobrir qual das chaves privadas que ficaram no servidor corresponde a cada certificado, sem precisar comparar módulos com o OpenSSL.
  • Descobrir por que um cliente não confia no seu site: um intermediário ausente, uma cadeia fora de ordem ou um certificado assinado com SHA-1.
  • Gerar a CSR para comprar ou renovar um certificado, com a chave criada no seu computador e o comando OpenSSL equivalente caso prefira fazer isso no servidor.
  • Converter um .crt e sua .key em um .pfx para IIS, Azure App Service ou um keystore Java, ou extrair o certificado e a chave de um .pfx para o nginx.
  • Obter a impressão digital ou o pin SPKI de um certificado para configurar certificate pinning em um app móvel ou validar um certificado de cliente.

Perguntas frequentes

É seguro colar minha chave privada aqui?

A chave é processada com a API Web Crypto dentro do seu navegador e não é enviada a nenhum servidor; você pode comprovar isso na aba Rede das ferramentas de desenvolvedor. Ainda assim, a boa prática é tratar qualquer chave de produção como um segredo: cole-a apenas em ferramentas nas quais você confia e feche a aba ao terminar.

Qual é a diferença entre PEM, DER, CRT, CER, P7B e PFX?

DER é o certificado em binário e PEM é esse mesmo binário em Base64 entre linhas BEGIN e END. As extensões .crt e .cer não indicam o formato: podem conter qualquer um dos dois. Um .p7b é um pacote PKCS#7 com vários certificados e nenhuma chave. Um .pfx ou .p12 é um PKCS#12: guarda o certificado, os intermediários e a chave privada juntos, criptografados com senha.

Como sei se falta o intermediário no meu servidor?

Cole o que você tem configurado no servidor. Se a cadeia terminar em um certificado que não é autoassinado, falta um elo: a extensão Authority Information Access dele costuma trazer, em CA Issuers, o endereço para baixar o emissor. Os navegadores de desktop às vezes o buscam sozinhos, mas o Android, o curl e a maioria das bibliotecas não, então o erro aparece só em alguns clientes.

Quanto tempo pode durar um certificado TLS público?

Desde setembro de 2020, os navegadores rejeitam certificados com mais de 398 dias. Em 2025, o CA/Browser Forum aprovou reduzir o máximo em etapas: 200 dias para os emitidos a partir de 15 de março de 2026, 100 dias a partir de março de 2027 e 47 dias a partir de março de 2029. Por isso vale a pena automatizar a renovação com ACME. As CAs internas de uma empresa não têm esse limite.

RSA ou ECDSA para a CSR?

ECDSA P-256 oferece segurança comparável a RSA de 3072 bits com chave e assinaturas muito menores, e o servidor conclui o handshake mais rápido. Todos os navegadores e sistemas atuais o suportam. RSA 2048 continua sendo a opção segura se você tem clientes muito antigos, dispositivos embarcados ou um sistema que só aceita RSA.

Basta colocar o domínio no nome comum (CN)?

Não. Desde o Chrome 58, em 2017, os navegadores só olham os nomes alternativos (SAN) e o CN é ignorado. Cada domínio em que o certificado for usado, incluindo o do CN, precisa estar na lista de SAN. Um curinga como *.example.com cobre um único nível: serve para www.example.com, mas não para example.com nem para a.b.example.com.