我们正在创建一个小程序,以便站点中的用户可以使用浏览器中安装的证书对文档进行签名。
问题是我们要求用户引入证书的“密码”以获得更高级别的安全性。浏览器中安装的证书都是正确导入的p12文件(密码已经按正常流程要求引入)。
当我们运行此代码时
Java.Security.KeyStore key2 = obtainCertificates();
Java.Security.PrivateKey key = (Java.Security.PrivateKey) key2.getKey(alias,password.toCharArray());
System.out.println("PK is " + key);
System.out.println("alias " + alias);
if (key == null || key.equals("") || key.equals(" ")) {
System.out.println("Password is wrong");
return "CLAVEINCORRECTA";
}
无论“密码”的值是......,它都有效。
我们如何让系统检查引入的密码是否与浏览器中加载的证书的密码匹配?
我们知道这可以通过KeyStore.load()完成...但是我们不希望用户指出我们证书文件的位置......我们只想使用安装在证书中的证书浏览器。