Hay muchos recursos sobre este tema, pero ninguno que encontré cubre este caso un poco especial.
Tengo 4 archivos;
- privatekey.pem
- certificado.pem
- Intermedia_rapidssl.pem
- ca_geotrust_global.pem
Y deseo importarlos a un nuevo almacén de claves.
Algunos sitios sugieren usar el formato DER e importarlos uno por uno, pero esto falló porque no se reconoce la clave.
Otro sitio sugirió una clase especial "ImportKey" para ejecutar para importación, y esto funcionó hasta que vi que la cadena está rota. Es decir, la longitud de la cadena en el certificado es 1, ignorando el intermedio y ca.
Algunos sitios sugieren PKCS7, pero ni siquiera puedo obtener una cadena de eso. Otros sugieren el formato PKCS12, pero en lo que respecta a mis pruebas, eso también falló para obtener toda la cadena.
Cualquier consejo o sugerencia son bienvenidos.
fuente
alias <root> already exists
) ¿Puedes probar con un nuevo almacén de claves vacío?Concatene todos los archivos * .pem en un archivo pem, como all.pem. Luego cree un almacén de claves en formato p12 con clave privada + all.pem
Luego exporta p12 a jks
fuente
keytool no proporciona una forma de importar certificado + clave privada desde un único archivo (combinado), como se propuso anteriormente. Funciona bien, pero solo se importa el certificado, mientras que la clave privada se ignora. Puede verificarlo: su
keytool -list -v -keystore yourkeystore.jks
tipo de entrada de dominio es TrustedCertEntry, no PrivateKeyEntry.Entonces, para resolver el problema inicial, primero se debe crear un almacén de claves PKCS # 12 usando openssl (o una herramienta similar), luego importar el almacén de claves con
keytool -importkeystore
.fuente