Formatos de certificados SSL e extensões de arquivos de certificados: Um guia completo

É bastante fácil entender o que é um certificado SSL e como ele funciona. Porém, quando se trata de instalá-lo em um servidor, às vezes pode parecer que você está lidando com ciência de foguetes.

Com tantos formatos de certificados SSL vinculados a requisitos específicos do servidor, é mais provável que você fique confuso e frustrado em vez de configurar seu certificado corretamente desde o início. Mas isso está prestes a mudar.

Neste guia abrangente, analisaremos cada formato de certificado SSL e extensões de arquivo de certificado e mostraremos duas maneiras de converter diferentes tipos de arquivo.


Índice

  1. Formatos de arquivo de certificado – Noções básicas
  2. Formatos de certificados SSL e extensões de arquivos
  3. Conversão de formato SSL

Formatos de arquivo de certificado – Noções básicas

Vamos começar abordando os aspectos básicos. Todos os certificados SSL são certificados x.509. Esse é o formato padrão dos certificados de chave pública expressos em uma linguagem formal chamada Abstract Syntax Notation One. Não vamos nos aprofundar na estrutura X.509; você pode ler sobre ela na Wiki. Estamos aqui para discutir os formatos de certificado SSL, como DER, PEM, PKCS#7 e PKCS#12.

Uma maneira fácil de distingui-los é observar sua codificação.

O PEM e o PKCS#7 usam a codificação ASCII (Código Padrão Americano para Intercâmbio de Informações) de base. Esse é um padrão popular para arquivos que contêm texto.

O DER e o PKCS#12 usam codificação binária, um sistema numérico de base 2 que consiste apenas em zeros e uns.

Devido aos diferentes formatos e codificações, os certificados SSL têm muitas extensões de arquivo.


Formatos de certificados SSL e extensões de arquivos

Vamos examinar atentamente cada formato e suas extensões de arquivo de certificado SSL. Você descobrirá o significado por trás de cada acrônimo e qual sistema o utiliza com mais frequência.

Formato DER

DER significa Distinguished Encoding Rules (Regras de codificação distintas), um formato de codificação binária, raramente usado fora do Windows. Ele está contido em arquivos .der ou .cer.


Formato PEM

O PEM é o formato de certificado SSL mais popular e aquele que você provavelmente encontrará. A maioria das CAs oferece certificados SSL no formato PEM com diferentes extensões de arquivo de certificado, como .pem, .crt, .cer ou .key.

PEM significa Privacy-Enhanced Email, e você pode estar se perguntando o que o e-mail tem a ver com um certificado SSL? Bem, para resumir a história, o PEM falhou em seu trabalho principal, mas encontrou sua aplicação como formato de contêiner.

Em essência, os arquivos PEM são arquivos DER codificados em Base64, em que zeros e uns são codificados em uma sequência de caracteres imprimíveis. Dessa forma, você pode abri-los com qualquer editor de texto, inclusive o Bloco de Notas.

Um único arquivo .pem pode conter o certificado do servidor, o certificado intermediário e a chave privada. Como alternativa, você pode receber os certificados do servidor e intermediário em um arquivo .crt ou .cer separado, enquanto a chave privada pode residir em um arquivo .key.


Formato PKCS#7

PKCS significa Public Key Cryptography Standards (Padrões de criptografia de chave pública).

O PKCS#7 é um formato de certificado SSL multiuso para a distribuição de dados criptografados. Ele é usado principalmente em plataformas Windows e no Java Tomcat.

Atualmente, estamos usando seu sucessor, o CMS (Cryptographic Message Syntax), mas, assim como no caso do SSL e do TLS, o nome antigo se tornou familiar demais para ser substituído.

O PKSC#7 tem duas extensões de arquivo: .p7b ou p7c. Ao contrário do PEM, o PKCS#7 não pode armazenar chaves privadas, apenas certificados primários e intermediários.


Formato PKCS#12

O PKCS#12 é outro padrão de criptografia pública com segurança aprimorada. Assim como um arquivo PEM, ele pode incluir toda a cadeia de certificados SSL e o par de chaves em um único arquivo .pfx. A principal diferença é que o PCKS#12 é um contêiner protegido por senha.

Alguns sistemas de servidor solicitam que você insira uma senha durante a geração de CSR, e você pode usá-la para abrir arquivos .pfx.


Conversão de formato SSL

Agora que você conhece os formatos de certificado SSL e suas várias extensões de arquivo de certificado, chegou a hora de revelar o que você realmente estava esperando: como converter um certificado SSL em qualquer formato.

Como na maioria das conversões de arquivos, há diferentes maneiras de abordá-las. A maneira mais rápida é usar uma ferramenta de conversão automática de SSL. Tudo o que você precisa fazer é escolher a operação desejada, por exemplo, conversão de PEM para PKCS#7, carregar os arquivos e clicar em Convert.

