Author Image

afviriato

Sep 17, 2024

Problemas na Conversão de Certificados no Java8

certificado.p12.pem.jksJava8conversãosenha

Bom dia. Estamos tendo problemas com o formato do certificado. Tanto o .p12 quanto o .pem estão gerando erros de formato inválido. Usamos o Java8 e o padrão dele é o .jks. Tentei efetuar a conversão mas, sem sucesso. O erro que é encontrado na conversão é como se a senha que foi colocada (o .jks pede uma senha pro certificado destino) estivesse errada, mas não está.
Alguém já passou por algo parecido?
imagem enviada na mensagem pelo usuario afviriato

Respostas (7):
Avatar discord do usuario guilherme_efi

guilherme_efi

17/09/2024

Oi, @afviriato. Bom dia!
Você está inserindo alguma senha? A senha do certificado é em branco, então, quando pedir a senha, é só pressionar Enter para continuar.

Avatar discord do usuario afviriato

afviriato

17/09/2024

Sim, a senha do certificado atual é em branco, mas pra converter pro .jks, a ferramenta pede uma senha.

Avatar discord do usuario guilherme_efi

guilherme_efi

17/09/2024

Entendi. Primeiro, tente usar o comando openssl para adicionar uma senha ao seu certificado .p12:

bash
openssl pkcs12 -in certificado.p12 -out certificado_com_senha.p12 -export -password pass:NovaSenha
Depois, tente fazer essa conversão para .jks

Avatar discord do usuario afviriato

afviriato

17/09/2024

O problema não é a senha do .p12 é o formato. Ele não tá reconhece o formato .p12

Avatar discord do usuario guilherme_efi

guilherme_efi

17/09/2024

Tente então primeiro converter para .pem inserindo uma senha, e depois faça a conversão para .jks

bash
openssl pkcs12 -in path.p12 -out newfile.crt.pem -clcerts -nokeys -password pass:NovaSenha

Avatar discord do usuario afviriato

afviriato

17/09/2024

@guilherme_efi , exatamente com esse comando, não consegui. Mas, o problema da conversão realmente é pq o certificado não tem senha, então ajustei os parâmetros do keytool e funcionou. Consegui autenticar na api PIX. Vou deixar os passos aqui, caso mais alguém precise:

openssl pkcs12 -in -out certificado_temporario.pem -nodes
Enter Import Password:

openssl pkcs12 -export -out -in certificado_temporario.pem
Enter Export Password:
Verifying - Enter Export Password:

E, para converter o .p12 em .jks:

keytool -importkeystore -srckeystore .p12 -srcstoretype pkcs12 -destkeystore .jks -deststoretype jks

Avatar discord do usuario guilherme_efi

guilherme_efi

17/09/2024

Entendido. Que bom que deu certo! Muito obrigado por compartilhar a solução com nossa comunidade!