As interações modernas em rede exigem segurança, especialmente na transferência de dados confidenciais. Em redes abertas como a Internet, as informações podem ser facilmente interceptadas. Métodos de criptografia baseados em chaves simétricas exigem a troca segura dessas chaves — o que é impossível em canais abertos.
A solução foi a criptografia assimétrica: ela utiliza um par de chaves — pública e privada. A chave privada é mantida apenas pelo proprietário, e a chave pública pode ser distribuída livremente. No entanto, se qualquer pessoa pode gerar uma “chave pública”, como garantir que ela realmente pertence ao proprietário correto?
É aqui que entram os certificados: eles associam uma chave pública a informações verificadas sobre o seu proprietário, seja ele um site, uma organização ou um usuário.
O que são certificados e como funcionam?
Um certificado é um arquivo que contém informações sobre o proprietário e sua chave pública. Para evitar substituições maliciosas, esse arquivo é assinado por uma autoridade certificadora (CA). O destinatário confia previamente nas chaves dessa CA e pode confirmar a autenticidade do certificado utilizado pelo remetente.
O formato de certificado mais comum é o X.509. Ele inclui:
- certificado de chave pública;
- nome do proprietário (Common Name, CN);
- período de validade;
- assinatura digital da autoridade certificadora;
- extensões (ex: nomes alternativos, política de uso, etc.).
No Windows, os certificados também aparecem como arquivos com as seguintes extensões:
- .cer, .crt — contêm apenas a chave pública;
- .pfx (ou .p12) — contêm a chave pública e a chave privada;
- .pem — formato de texto amplamente usado em sistemas Linux/UNIX;
- .p7b — contém o caminho da cadeia de certificados;
- .sst — contém todos os certificados raiz e intermediários.
Como visualizar e instalar certificados no Windows?
O Windows possui vários repositórios de certificados:
- Pessoal — contém os certificados do usuário ou da máquina;
- Autoridades de certificação raiz confiáveis — lista das CAs confiáveis;
- CAs intermediárias — emitiram certificados em nome da raiz;
- Outros usuários, serviços, dispositivos, etc.
Você pode visualizá-los usando o snap-in do Windows. Pressione Win + R, digite mmc e pressione Enter. No menu, selecione: Arquivo → Adicionar/remover snap-in. Adicione Certificados, e escolha se deseja visualizar os do usuário atual ou do computador local.
Agora é possível visualizar e gerenciar certificados em diversos repositórios.
Também é possível usar comandos. Abra o PowerShell: Win+X → Terminal/PowerShell
Get-ChildItem Cert:\LocalMachine\Root
Para instalar certificados, basta clicar duas vezes no arquivo .crt ou .pfx. Siga o assistente de instalação e especifique em qual repositório armazenar o certificado.
Você também pode instalar certificados via PowerShell:
Se for um .crt, use:
Para arquivos .pfx, use:
Import-PfxCertificate -FilePath "C:\caminho\cert.pfx" -Password $password -CertStoreLocation "Cert:\LocalMachine\My"
Como criar um certificado autofirmado (self-signed)?
Certificados autofirmados são usados em ambientes de teste ou internos. Eles são criados sem participação de uma autoridade certificadora:
-DnsName "teste.local" `
-CertStoreLocation "Cert:\LocalMachine\My" `
-FriendlyName "Meu Certificado Autofirmado" `
-NotAfter (Get-Date).AddYears(1)
O uso de certificados é a base das comunicações seguras na Internet e em redes corporativas. Saber criar e gerenciar certificados é essencial tanto para administradores de sistemas quanto para desenvolvedores.