Passo a passo para processo de conversão de certificados digitais (.pfx) utilizando o OpenSSL no Windows.


Problema: Ao tentar utilizar/ler um certificado digital, pode ocorrer a exceção abaixo:

"System.Security.Cryptography.CryptographicException"

Rotinas: 657,232

Exemplos de mensagens de erro relacionado:






Pré-requisitos

• Acesso administrativo ao Windows (PowerShell como Administrador).
• Instalador do OpenSSL (Win64OpenSSL_Light-3_5_1.exe).
• Arquivo .pfx do certificado e a senha correspondente (frequentemente em info.txt).


Passo - 1. Instalar software OpenSSL

Fonte: https://slproweb.com/products/Win32OpenSSL.html
Win64OpenSSL_Light-3_5_1.exe

Disponível também no Teams: Geral > Aplicativos > Documentos Fiscais


Abaixo passo a passo para instalação OpenSSL.


Interface gráfica do usuário, Texto, Aplicativo

O conteúdo gerado por IA pode estar incorreto.

 

Aceitar os termos de uso clicar em "Next"

 

Interface gráfica do usuário, Texto, Aplicativo

O conteúdo gerado por IA pode estar incorreto.

 

Prosseguir clicando em "Next"

 

Interface gráfica do usuário, Texto, Aplicativo

O conteúdo gerado por IA pode estar incorreto.

 

Prosseguir clicando em "Next"

 

Interface gráfica do usuário, Aplicativo

O conteúdo gerado por IA pode estar incorreto.


Desmarcar todos check-box e clicar em Finish



Passo - 2. Criar diretório para conversão via Power Shell

 

Criar pasta para conversão do certificado conforme exemplo abaixo: 

"C:\CertificadosConvertidosSSL"

Após criar o diretório copiar o certificado que será convertido para o diretório conforme exemplo


Tela de celular com aplicativo aberto

O conteúdo gerado por IA pode estar incorreto.


Executar o Power Shell como administrador



Navegar até o diretório criado conforme exemplo de comando abaixo:


cd C:\CertificadosConvertidosSSL


 

Texto

O conteúdo gerado por IA pode estar incorreto.



Exemplo de comando a ser executado no Power Shell



& "C:\Program Files\OpenSSL-Win64\bin\openssl.exe" pkcs12 -in "C:\CertificadosConvertidosSSL\CERTIFICADO_TESTE.pfx" -nokeys -out "certificado_teste_certificado.cer" -passin "pass:SenhaDoCertificadoAqui"

& "C:\Program Files\OpenSSL-Win64\bin\openssl.exe" pkcs12 -in "C:\CertificadosConvertidosSSL\CERTIFICADO_TESTE.pfx" -nocerts -out "certificado_teste_chave.pem" -passin "pass:SenhaDoCertificadoAqui" -passout "pass:SenhaDoCertificadoAqui"

& "C:\Program Files\OpenSSL-Win64\bin\openssl.exe" rsa -inform PEM -in "certificado_teste_chave.pem" -out "certificado_teste_chave.rsa" -passin "pass:SenhaDoCertificadoAqui" -passout "pass:SenhaDoCertificadoAqui"

& "C:\Program Files\OpenSSL-Win64\bin\openssl.exe" pkcs12 -export -in "certificado_teste_certificado.cer" -inkey "certificado_teste_chave.rsa" -out "CERTIFICADO_TESTE_CONVERTIDO.pfx" -passin "pass:SenhaDoCertificadoAqui" -passout "pass:SenhaDoCertificadoAqui"



Editar campos:

- Nome do arquivo com ".pfx" para o nome do certificado correto que será convertido.
- pass: Senha do certificado do cliente geralmente disponível no arquivo "info.txt"




Após executado o comando o certificado convertido estará disponível no diretório.



Certificado convertido disponível para importação no Windows.


Passo - 3. Importação e Exportação de Certificado convertido



Processo de importação local de certificado digital. No certificado convertido dar 2 clicks e prosseguir com o passo a passo abaixo.

 


IMPORTAÇÃO

 

Interface gráfica do usuário, Texto, Aplicativo

O conteúdo gerado por IA pode estar incorreto.

 

 Clicar em avançar


Interface gráfica do usuário, Texto, Aplicativo

O conteúdo gerado por IA pode estar incorreto.

 

Prosseguir clicando em avançar

 

Interface gráfica do usuário, Texto, Aplicativo, Email

O conteúdo gerado por IA pode estar incorreto.


Digitar senha (disponível no arquivo info.txt)
Marcar os check-box:
 - Marcar esta chave como exportável. 

 - Incluir todas as propriedades estendidas.



 

Interface gráfica do usuário, Texto, Aplicativo, Email

O conteúdo gerado por IA pode estar incorreto.


 Selecionar opção: Selecionar automaticamente o repositório de certificados conforme o tipo de certificado e clicar em avançar


 

Interface gráfica do usuário, Texto, Aplicativo, Email

O conteúdo gerado por IA pode estar incorreto.


Após avançar, a importação será concluída.





EXPORTAÇÃO


Abaixo processo de exportação de certificado local.


 
Acessar menu iniciar e pesquisar por "Gerenciar Certificados do Computador" ou executar o comando "certmgr".

conforme exemplo abaixo:





Localizar o certificado convertido que foi importado



 

 

Clicar com o botão direito sobre o certificado > Todas as Tarefas > Exportar ...



Seguir conforme passo a passo de exportação abaixo

 

 

Interface gráfica do usuário, Texto, Aplicativo, Email

O conteúdo gerado por IA pode estar incorreto.


Clicar em avançar


 

 

Interface gráfica do usuário, Texto, Aplicativo, Email

O conteúdo gerado por IA pode estar incorreto.



Marcar "Sim, exportar a chave privada"

 

 Interface gráfica do usuário, Texto, Aplicativo, Email

O conteúdo gerado por IA pode estar incorreto.


Marcar os check-box:

- Incluir todos os certificados no caminho de certificação se possível
- Exportar todas as propriedades estentidas

- Habilitar privacidade de certificados

 

Interface gráfica do usuário, Texto, Aplicativo

O conteúdo gerado por IA pode estar incorreto.

 

Marcar check-box
- Senha
Inserir a mesma senha disponível no arquivo info.txt

 

Interface gráfica do usuário, Texto, Aplicativo, Email

O conteúdo gerado por IA pode estar incorreto.


Descrever nome do certificado exportado e salva-lo em um diretório.


 

Interface gráfica do usuário, Texto, Aplicativo

O conteúdo gerado por IA pode estar incorreto.

 

Para finalizar a exportação, clicar em "Concluir".

 

Após exportado o certificado pode ser importado no MOVERE via rotina 1210.