Rodrigo L.G. - Bit4id escribió:
El error se produce en el método load de la clase PKCS11KeyStore, en la línea que está en cursiva: public void load(InputStream in, char[] pin) throws KeyStoreException, NoSuchAlgorithmException, IOException, CertificateException, Exception { if ( !privateInitialize ) { if ( pin != null && in != null ){ if (_pk11provider== null){ [1] _pk11provider = new sun.security.pkcs11.SunPKCS11(in); Security.addProvider(_pk11provider); _p11KeyStore = KeyStore.getInstance("PKCS11", _pk11provider); if (!helper) _name= _pk11provider.getName(); } _p11KeyStore.load(null, pin); privateInitialize= true; } } } El debug del Eclipse me ofrece la siguiente información tras ejecutar la línea [1] _pk11provider SunPKCS11 (id=32) config Config (id=43) allowSingleThreadedModules true description null disabledMechanisms null enabledMechanisms null explicitCancel true handleStartupErrors 1 insertionCheckInterval 2000 keyStoreCompatibilityMode true library "c:\\windows\\system32\\aetpkss1.dll" (id=46) name "USER-PKCS11" (id=47) nssArgs null omitInitialize false parsedKeywords null reader null showInfo false slotID -1 slotListIndex -1 st null templateManager null configName "---DummyConfig-1---" (id=45) count 4 defaults null entrySet null entrySet null entrySetCallCount 0 info "SunPKCS11-USER-PKCS11 using library c:\\windows\\system32\\aetpkss1.dll" (id=50) keySet null legacyChanged false legacyMap null legacyStrings null loadFactor 0.75 LOCK_HANDLER Object (id=51) modCount 4 name "SunPKCS11-USER-PKCS11" (id=52) p11 PKCS11 (id=53) pHandler null poller SunPKCS11$TokenPoller (id=55) removable true serviceMap null servicesChanged false serviceSet null slotID 52481 table Hashtable$Entry<K,V>[11] (id=57) threshold 8 token null values null version 1.5 No entiendo el origen del error; os explico la configuración detallada de mis pruebas: + Lector de tarjetas SCM33xx USB + Smartcard de IZENPE; el proveedor criptográfico es de SafeSign, librería aetpkss1.dll + El certificado aparece registrado bajo el dispositivo de seguridad "Safesign PKCS #11 Library", y apunta a la DLL del apartado anterior. El certificado aparece listado con la entrada "IZENPE", y puedo iniciar la sesión manualmente normalmente: me pide el PIN y el certificado aparece en la pestaña de "Certificados". Se limita a decir java.security.KeyStoreException: PKCS11 not foundSaludos |
_______________________________________________ CryptoApplet mailing list [email protected] http://llistes.uji.es/mailman/listinfo/cryptoapplet
