A criar um ficheiro. p12

Usando openssl, criei uma chave privada como se segue:

openssl genrsa -out myKey.pem

Então, para gerar o csr exigido pela CA, executei o seguinte:

openssl req -new -key myKey.pem -out cert.csr

A AC respondeu com um certificado que eu guardei num ficheiro chamado myCert.cer

Agora gostaria de juntar os componentes necessários (chave privada, chave pública?) e certificado) num único .p12. Para isso, fiz o seguinte:

openssl pkcs12 -export -out keyStore.p12 -inkey myKey.pem -in myCert.cer
Mas estou a receber o seguinte erro. mensagem:

No certificate matches private key
Como posso conseguir isto?

Author: Tom, 2014-01-15

1 answers

A openssl a documentation diz que o ficheiro fornecido como argumento -in deve estar no formato PEM.

Acontece que, ao contrário do manual da AC, o certificado devolvido pela AC que armazenei em myCert.cer não é o formato PEM, mas sim O PKCS7.

Para criar o meu .p12, tive de converter primeiro o certificado para PEM.:
openssl pkcs7 -in myCert.cer -print_certs -out certs.pem

E depois executar

openssl pkcs12 -export -out keyStore.p12 -inkey myKey.pem -in certs.pem
 26
Author: Isaac Kleinman, 2014-01-15 17:51:35