我正在尝试使用Java Applet在基于Web的应用程序中签署一些数据(POST表单)。用户的x509证书将位于加密/智能卡中。 我正在使用本教程/代码作为构建applet的起点 - http://www.developer.com/java/other/article.php/3587361/Java-Applet-for-Signing-with-a-Smart-Card.htm
我可以在浏览器中构建和运行applet,但是在将文件签名为#34时会出错;无法打开文件进行阅读" 任何帮助和建议?
答案 0 :(得分:0)
从浏览器作为客户端签名时,现代浏览器不再支持applet。
智能卡或令牌驱动程序(PKCS#11)库具有称为CSP(加密服务提供程序)的附加层,其作用类似于设备驱动程序和OS加密服务之间的桥梁。一旦安装了令牌驱动程序,令牌驱动程序也会添加此CSP,因此插入令牌或智能卡会使证书中的证书可在证书存储中使用(证书存储充当安全存储在加密设备上的私钥的句柄)。
您可以将浏览器扩展用于在浏览器后面运行本机应用程序的目的,以访问证书存储并通过浏览器中的JavaScript提供签名功能。 Signer数字浏览器扩展使用JavaScript提供了各种类型的签名表单浏览器。请参阅页面Digital Signing From Browser上的3个不同的SO答案链接,以了解使用Web浏览器扩展程序可进行的各种操作。