如何从客户端Web应用程序访问Microsoft的Crypto API?更具体地说,通过Web浏览器访问用户的Windows-MY证书并使用它们来加密数据。我查看了CAPICOM,但微软不再支持它。我还研究了Java的Cryptographic Excention和MSCAPI提供程序,但它没有提供我需要的功能。
答案 0 :(得分:1)
您对此主题有很多疑问。这个答案涉及所有这些问题。
首先:您使用SunMSCAPI时遇到的问题是由于Entrust的CSP在不需要时提示输入密码的不幸组合以及SunMSCAPI使用稍微奇怪的方式来判断证书是否具有匹配的私钥。你能让Entrust修复他们的CSP吗?
第二:如果你不能让Entrust修复他们的CSP,你最好的选择是Java和JNI。我可以看到你试过这个但放弃了。它是可能的 - 它可能会给你带来麻烦,但它确实是唯一可行的跨浏览器解决方案。当然,如果您可以使用仅限Internet Explorer的解决方案(您提到CAPICOM),您可以使用您需要的确切功能实现自己的ActiveX / COM对象。