keytool error: A resposta do certificado não contém chave pública para

3

Comprei recentemente um certificado da GoDaddy para codificar a assinatura de um aplicativo do Adobe Air.

Eu criei um arquivo CSR (Code Signing Request) e enviei para eles. Eles enviaram de volta um arquivo de certificado .spc (formato PKCS # 7).

Estou usando o keytool que vem com o Adobe Air. Aqui estão os comandos que eu usei.

Gerar CSR:

"C:\Program Files (x86)\Adobe\Flex Builder 3\jre\bin\keytool.exe" -genkey -alias codesigncert -keypass password123 -keyalg RSA -keysize 2048 -dname "CN=displayname,O=companyname,C=US,ST=state,L=city" -keystore codesignstore

Importar certificado para keystore:

"C:\Program Files (x86)\Adobe\Flex Builder 3\jre\bin\keytool.exe" -import -alias codesigncert -file cert.spc -keystore codesignstore

Depois de executar este comando, o erro que recebo é:

keytool error: java.lang.Exception: Certificate reply does not contain public key for <codesigncert>

O que poderia ter dado errado?

O guia que estou seguindo é este: link

    
por andyuk 23.11.2009 / 12:40

2 respostas

4

A resposta foi muito simples. O arquivo de certificado não foi gerado pelo arquivo CSR, foi gerado por um arquivo CSR diferente. Eu simplesmente recebi um novo certificado e funcionou.

Após o certificado ser importado para o keystore, eu poderia executar o seguinte comando para assinar o arquivo intermediário do Adobe Air.

adt -sign -alias codesigncert -storetype jks -keystore codesignstore -storepass storepass123 -keypass password123 "C:\myapp\widget.airi" "C:\myapp\widget.air"
    
por 23.11.2009 / 15:27
4

Eu tive um problema semelhante; uma incompatibilidade entre o certificado emitido e o arquivo de solicitação de certificado resultou na mensagem de erro:

keytool error: java.lang.Exception: Certificate reply does not contain public key for <xyzzy>

No meu caso, eu estava usando uma autoridade de certificação diferente, Thawte. A causa do problema foi que quando eu fui ao site de certificados Thawte para pegar meu certificado recém-emitido, o site disse que meu certificado estava pronto para ser baixado, mas curiosamente, por padrão, eles selecionaram um diferente, de dois anos de idade. certificado, não aquele que acabara de ser emitido. Então, baixei o certificado errado. Não foi até que eu fiz:

keytool -printcert -v -file the-pkcs7-file

e vi as datas antigas no certificado que eu percebi o que tinha acontecido. Eu então baixei o arquivo de certificado PKCS7 correto.

    
por 21.03.2012 / 22:05