Problema SSL: a chave privada não corresponde à chave pública fornecida

2

Eu segui as instruções descritas aqui da amazon.

Um breve resumo:

  1. Criado uma chave privada openssl genrsa -out my-private-key.pem 2048

  2. Criamos um CSR openssl req -sha256 -new -key my-private-key.pem -out csr.pem

Tenho um zip da CA (Comodo no meu caso) que incluía

  • my-site.crt
  • três arquivos que representam a cadeia de certificados.

Pergunta 1: Executando os dois comandos a seguir para verificar se o certificado corresponde à chave privada, obtenho códigos MD5 diferentes

openssl rsa -noout -modulus -in my-private-key.pem | openssl md5
openssl x509 -noout -modulus -in my-site.crt | openssl md5

Ou seja. as chaves não correspondem. Alguma ideia do porquê?

Pergunta 2: Em muitos lugares, notei que a documentação pede para converter o arquivo de chave em um arquivo pem usando o seguinte comando

openssl rsa -in my-private-key.pem -outform PEM > aws.private.pem

No entanto, o arquivo de saída é exatamente o mesmo que a entrada. Então, por que isso?

O mesmo para o arquivo crt que recebi da CA

openssl x509 -inform PEM -in my-site.crt > aws.public.pem

Mais uma vez, o arquivo de saída é exatamente o mesmo que a entrada apenas com extensão diferente.

São / Por que essas duas etapas são necessárias?

Obrigado

    
por nsof 05.06.2015 / 09:39

1 resposta

1

Pergunta 1

Veja meu comentário

Questão 2

O primeiro comando ( openssl rsa ) remove a criptografia do arquivo de chaves (se houver um). Isso é necessário, porque os servidores da Web geralmente usam um arquivo de chaves não criptografado.

A única coisa que o segundo comando ( openssl x509 ) pode fazer é alterar o cabeçalho PEM, mas provavelmente não é necessário dessa forma. Se você usou -inform der no comando, ele converteria um certificado binário em um codificado PEM (base64 + header).

As opções -outform PEM e -inform PEM de seus comandos são inúteis, a propósito, já que este é o comportamento padrão do openssl

    
por 27.01.2017 / 10:08