En última instancia, .keystore
y .jks
son sólo extensiones de archivo: le toca a usted para nombrar sus archivos con sensatez. Algunas aplicaciones utilizan un archivo de almacén de claves almacenado en $HOME/.keystore
: por lo general implica que es un archivo JKS, ya que JKS is the default keystore type in the Sun/Oracle Java security provider. No todo el mundo usa la extensión .jks
para archivos JKS, porque está implícita como la predeterminada. Recomiendo usar la extensión, solo para recordar qué tipo especificar (si es necesario).
En Java, la palabra almacén de claves puede tener cualquiera de los siguientes significados, dependiendo del contexto:
al hablar sobre el archivo y almacenamiento, esto no es realmente un Stora instalación ge para pares clave/valor (hay muchos u otros formatos para esto). Más bien, es un contenedor para almacenar claves y certificados criptográficos (creo que algunos de ellos también pueden almacenar contraseñas). En general, estos archivos están encriptados y protegidos con contraseña para no permitir que estos datos estén disponibles para terceros no autorizados.
Java usa su clase KeyStore
y la API relacionada para hacer uso de un almacén de claves (whether it's file based or not). JKS
es un formato de archivo específico de Java, pero la API también se puede usar con otros tipos de archivos, generalmente PKCS # 12. Cuando desee cargar un almacén de claves, debe especificar su tipo de almacén de claves.Las extensiones convencionales serían:
.jks
para el tipo "JKS"
,
.p12
o .pfx
para el tipo "PKCS12"
(el nombre especificación es PKCS # 12, pero el #
no se utiliza en el almacén de claves nombre de tipo Java).
Además, BouncyCastle también proporciona sus implementaciones, en particular BKS (típicamente utilizando la extensión de .bks
), que se utiliza con frecuencia para aplicaciones de Android.
Diría que el tipo de * keystore * predominante es JKS, no PKCS # 12, solo porque la palabra "keystore" es parte de la terminología de Java, raramente utilizada fuera del contexto de Java. Dicho esto, los archivos PKCS # 12 son bastante comunes (típicamente '.pfx' o' .p12'). – Bruno
@ Bruno: te refieres al tipo predominante en aplicaciones Java. – Cratylus
No, quiero decir que la palabra "keystore" es en su mayoría una palabra de Java. Otras aplicaciones/plataformas raramente llaman al lugar/archivo donde las claves y los certificados almacenan un "almacén de claves". MS llama a los archivos PKCS # 12 Archivos de "Intercambio de información personal", por ejemplo. Otros tienen nombres como "cadena de claves" (OSX), "base de datos de certificados" (NSS), "almacén de certificados", "llaveros", ..., para los lugares donde almacenan claves y certificados, no realmente "almacén de claves". – Bruno