2010-06-02 13 views
5

¿Alguien sabe si es posible cargar una KeyStore para que solo solicite la contraseña para el alias dado?Cargar Java KeyStore para un alias?

Ejemplo:

En mi almacén de claves tengo dos claves privadas: certificado de cifrado de Alice y Bob certificado de cifrado.

cuando cargo mi almacén de claves:

keyStore = KeyStore.getInstance("Windows-MY", "SunMSCAPI"); 
keyStore.load(null); 

me pide por tanto de Alice y la contraseña del almacén de claves de Bob. Una vez que se ingresan, puedo usar getKey("Alice's Encryption Certificate", null); para recuperar la clave privada de Alice. Mis llaves están protegidas por el Proveedor de seguridad de Entrust, es quien me solicita las contraseñas al cargar el almacén de claves. Si no ingreso la contraseña de Bob e intento obtener su clave, devolverá nulo, lo cual está bien, pero me gustaría evitar la solicitud de contraseña.

¿Es posible especificar de alguna manera que solo quiero la clave de Alice antes de cargar el almacén de claves, así que nunca me preguntan por la contraseña de Bob?

Gracias.

+1

hm, ¿dónde te preguntan sobre las contraseñas de ambos? – Bozho

+0

Mis llaves están protegidas por el Proveedor de seguridad de Entrust, me solicita ambas contraseñas. –

+0

cómo? ¿Estás haciendo esto con código (muestra todo el código relacionado), o mediante keytool? – Bozho

Respuesta

3

Tuvimos el mismo problema y no pudimos encontrar la forma de hacerlo. Básicamente, usted está preguntando si hay una forma de cargar el almacén de claves parcialmente. Hace las cosas más complicadas que el proveedor de MSCAPI ignore cualquier contraseña que proporcione.

Solucionamos el problema almacenando solo una clave Con el almacén de claves MSCAPI. Resulta que esto funciona mejor con el modelo de seguridad de Smartcard también.

+0

Simplemente tonto, debería solicitar una contraseña cuando intente exportar una clave privada, no solo cargue la tienda. Gracias ZZ, dejaré esta pregunta abierta para otro día para ver si alguien tiene una respuesta, si no, aceptaré la tuya. –

+0

Tuvimos el mismo problema, aunque borrar el MY keystore no era posible ya que otros sistemas dependen de certificados estáticos instalados además del token USB. Tuvimos que crear un servicio que lo cargue y elimine otras claves. Además, encontramos una forma de enganchar los eventos USB y ser notificados sobre la inserción y eliminación de una clave, esto nos permitió avanzar en la limpieza de la casa y reducir un poco la cantidad de ventanas emergentes, aunque todavía no las eliminamos por completo. – Newtopian

Cuestiones relacionadas