Decodificador de CSR
Antes de uma Autoridade de Certificação assinar um certificado TLS, você entrega a ela um Pedido de Assinatura de Certificado (CSR), um bloco base64 que contém o assunto que você quer no certificado e a sua chave pública, além de uma assinatura que comprova que você possui a chave privada correspondente. Este decodificador recebe um CSR codificado em PEM e mostra os campos do assunto e os parâmetros da chave pública, para que você possa conferir o nome comum, a organização e o tamanho da chave antes de enviá-lo a uma CA.
Como decodificar um CSR
-
1
Cole o CSR
Inclua os marcadores `-----BEGIN CERTIFICATE REQUEST-----` e `-----END CERTIFICATE REQUEST-----`. Espaços em branco são tolerados.
-
2
Execute o decodificador
O pedido é analisado e os campos do assunto e a chave pública são extraídos.
-
3
Revise a saída
Confira os campos do assunto, como o nome comum e a organização, além do algoritmo e do tamanho da chave.
-
4
Aja conforme o resultado
Se o assunto ou a chave parecerem errados, regenere o CSR antes de enviá-lo a uma CA.
O que o decodificador mostra
Uma CSR é uma estrutura ASN.1 (PKCS #10). O decodificador lê duas coisas dela:
- Assunto: os campos do Nome Distinto solicitados, normalmente o país (C), a organização (O), a unidade organizacional (OU), a localidade (L), o estado (ST) e o nome comum (CN).
- Chave pública: o algoritmo (RSA, EC, DSA) e o tamanho da chave em bits.
A assinatura dentro da CSR é o que prova à CA que o remetente possui a chave privada correspondente. Este decodificador não a exibe; a CA a verifica ao processar o pedido.
Exemplo de saída
Para um pedido de certificado de domínio típico, a saída tem este aspecto:
Subject: commonName=www.example.com, organizationName=Example Inc., countryName=US
Key bits: 2048
Key type: RSA
Os nomes exatos dos atributos do assunto dependem de como o pedido foi gerado.
Campos a verificar
- Nome Comum (CN): deve ser o nome do host principal. Navegadores modernos ignoram o CN e olham apenas para os SANs, mas muitas CAs ainda exigem um CN válido.
- Nomes Alternativos de Assunto (SANs): liste todos os nomes de host e curingas que o cert irá proteger. Navegadores fazem correspondência com os SANs, não com o CN.
- País (C): código ISO de 2 letras (US, GB, DE), não um nome completo. CAs rejeitam códigos errados.
- Tamanho da chave: RSA 2048 é o mínimo; 3072 ou 4096 para maior segurança. ECDSA P-256 é uma boa alternativa moderna e produz um cert menor.
- Algoritmo de assinatura: SHA-256 ou melhor. SHA-1 está obsoleto e será rejeitado.
Sobre os Nomes Alternativos de Assunto (SANs)
O decodificador mostra o assunto do pedido, mas não a extensão SAN. Os navegadores fazem correspondência dos certificados com os SANs, e não com o CN; se o certificado precisar cobrir mais nomes de host, inclua-os ao gerar o pedido, por exemplo:
openssl req -new -newkey rsa:2048 -nodes -keyout example.key -out example.csr -addext "subjectAltName=DNS:example.com,DNS:www.example.com"
Quando o decodificador não consegue analisar o CSR
As causas mais comuns são um bloco PEM truncado ou danificado:
- Texto truncado: recole o bloco completo, incluindo os dois marcadores.
- Quebras de linha inseridas: cole o bloco exatamente como foi gerado.
- Conteúdo errado: uma chave pública, um certificado ou uma chave privada colados por engano não serão analisados como um CSR.
Gerando a chave correspondente
Uma CSR é sempre gerada juntamente com uma chave privada. Comando típico:
openssl req -new -newkey rsa:2048 -nodes -keyout example.key -out example.csr
Ou para ECDSA:
openssl req -new -newkey ec:<(openssl ecparam -name prime256v1) -nodes -keyout example.key -out example.csr
Proteja a chave privada, se ela vazar, o certificado deve ser revogado.
Perguntas frequentes
Uma CSR contém apenas informações públicas (chave pública, assunto, SANs) mais uma assinatura, é seguro compartilhar com uma CA ou colar em um decodificador. O que deve permanecer em segredo é a chave privada correspondente.
Não. Este decodificador espera a forma textual PEM com os marcadores BEGIN/END CERTIFICATE REQUEST. Para usar um pedido DER binário, converta-o antes para PEM, por exemplo com openssl req -in request.der -inform DER -out request.pem.
Não. A maioria das CAs públicas (Let’s Encrypt, DigiCert, Sectigo) exige apenas CN e SANs, elas ignoram O, OU, L, ST, C para certificados validados por domínio. Certificados validados por organização e de Validação Estendida verificam esses campos separadamente.
Na maioria das vezes porque o texto colado foi truncado ou ganhou quebras de linha, ou porque uma chave ou certificado foi colado no lugar de uma CSR. Recole o bloco completo entre os dois marcadores.
Ferramentas relacionadas
Gerador de Cartão CSS
Crie o CSS de um contêiner de cartão: fundo, borda, raio dos cantos, espaçamento interno e sombra suave, com pré-visualização imediata e código para copiar e colar.
Conversor de Tamanho de Arquivo
Converta entre bytes, KB, MB, GB, TB e as unidades binárias IEC (KiB, MiB, GiB, TiB), combinando decimal e binário como preferir.
Gerador de Docker Compose
Gere um docker-compose.yml a partir de definições de serviços com imagem, portas e volumes, com padrões de boas práticas.
Conversor de base numérica
Converta números entre binário, octal, decimal, hexadecimal e qualquer base personalizada de 2 a 36, com o detalhamento posicional.
Gerador de README
Gere um README.md estruturado a partir de alguns campos: nome do projeto, tagline, recursos, comando de instalação, trecho de início rápido, autor e licença. Cole direto no seu repositório.
Visualizador de Markdown
Escreva Markdown e veja a renderização HTML atualizar ao vivo. Sintaxe com estilo GitHub, incluindo tabelas, listas de tarefas, blocos de código cercados e autolinks.
Ferramenta disponível em outros idiomas
- Bộ giải mã CSR [VI]
- CSR-avkodare [SV]
- أداة فك ترميز CSR [AR]
- CSR 디코더 [KO]
- ตัวถอดรหัส CSR [TH]
- Décodeur CSR [FR]
- Dekoder CSR [ID]
- CSRデコーダー [JA]
- CSR-Decoder [DE]
- CSR-decoder [NL]
- Decodificador de CSR [ES]
- Dekoder CSR [PL]
- CSR Decoder [EN]
- Decoder CSR [IT]
- Декодер CSR [RU]
- CSR Çözücü [TR]
- CSR解码器 [ZH]