Todos os artigos sobre SSL SSL e certificados

O que é um CSR (Certificate Signing Request)?

Um CSR (Certificate Signing Request) é um bloco de dados codificados que você envia a uma Autoridade Certificadora (CA) para solicitar um certificado SSL. Ele contem sua chave pública e informações do domínio. A CA usa isso para criar seu certificado.

O que ha dentro de um CSR

CampoExemploObrigatório?
Common Name (CN)example.comSim
Chave PúblicaSua chave pública RSA ou ECDSASim
Algoritmo da ChaveECDSA P-256 ou RSA 2048Sim
OrganizaçãoSua Empresa LTDAOpcional para DV
PaisBROpcional para DV
SANswww.example.com, api.example.comPara multi-domínio

Para certificados DV (como Let’s Encrypt), apenas o(s) nome(s) de domínio e a chave pública importam. Os campos organizacionais sao ignorados.

Como a geração do CSR funciona

  1. Gerar um par de chaves — uma chave privada é uma chave pública
  2. Construir o CSR — codificar a chave pública + info do domínio em um formato padronizado (PKCS#10)
  3. Assinar o CSR — assina-lo com a chave privada (prova que você tem a chave privada correspondente)
  4. Enviar para a CA — a CA verifica sua propriedade do domínio, depois usa o CSR para criar seu certificado

A chave privada nunca sai do seu sistema. O CSR contem apenas a chave pública.

GetHTTPS trata o CSR automaticamente

Com ferramentas tradicionais, você geraria manualmente um CSR com OpenSSL:

# The manual way (not needed with GetHTTPS)
openssl req -new -newkey ec -pkeyopt ec_paramgen_curve:P-256 \
  -keyout privkey.pem -out csr.pem -nodes \
  -subj "/CN=example.com"

Com GetHTTPS, você nunca ve ou toca no CSR. A ferramenta:

  1. Gera o par de chaves no seu navegador (Web Crypto API)
  2. Constroi o CSR automaticamente a partir da entrada do seu domínio
  3. Envia para o Let’s Encrypt como parte do fluxo ACME
  4. Fornece o certificado assinado para download

O CSR é um passo interno — você apenas insere seu domínio e recebe um certificado.

Gerando um CSR manualmente (quando necessário)

Se você precisa de um CSR avulso (para uma CA comercial, ou uma plataforma que exige que você faça upload de um), veja como:

ECDSA P-256 (recomendado)

openssl req -new -newkey ec -pkeyopt ec_paramgen_curve:P-256 \
  -keyout privkey.pem -out csr.pem -nodes \
  -subj "/CN=example.com"

RSA 2048

openssl req -new -newkey rsa:2048 \
  -keyout privkey.pem -out csr.pem -nodes \
  -subj "/CN=example.com"

Com múltiplos domínios (SAN)

openssl req -new -newkey ec -pkeyopt ec_paramgen_curve:P-256 \
  -keyout privkey.pem -out csr.pem -nodes \
  -subj "/CN=example.com" \
  -addext "subjectAltName=DNS:example.com,DNS:www.example.com"

Verificar um CSR

openssl req -in csr.pem -noout -text

Isso mostra o(s) nome(s) de domínio, algoritmo da chave e tamanho da chave embutidos no CSR.

CSR no protocolo ACME

No protocolo ACME (usado pelo Let’s Encrypt), o CSR é enviado durante o passo de finalizacao — após a válidação do domínio passar. A CA usa a chave pública do CSR para construir seu certificado. O formato do CSR e PKCS#10, codificado como base64url na mensagem JSON do ACME.

Com GetHTTPS, todo esse processo acontece em JavaScript usando a Web Crypto API e a biblioteca pkijs. Você nunca ve os bytes brutos do CSR.

Perguntas frequentes

Preciso manter o arquivo CSR?

Não. O CSR é usado apenas durante a solicitacao do certificado. Após a CA emitir seu certificado, o CSR não serve mais proposito. Mantenha sua chave privada e certificado — você pode descartar o CSR.

Posso reutilizar um CSR para renovação?

Tecnicamente sim, mas e melhor gerar um novo par de chaves e CSR para cada renovação. Isso segue o principio de rotacao de chaves e limita a exposicao se uma chave for comprometida.

Qual a diferenca entre um CSR é um certificado?

Um CSR é uma solicitacao — contem sua chave pública e pede a CA para assina-la. Um certificado e o resultado — e a declaracao assinada da CA de que sua chave pública pertence ao seu domínio. O CSR e a entrada; o certificado e a saida.

Posso gerar um CSR para um domínio wildcard?

Sim. Use *.example.com como o Common Name:

openssl req -new -newkey ec -pkeyopt ec_paramgen_curve:P-256 \
  -keyout privkey.pem -out csr.pem -nodes \
  -subj "/CN=*.example.com"

Com GetHTTPS, você não precisa gerar um CSR manualmente — insira *.example.com como o domínio e o GetHTTPS trata o CSR automaticamente.

O que significa “key usage” em um CSR?

Extensões de key usage especificam para que o certificado pode ser usado — tipicamente “Digital Signature” e “Key Encipherment” para certificados TLS. GetHTTPS e a maioria dos clientes ACME configuram isso corretamente por padrão. Você só precisa se preocupar com key usage se estiver gerando CSRs manualmente para uma CA comercial com requisitos especificos.

Artigos relacionados

SSL e certificados 2026-05-07
Certificados ECC vs RSA: Qual Você Deve Escolher?
Compare certificados ECC (ECDSA P-256) e RSA (2048/4096-bit). As chaves ECC são menores e mais rápidas. Saiba por que o GetHTTPS usa ECC por padrão e quando RSA ainda faz sentido.
Primeiros passos 2026-05-08
Como obter um certificado SSL gratuito (guia passo a passo)
Obtenha um certificado SSL gratuito do Let's Encrypt em 5 minutos — sem software para instalar, sem conta para criar. Guia completo cobrindo 4 métodos, ambos os tipos de desafio, instalação em 6 plataformas e solução de problemas.
SSL e certificados 2026-05-07
Como SSL/TLS Funciona: O Handshake TLS Explicado
Um passo a passo visual do handshake TLS — como seu navegador é um servidor estabelecem uma conexão criptografada em milissegundos. Cobre TLS 1.2, TLS 1.3, retomada de sessão e forward secrecy.
Obtenha um certificado SSL gratuito no seu navegador
Sem instalacao, sem conta. Sua chave privada nunca sai do seu dispositivo.
Obter seu certificado