【问题标题】:No such algorithm: PKCS11 for provider SunPKCS11-CartaoCidadao没有这样的算法:提供者 SunPKCS11-CartaoCidadao 的 PKCS11
【发布时间】:2018-10-24 15:47:48
【问题描述】:

有我目前的供应商:

0 - 提供者名称:SUN 1 - 提供者名称:SunRsaSign 2 - 提供者名称:SunEC

...

9 - 提供者名称:SunPKCS11-CartaoCidadao

第九个提供程序是我正在尝试使用的提供程序,它使用 pkcs11 库。

Provider prov = Security.getProvider("SunPKCS11-CartaoCidadao");
keyStore = KeyStore.getInstance("PKCS11", prov );

使用 info 方法我可以看到它正在使用库:

System.out.println(prov.getInfo());

SunPKCS11-CartaoCidadao 使用库 /usr/local/lib/libpteidpkcs11.so

然而,当我尝试获取密钥实例时,它告诉我该提供程序没有 PKCS11,它应该这样做。

KeyStore ks = KeyStore.getInstance("PKCS11","SunPKCS11-CartaoCidadao");
keyStore.load( null, null );

java.security.KeyStoreException:找不到 PKCS11

原因:java.security.NoSuchAlgorithmException:没有这样的算法:PKCS11 for provider SunPKCS11-CartaoCidadao

有人知道如何解决这个问题吗?

【问题讨论】:

    标签: java keystore pkcs#11 java-security sunpkcs11


    【解决方案1】:

    第二个参数的类型应该是Provider

    使用以下内容:

    KeyStore ks = KeyStore.getInstance("PKCS11",prov);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-12
      相关资源
      最近更新 更多