¿Cuál es la diferencia entre un archivo de certificado .jks y un archivo .cer? ¿Es posible convertir de uno a otro?

JKS significa J ava K ey S tore. Es un repositorio de certificados (claves públicas firmadas) y claves [privadas]. Puede exportar un certificado almacenado en un archivo JKS a un archivo de certificado. Puede utilizar la utilidad ” keytool ” que se encuentra en las distribuciones de Java para mantener su confianza JKS y repositorios de claves. Al igual que otros tipos de repositorios de claves (p. Ej., PKCS12, CMS), un repositorio JKS está protegido por una contraseña porque puede contener claves privadas, que deben protegerse porque se utilizan para descifrar información cifrada por claves públicas. Las claves [privadas] en los repositorios también están protegidas por una “contraseña de clave”, que puede ser la misma que la contraseña del repositorio de claves (no es una buena práctica).

El siguiente comando exportaría el certificado asociado con el alias / etiqueta ” mycert ” en el archivo JKS ” mykeys.jks “. El archivo de salida ” mycert.cer ” contendría el certificado (es decir, la clave pública firmada) solamente.

keytool -exportcert -rfc -alias mycert -file mycert.cer -keystore mykeys.jks -storepass passw0rd

El archivo .Jks es solo la extensión de archivo de los archivos de almacenamiento en su almacén de claves que obviamente se usa en TOMCAT y el servidor web basado en Java. Mientras que los archivos .cer son los archivos de certificados directos emitidos por la autoridad de certificación. No puede convertir un archivo .cer a archivos .jks.

JSK es un algoritmo que ejecuta el motor de pulsación de teclas desarrollado por SUN Provider – http://goo.gl/oBJwFX

.jks es el formato de archivo del algoritmo JKS .

.cer es un archivo de certificado que contiene información del propietario del certificado junto con la clave pública y la clave privada.

JKS – Tienda de claves Java. Su forma Java de almacenar la información relevante.
.CER – Archivo de certificado, es decir, public ckey.
Puede convertir de CER a JKS ya que solo está convirtiendo la clave pública. Tanto las herramientas de línea de comandos como la API te permitirán hacer eso.
No creo que pueda acceder a la clave privada desde el archivo JKS incluso con contraseña (con el propósito de exportar). Podría estar equivocado. Hace un tiempo me encontré con problemas de conversión y terminé usando el formato P12 ya que pude usar el mismo archivo P12 tanto de Java como de .NET e incluso puedo usar herramientas OpenSSL.
Si está buscando una forma independiente de la plataforma para usar la clave asimétrica, P12 es su mejor opción. Puede importarlos a cualquier herramienta / plataforma sin ningún problema y usar API nativa para extraer la clave pública (.CER).

Puede convertir a p12 y exportar claves.

keytool -importkeystore -srckeystore keystore.jks -destkeystore keystore.p12 -deststoretype PKCS12 -srcalias 1 -deststorepass contraseña -destkeypass contraseña

openssl pkcs12 -in keystore.p12 -nokeys -out crt_file.crt

openssl pkcs12 -in keystore.p12 -nocerts -out key_file.pem

jks significa Java Keystore y .cer significa certificado … .jks está en el formato propio de Oracle / SUN y .cer está en formato X509 (creo que tengo el documento X correcto) … utiliza la herramienta Java Key para convertir entre ellos