这是我想做的事:
- 用户创建的文档(HTML)
- 编辑 - >保存在服务器上的PDF
- 请问如果用户希望在文件上签字
- ???? (不重要)
所以我现在面临的问题是如何做到这一点(是的)步骤3.如果签名是在服务器上没有问题,我有一个带有数字签名的迹象,但签名必须是一些HTML的“PHP的> PDF类在服务器上的文件中。 现在的问题是,我该怎么办,直接在服务器上。 用户选择是,签名被读取(从他自己的电脑上阅读器)和发送到服务器,并签署完成。 在这里,我相信没有像Java或者让我无法做到这一点。 在我看来,PHP和JavaScript肯定是地狱是不会有足够的这个动作。
有没有人遇到过这样的问题吗? 也许一些准备使用图书馆?
PS不太清楚,如果标签是正确的,但不能找出哪些投入。
如果用私钥证书在客户端上,那么你需要一个客户端模块做签名。 JavaScript的将是不够的,因为这将不能访问客户机上的按键。 虽然你可以尝试调用从JavaScript CAPICOM ,这是一个部分(不PKCS#11支持),Windows的特定的和过时的解决方案。 更好的选择是必须用Java编写的小程序的浏览器将执行签名(见下文)。
我们SecureBlackbox产品具有分布式签名附加在其上不正是你描述(PHP,Java和ASP.NET和编译的模块目前支持)。 你可以看到如何将计划的附加工作:
在我们的产品,我们提供预建的浏览器模块 - 的Java Applet,ActiveX控件和Flash小应用程序,但Java小程序是在大多数情况下足够的,因为它可以访问Windows PKCS#11储藏和Windows证书存储。 对于不支持浏览器的Java小程序SecureBlackbox允许使用通过Java Web Start的小程序,作为外部“应用程序”。
你可能会需要重新创建这个完整的方案,但它是一个大招计算服务器上的哈希值,并将其传递到客户端进行签名,然后嵌入签名回文档。
它可能会更容易完整的文档传送到客户端,并有一个Java小程序将使用我们的SecureBlackbox的iText的或Java版本签署该文件,然后上传文件到服务器。
通过@Eugene Mayevski“联合位的流程图是从浏览器登录过程中,较早的方法是Java小程序,Active X的等被淘汰或正在从新现代浏览器的产品淘汰的一个很好的表示。
https://www.java.com/en/download/faq/chrome.xml
Java插件的Web浏览器依赖于跨平台的插件架构NPAPI,这已经被所有的主流浏览器了十多年的支持。 谷歌的Chrome浏览器版本45及以上的下降了支持NPAPI,因此Java插件不会在这些浏览器正常工作了。
我有点晚,但写这个帖子,希望答案是有人还在寻找浏览器扩展签署从USB令牌和现代浏览PDF很有帮助。
请参阅我的答案在这个计算器后 ,检查JavaScript和Signer.Digital浏览器扩展用途。
通过Java或.NET数字签名组件Signer.Digital或任何提供可用于数字签名从浏览器的USB令牌PDF。
对于PHP,Java组件可以通过JavaBridge的使用Tomcat上运行通过Apache代理进行数字签名,从浏览器的USB令牌和PHP服务器端PDF。
希望这可以帮助!