如何使用Java从Operate System加载数字证书?

时间:2016-03-10 16:59:13

标签: java ssl

我一直在研究数字签名解决方案,一切都很好,但现在我们的客户希望通过数字证书解决方案登录。

他展示了他使用的另一个门户网站的示例,当在登录页面上选择数字证书选项时,它会执行一个列出所有Windows安装证书的jnlp。

我相信jnlp会发送一些"桌面"在客户端工作站后台运行的模块,用于检索证书列表,然后将其发送回服务器。

我发现了一些关于SunMSCAPI的东西,它完全符合我的需要,并尝试加载它,但我总是得到一个异常

KeyStore ks = KeyStore.getInstance("Windows-ROOT", "SunMSCAPI"); 

KeyStore ks = KeyStore.getInstance("SunMSCAPI"); 

结果

Exception in thread "main" java.security.NoSuchProviderException: SunMSCAPI
at java.security.KeyStore.getInstance(KeyStore.java:118)

我读过一些关于SunMSCAPI的内容仅适用于Java 6或更低版本以及32位OS / JRE。

我迷失在这里......我的意思是,我不能预测Java版本用户在他们的电台上有什么。此外,今天很有可能成为x64系统。当然它可能是Unix系统而不是Windows。

攻击研究员的最佳方法是什么?

0 个答案:

没有答案