我正在构建一个基于用户输入构建 XML 文档的 Web 应用程序。创建文档后,它需要遵循批准路径,例如工作流,其中多个用户“签署”文档。从用户的角度来看,签名只是检查一个字段并单击“接受”,但我需要的是在每个步骤中对文档进行数字签名,最终将其存储在数据库中。
我需要使用什么样的设备/工具?客户端浏览器上的 X.509 证书?应用程序生成的公钥/私钥?任何文档链接将不胜感激。
我正在构建一个基于用户输入构建 XML 文档的 Web 应用程序。创建文档后,它需要遵循批准路径,例如工作流,其中多个用户“签署”文档。从用户的角度来看,签名只是检查一个字段并单击“接受”,但我需要的是在每个步骤中对文档进行数字签名,最终将其存储在数据库中。
我需要使用什么样的设备/工具?客户端浏览器上的 X.509 证书?应用程序生成的公钥/私钥?任何文档链接将不胜感激。
证书通常不是由应用程序生成的(因为 PKI 是关于信任的,在证书的情况下是分层的)。用户使用私钥获取证书(为了简单起见),并将它们存储在安全的地方或硬件设备(智能卡、USB 令牌)上。
然后这些证书用于签署信息。在 Web 应用程序的情况下,您可以将数据本身传输到客户端或在那里发送数据的哈希值,但无论如何签名都发生在客户端(除了证书存储在中央服务器上并可以访问它们的极少数情况)每次使用证书时都由客户端授权)。
我们提供用于分布式数据签名的组件。此答案包含有关此类签名如何工作的详细说明。您可以使用我们的解决方案或创建您自己的解决方案,同样可以。