Hi, I am trying use nss for obtaining keystore with user certificates from firefox but i am ending with java.security.ProviderException: Library / home/xxx/.mozilla/firefox/16zcyg70.default/libnssckbi.so does not exist. For creating SunPKCS11 provider I've used following configuration: name=FireFox nssLibraryDirectory=/usr/lib/ nssSecmodDirectory=/home/xxx/.mozilla/firefox/16zcyg70.default/ nssDbMode=readOnly nssModule=keystore attributes=compatibility
When i copy libnssckbi.so to firefox profile dir, program runs ok. And from debug i get this: SunPKCS11 loading ---DummyConfig-1--- NSS modules: [NSS Internal PKCS #11 Module (CRYPTO, libsoftokn3.so, slot 0), NSS Internal PKCS #11 Module (KEYSTORE, libsoftokn3.so, slot 1), Root Certs (TRUSTANCHOR, /home/hosp/.mozilla/firefox/ oml0p6w4.default/libnssckbi.so, slot 0)] sunpkcs11: Initializing PKCS#11 library libsoftokn3.so Information for provider SunPKCS11-FireFox Library info: cryptokiVersion: 2.20 manufacturerID: Mozilla Foundation flags: 0 libraryDescription: NSS Internal Crypto Services libraryVersion: 3.12 All slots: 1, 2 Slots with tokens: 1, 2 Slot info for slot 2: slotDescription: NSS User Private Key and Certificate Services manufacturerID: Mozilla Foundation flags: CKF_TOKEN_PRESENT hardwareVersion: 3.12 firmwareVersion: 0.00 Token info for token in slot 2: label: NSS Certificate DB manufacturerID: Mozilla Foundation model: NSS 3 serialNumber: 0000000000000000 flags: CKF_RNG | CKF_LOGIN_REQUIRED | CKF_USER_PIN_INITIALIZED | CKF_DUAL_CRYPTO_OPERATIONS | CKF_TOKEN_INITIALIZED ulMaxSessionCount: CK_EFFECTIVELY_INFINITE ulSessionCount: 1 ulMaxRwSessionCount: CK_EFFECTIVELY_INFINITE ulRwSessionCount: 0 ulMaxPinLen: 255 ulMinPinLen: 0 ulTotalPublicMemory: 1 ulFreePublicMemory: 1 ulTotalPrivateMemory: 1 ulFreePrivateMemory: 1 hardwareVersion: 0.00 firmwareVersion: 0.00 utcTime: 0000000000000000 Mechanism CKM_RSA_PKCS_KEY_PAIR_GEN: ulMinKeySize: 128 ulMaxKeySize: 4294967295 flags: 65536 = CKF_GENERATE_KEY_PAIR Mechanism CKM_RSA_PKCS: ulMinKeySize: 128 ulMaxKeySize: 4294967295 flags: 424704 = CKF_ENCRYPT | CKF_DECRYPT | CKF_SIGN | CKF_SIGN_RECOVER | CKF_VERIFY | CKF_VERIFY_RECOVER | CKF_WRAP | CKF_UNWRAP Mechanism CKM_RSA_X_509: ulMinKeySize: 128 ulMaxKeySize: 4294967295 flags: 424704 = CKF_ENCRYPT | CKF_DECRYPT | CKF_SIGN | CKF_SIGN_RECOVER | CKF_VERIFY | CKF_VERIFY_RECOVER | CKF_WRAP | CKF_UNWRAP Mechanism CKM_MD2_RSA_PKCS: ulMinKeySize: 128 ulMaxKeySize: 4294967295 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_MD5_RSA_PKCS: ulMinKeySize: 128 ulMaxKeySize: 4294967295 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_SHA1_RSA_PKCS: ulMinKeySize: 128 ulMaxKeySize: 4294967295 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_SHA256_RSA_PKCS: ulMinKeySize: 128 ulMaxKeySize: 4294967295 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_SHA384_RSA_PKCS: ulMinKeySize: 128 ulMaxKeySize: 4294967295 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_SHA512_RSA_PKCS: ulMinKeySize: 128 ulMaxKeySize: 4294967295 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_DSA_KEY_PAIR_GEN: ulMinKeySize: 512 ulMaxKeySize: 1024 flags: 65536 = CKF_GENERATE_KEY_PAIR Mechanism CKM_DSA: ulMinKeySize: 512 ulMaxKeySize: 1024 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_DSA_SHA1: ulMinKeySize: 512 ulMaxKeySize: 1024 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_DH_PKCS_KEY_PAIR_GEN: ulMinKeySize: 128 ulMaxKeySize: 2236 flags: 65536 = CKF_GENERATE_KEY_PAIR Mechanism CKM_DH_PKCS_DERIVE: ulMinKeySize: 128 ulMaxKeySize: 2236 flags: 524288 = CKF_DERIVE Mechanism CKM_RC2_KEY_GEN: ulMinKeySize: 1 ulMaxKeySize: 128 flags: 32768 = CKF_GENERATE Mechanism CKM_RC2_ECB: ulMinKeySize: 1 ulMaxKeySize: 128 flags: 393984 = CKF_ENCRYPT | CKF_DECRYPT | CKF_WRAP | CKF_UNWRAP Mechanism CKM_RC2_CBC: ulMinKeySize: 1 ulMaxKeySize: 128 flags: 393984 = CKF_ENCRYPT | CKF_DECRYPT | CKF_WRAP | CKF_UNWRAP Mechanism CKM_RC2_MAC: ulMinKeySize: 1 ulMaxKeySize: 128 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_RC2_MAC_GENERAL: ulMinKeySize: 1 ulMaxKeySize: 128 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_RC2_CBC_PAD: ulMinKeySize: 1 ulMaxKeySize: 128 flags: 393984 = CKF_ENCRYPT | CKF_DECRYPT | CKF_WRAP | CKF_UNWRAP Mechanism CKM_DES_KEY_GEN: ulMinKeySize: 8 ulMaxKeySize: 8 flags: 32768 = CKF_GENERATE Mechanism CKM_DES_ECB: ulMinKeySize: 8 ulMaxKeySize: 8 flags: 393984 = CKF_ENCRYPT | CKF_DECRYPT | CKF_WRAP | CKF_UNWRAP Mechanism CKM_DES_CBC: ulMinKeySize: 8 ulMaxKeySize: 8 flags: 393984 = CKF_ENCRYPT | CKF_DECRYPT | CKF_WRAP | CKF_UNWRAP Mechanism CKM_DES_MAC: ulMinKeySize: 8 ulMaxKeySize: 8 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_DES_MAC_GENERAL: ulMinKeySize: 8 ulMaxKeySize: 8 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_DES_CBC_PAD: ulMinKeySize: 8 ulMaxKeySize: 8 flags: 393984 = CKF_ENCRYPT | CKF_DECRYPT | CKF_WRAP | CKF_UNWRAP Mechanism CKM_DES2_KEY_GEN: ulMinKeySize: 24 ulMaxKeySize: 24 flags: 32768 = CKF_GENERATE Mechanism CKM_DES3_KEY_GEN: ulMinKeySize: 24 ulMaxKeySize: 24 flags: 32768 = CKF_GENERATE Mechanism CKM_DES3_ECB: ulMinKeySize: 24 ulMaxKeySize: 24 flags: 393984 = CKF_ENCRYPT | CKF_DECRYPT | CKF_WRAP | CKF_UNWRAP Mechanism CKM_DES3_CBC: ulMinKeySize: 24 ulMaxKeySize: 24 flags: 393984 = CKF_ENCRYPT | CKF_DECRYPT | CKF_WRAP | CKF_UNWRAP Mechanism CKM_DES3_MAC: ulMinKeySize: 24 ulMaxKeySize: 24 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_DES3_MAC_GENERAL: ulMinKeySize: 24 ulMaxKeySize: 24 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_DES3_CBC_PAD: ulMinKeySize: 24 ulMaxKeySize: 24 flags: 393984 = CKF_ENCRYPT | CKF_DECRYPT | CKF_WRAP | CKF_UNWRAP Mechanism CKM_CDMF_KEY_GEN: ulMinKeySize: 8 ulMaxKeySize: 8 flags: 32768 = CKF_GENERATE Mechanism CKM_CDMF_ECB: ulMinKeySize: 8 ulMaxKeySize: 8 flags: 393984 = CKF_ENCRYPT | CKF_DECRYPT | CKF_WRAP | CKF_UNWRAP Mechanism CKM_CDMF_CBC: ulMinKeySize: 8 ulMaxKeySize: 8 flags: 393984 = CKF_ENCRYPT | CKF_DECRYPT | CKF_WRAP | CKF_UNWRAP Mechanism CKM_CDMF_MAC: ulMinKeySize: 8 ulMaxKeySize: 8 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_CDMF_MAC_GENERAL: ulMinKeySize: 8 ulMaxKeySize: 8 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_CDMF_CBC_PAD: ulMinKeySize: 8 ulMaxKeySize: 8 flags: 393984 = CKF_ENCRYPT | CKF_DECRYPT | CKF_WRAP | CKF_UNWRAP Mechanism CKM_AES_KEY_GEN: ulMinKeySize: 16 ulMaxKeySize: 32 flags: 32768 = CKF_GENERATE Mechanism CKM_AES_ECB: ulMinKeySize: 16 ulMaxKeySize: 32 flags: 393984 = CKF_ENCRYPT | CKF_DECRYPT | CKF_WRAP | CKF_UNWRAP Mechanism CKM_AES_CBC: ulMinKeySize: 16 ulMaxKeySize: 32 flags: 393984 = CKF_ENCRYPT | CKF_DECRYPT | CKF_WRAP | CKF_UNWRAP Mechanism CKM_AES_MAC: ulMinKeySize: 16 ulMaxKeySize: 32 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_AES_MAC_GENERAL: ulMinKeySize: 16 ulMaxKeySize: 32 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_AES_CBC_PAD: ulMinKeySize: 16 ulMaxKeySize: 32 flags: 393984 = CKF_ENCRYPT | CKF_DECRYPT | CKF_WRAP | CKF_UNWRAP Mechanism Unknown 0x0000000000000550: ulMinKeySize: 16 ulMaxKeySize: 32 flags: 32768 = CKF_GENERATE Mechanism Unknown 0x0000000000000551: ulMinKeySize: 16 ulMaxKeySize: 32 flags: 393984 = CKF_ENCRYPT | CKF_DECRYPT | CKF_WRAP | CKF_UNWRAP Mechanism Unknown 0x0000000000000552: ulMinKeySize: 16 ulMaxKeySize: 32 flags: 393984 = CKF_ENCRYPT | CKF_DECRYPT | CKF_WRAP | CKF_UNWRAP Mechanism Unknown 0x0000000000000553: ulMinKeySize: 16 ulMaxKeySize: 32 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism Unknown 0x0000000000000554: ulMinKeySize: 16 ulMaxKeySize: 32 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism Unknown 0x0000000000000555: ulMinKeySize: 16 ulMaxKeySize: 32 flags: 393984 = CKF_ENCRYPT | CKF_DECRYPT | CKF_WRAP | CKF_UNWRAP Mechanism CKM_MD2_HMAC: ulMinKeySize: 1 ulMaxKeySize: 128 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_MD2_HMAC_GENERAL: ulMinKeySize: 1 ulMaxKeySize: 128 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_MD5_HMAC: ulMinKeySize: 1 ulMaxKeySize: 128 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_MD5_HMAC_GENERAL: ulMinKeySize: 1 ulMaxKeySize: 128 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_SHA_1_HMAC: ulMinKeySize: 1 ulMaxKeySize: 128 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_SHA_1_HMAC_GENERAL: ulMinKeySize: 1 ulMaxKeySize: 128 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_SHA256_HMAC: ulMinKeySize: 1 ulMaxKeySize: 128 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_SHA256_HMAC_GENERAL: ulMinKeySize: 1 ulMaxKeySize: 128 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_SHA384_HMAC: ulMinKeySize: 1 ulMaxKeySize: 128 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_SHA384_HMAC_GENERAL: ulMinKeySize: 1 ulMaxKeySize: 128 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_SHA512_HMAC: ulMinKeySize: 1 ulMaxKeySize: 128 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_SHA512_HMAC_GENERAL: ulMinKeySize: 1 ulMaxKeySize: 128 flags: 10240 = CKF_SIGN | CKF_VERIFY Mechanism CKM_GENERIC_SECRET_KEY_GEN: ulMinKeySize: 1 ulMaxKeySize: 32 flags: 32768 = CKF_GENERATE Mechanism CKM_PBE_MD2_DES_CBC: ulMinKeySize: 8 ulMaxKeySize: 8 flags: 524288 = CKF_DERIVE Mechanism CKM_PBE_MD5_DES_CBC: ulMinKeySize: 8 ulMaxKeySize: 8 flags: 524288 = CKF_DERIVE Mechanism Unknown 0x0000000080000002: ulMinKeySize: 8 ulMaxKeySize: 8 flags: 32768 = CKF_GENERATE Mechanism Unknown 0x0000000080000008: ulMinKeySize: 24 ulMaxKeySize: 24 flags: 32768 = CKF_GENERATE Mechanism CKM_PBE_SHA1_DES3_EDE_CBC: ulMinKeySize: 24 ulMaxKeySize: 24 flags: 32768 = CKF_GENERATE Mechanism CKM_PBE_SHA1_DES2_EDE_CBC: ulMinKeySize: 24 ulMaxKeySize: 24 flags: 32768 = CKF_GENERATE Mechanism CKM_PBE_SHA1_RC2_40_CBC: ulMinKeySize: 40 ulMaxKeySize: 40 flags: 32768 = CKF_GENERATE Mechanism CKM_PBE_SHA1_RC2_128_CBC: ulMinKeySize: 128 ulMaxKeySize: 128 flags: 32768 = CKF_GENERATE Mechanism CKM_PBE_SHA1_RC4_40: ulMinKeySize: 40 ulMaxKeySize: 40 flags: 32768 = CKF_GENERATE Mechanism CKM_PBE_SHA1_RC4_128: ulMinKeySize: 128 ulMaxKeySize: 128 flags: 32768 = CKF_GENERATE Mechanism CKM_PBA_SHA1_WITH_SHA1_HMAC: ulMinKeySize: 20 ulMaxKeySize: 20 flags: 32768 = CKF_GENERATE Mechanism CKM_PKCS5_PBKD2: ulMinKeySize: 1 ulMaxKeySize: 256 flags: 32768 = CKF_GENERATE Mechanism Unknown 0x0000000080000009: ulMinKeySize: 20 ulMaxKeySize: 20 flags: 32768 = CKF_GENERATE Mechanism Unknown 0x000000008000000A: ulMinKeySize: 16 ulMaxKeySize: 16 flags: 32768 = CKF_GENERATE Mechanism Unknown 0x000000008000000B: ulMinKeySize: 16 ulMaxKeySize: 16 flags: 32768 = CKF_GENERATE Mechanism Unknown 0x00000000CE534351: ulMinKeySize: 16 ulMaxKeySize: 32 flags: 393984 = CKF_ENCRYPT | CKF_DECRYPT | CKF_WRAP | CKF_UNWRAP Mechanism Unknown 0x00000000CE534352: ulMinKeySize: 16 ulMaxKeySize: 32 flags: 393984 = CKF_ENCRYPT | CKF_DECRYPT | CKF_WRAP | CKF_UNWRAP sunpkcs11: login succeeded SunPKCS11 loading ---DummyConfig-2--- sunpkcs11: Initializing PKCS#11 library /home/hosp/.mozilla/firefox/ oml0p6w4.default/libnssckbi.so Information for provider SunPKCS11-NSS Trust Anchors Library info: cryptokiVersion: 2.20 manufacturerID: Mozilla Foundation flags: 0 libraryDescription: NSS Builtin Object Cryptoki Modu libraryVersion: 1.70 All slots: 1 Slots with tokens: 1 Slot info for slot 1: slotDescription: NSS Builtin Objects manufacturerID: Mozilla Foundation flags: CKF_TOKEN_PRESENT hardwareVersion: 1.00 firmwareVersion: 1.00 Token info for token in slot 1: label: Builtin Object Token manufacturerID: Mozilla Foundation model: 1 serialNumber: 1 flags: CKF_WRITE_PROTECTED ulMaxSessionCount: CK_UNAVAILABLE_INFORMATION ulSessionCount: 0 ulMaxRwSessionCount: CK_UNAVAILABLE_INFORMATION ulRwSessionCount: 0 ulMaxPinLen: 4294967295 ulMinPinLen: 4294967295 ulTotalPublicMemory: CK_UNAVAILABLE_INFORMATION ulFreePublicMemory: CK_UNAVAILABLE_INFORMATION ulTotalPrivateMemory: CK_UNAVAILABLE_INFORMATION ulFreePrivateMemory: CK_UNAVAILABLE_INFORMATION hardwareVersion: 1.00 firmwareVersion: 1.00 utcTime: Which means that libnssckbi.so is used for obtaing trustanchors and i dont know why. In configuration I've set that i want only access to keystore. Any ideas? _______________________________________________ dev-tech-crypto mailing list [email protected] https://lists.mozilla.org/listinfo/dev-tech-crypto

