Existem muitos recursos disponíveis sobre esse tópico, mas não encontrei nenhum que cubra esse caso um pouco especial.
Eu tenho 4 arquivos;
- privatekey.pem
- certificate.pem
- intermediário_rapidssl.pem
- ca_geotrust_global.pem
E desejo importá-los para um keystore novo.
Alguns sites sugerem usar o formato DER e importá-los um por um, mas isso falhou porque a chave não é reconhecida.
Outro site sugeriu uma classe "ImportKey" especial para executar a importação, e isso funcionou até que vi que a cadeia estava quebrada. Ou seja, o comprimento da corrente no certificado é 1, ignorando o intermediário e ca.
Alguns sites sugerem o PKCS7, mas não consigo nem obter uma cadeia disso. Outros sugerem o formato PKCS12, mas, no que diz respeito aos meus testes, também falhou em obter toda a cadeia.
Qualquer conselho ou sugestão é muito bem-vindo.
fonte
alias <root> already exists
) Você pode tentar com um novo armazenamento de chaves vazio?Concatene todos os arquivos * .pem em um arquivo pem, como all.pem Em seguida, crie o keystore no formato p12 com chave privada + all.pem
Em seguida, exporte p12 para jks
fonte
O keytool não fornece uma maneira de importar certificado + chave privada de um único arquivo (combinado), conforme proposto acima. Ele funciona bem, mas apenas o certificado é importado, enquanto a chave privada é ignorada. Você pode verificá-lo
keytool -list -v -keystore yourkeystore.jks
- o tipo de entrada do seu domínio é TrustedCertEntry, não PrivateKeyEntry.Portanto, para resolver o problema inicial, é necessário primeiro criar um keystore PKCS # 12 usando openssl (ou ferramenta similar) e depois importar o keystore
keytool -importkeystore
.fonte