Como alternativa, você pode usar a biblioteca de software OpenSSL gratuita para converter seus arquivos SSL. Esse utilitário habilita o protocolo SSL/TLS em praticamente qualquer servidor existente. Muitas plataformas e distribuições Linux vêm com o utilitário OpenSSL pré-instalado. Para o Windows, você terá que obter o pacote de instalação.


Converter X.509 em PEM

Para converter X.509 em PEM, execute o seguinte comando no OpenSSL:

openssl x509 -in certificatename.cer -outform PEM -out certificatename.pem


Converter DER em PEM

Codificação binária para Base64 ASCII.

Para converter DER em PEM, execute o seguinte comando:

openssl x509 -inform der -in certificatename.der -out certificatename.pem


Converter PEM em DER

Base65 ASCII para codificação binária.

Para converter PEM em DER, execute o seguinte comando:

openssl x509 -inform der -in certificatename.der -out certificatename.pem


Converter PEM em PKCS#7

O arquivo .p7b não inclui a chave privada.

Para converter PEM em PKCS#7, execute o seguinte comando:

openssl crl2pkcs7 -nocrl -certfile certificatename.pem -out certificatename.p7b -certfile CACert.cer


Converter PKCS#7 em PEM

Para converter PKCS#7 em PEM, execute o seguinte comando:

openssl pkcs7 -print_certs -in certificatename.p7b -out certificatename.pem


Converter PKCS#12 em PEM

O arquivo PKCS#12 é protegido por senha.

Para converter PKCS#12 em PEM, execute o seguinte comando:

openssl pkcs12 -in certificatename.pfx -out certificatename.pem


Converter PKCS7 em PKCS12

Isso requer duas etapas. Primeiro, você converterá o arquivo P7B em CER e, em seguida, combinará o CER e a chave privada em PFX.

  1. openssl pkcs7 -print_certs -in certificatename.p7b -out certificatename.cer
  2. openssl pkcs12 -export -in certificatename.cer -inkey privateKey.key -out certificatename.pfx -certfile cacert.cer

É basicamente isso. Agora você pode converter e instalar rapidamente em seu servidor qualquer tipo de arquivo SSL.


Conclusão

Compreender os formatos de certificados SSL, as extensões de arquivos de certificados e como convertê-los na configuração desejada é uma habilidade valiosa que o ajudará a instalar certificados SSL sem problemas em qualquer sistema.

A escolha do formato SSL correto garantirá uma criptografia estável e conexões seguras em servidores da Web, clientes de e-mail, dispositivos VPN e redes.

Perguntas frequentes

Que extensão de arquivo é usada para um arquivo de backup de certificado exportado?

A extensão de arquivo usada para um arquivo de backup de certificado exportado varia de acordo com o formato e o tipo do certificado. Os arquivos de backup de certificado mais comuns são .p12 e .pfx (sistemas Windows), .cer e .crt e .key para fazer backup da chave privada.

Copiar link

Quais tipos de arquivo de certificado SSL são aceitos pelo APACHE2?

O Apache usa o formato de certificado PEM com extensões de arquivo .cer, .crt e .key.

Copiar link

Como criar o formato ssl-certificate.pem no Linux?

Para criar um certificado SSL no formato PEM no Linux, você pode usar o kit de ferramentas OpenSSL e suas linhas de comando. Depois de receber o certificado SSL da CA, você pode criar o arquivo no formato PEM concatenando a chave privada e o certificado SSL em um único arquivo usando o seguinte comando:

cat private.key your_ssl_certificate.crt > your_ssl_certificate.pem

Copiar link

Como encontrar o formato de um certificado SSL?

Abra seu arquivo SSL com qualquer editor de texto. Se você vir o rótulo “—–BEGIN CERTIFICATE—–” no início do arquivo de certificado e “—–END CERTIFICATE—–” no final do arquivo, então o certificado está no formato PEM. Se o certificado estiver no formato DER, ele não conterá esses rótulos e, em vez disso, será um arquivo binário.

Copiar link

Qual formato de arquivo de certificado contém uma chave privada?

O formato PKCS#12 ou PFX contém os certificados e a chave privada. Esse formato armazena a chave privada e o certificado associado em um único arquivo criptografado.

Copiar link

Como exportar um certificado SSL no formato .pfx?

Escrevemos um guia detalhado sobre como importar e exportar um arquivo PFX no Microsoft IIS (Internet Information Services).

Copiar link

Economize 10% em certificados SSL ao fazer seu pedido hoje!

Emissão rápida, criptografia forte, 99,99% de confiança no navegador, suporte dedicado e garantia de reembolso de 25 dias. Código do cupom: SAVE10

Escrito por

Redator de conteúdo experiente, especializado em certificados SSL. Transformação de tópicos complexos de segurança cibernética em conteúdo claro e envolvente. Contribua para melhorar a segurança digital por meio de narrativas impactantes.