Obtengo archivos externos .pem
que deben convertirse a archivos .p12
- Añado un nombre de usuario y una contraseña en el proceso. (Necesito hacer esto para utilizar la API de una tercera parte.)Convierte SSL .pem a .p12 con o sin OpenSSL
Usando openssl
, el comando es ...
openssl pkcs12 -export -in xxxx.pem -inkey xxxx.pem -out xxx.p12 -passout pas:newpassword -name "newname"
puedo correr esto desde una sesión de terminal y funciona perfectamente.
Sin embargo, tendré que hacer esto a menudo y he escrito una clase de Java que maneja esto y más (mi aplicación es principalmente .jsp
con Tomcat y Apache). Cuando intento ejecutar el mismo comando desde Java usando Runtime.exec
, aparece el temido error "no se puede escribir 'estado aleatorio'" (Using OpenSSL what does "unable to write 'random state'" mean?).
Supongo que la diferencia es que, cuando corro desde Java, el usuario no es "root".
Entonces, ¿hay una forma mejor de convertir de pem a .p12 usando una biblioteca Java en lugar de ejecutar un programa de línea de comando (es decir, openssl)?
De lo contrario, supongo que necesito hacer alguna configuración en mi servidor. No puedo encontrar ningún archivo .md
en ninguna parte del servidor. El único archivo openssl.cnf
se encuentra en un directorio extraño (/etc/pki/tls
). ¿Debo crear un nuevo archivo openssl.cnf
en otro lugar?
'SC' significa proveedor de SpongyCastle. – EpicPandaForce