1

我想ERP通过存储在服务器上的网络浏览器文档在我们的数字签名上实施一个流程。该过程应该是:

  1. 用户登录
  2. 用户查看存储在服务器上应进行数字签名的 pdf 文件
  3. 用户选择pdf文件进行数字签名
  4. 文件将进行数字签名

数字标牌可以使用智能卡或服务器端标牌系统来完成。知道如何实施吗?

4

3 回答 3

6

请阅读本书第 4 章:http: //itextpdf.com/book/digitalsignatures

您的主要问题是签名需要私钥。此私钥存储在智能卡上,由于显而易见的原因,无法从该卡中提取(更不用说通过互联网发送了)。

您可能知道,实际的签名是在智能卡的芯片上完成的,而不是在客户端的计算机上,更不用说在服务器上!这意味着您需要使用 PKCS#11 的客户端软件来创建签名。(另一种方法是使用 MS-CAPI,但这仅适用于 Windows。)

您有不同的选择:您可以创建需要在服务器上签名的 PDF 的哈希值,然后将该哈希值发送到客户端应用程序以对其进行签名。或者您可以将 PDF 发送给客户端并在客户端上进行完整的签名。

请注意,我关于数字签名的书已经有点过时了。我们编写了一种更好的方法来实现所谓的“延迟签名”。

然而,事实仍然是,说您想要涉及物理上驻留在客户端的智能卡的服务器端签名是一个矛盾。任何满足该需求的解决方案都会违反所有安全问题。

于 2013-06-09T10:24:02.557 回答
5

[披露:我在 CoSign 工作]

您所描述的内容始终由我们的客户安全地完成(使用开放、标准、PKI 数字签名)。

数字签名签名通常在“安全签名创建设备 (SSCD)”上完成。这通常是智能卡,但并非必须如此。一个重要的替代方案是安全的集中式系统。这就是 CoSign 和其他一些公司所销售的。

工作原理:您、CoSign 或其他人编写的软件从 ERP 系统获取文档并计算文档的数字签名哈希。将带有签名者身份验证信息的散列发送到集中式 SSCD。然后 SSCD 计算数字签名并将结果发送回请求系统。然后根据标准(例如 pdf)将签名添加到文档中。结果:一个签名的 pdf 文件。(或签名的 Word 文档,或签名的 XML 等)

请注意,签名者的私钥永远不会离开 SSCD。CoSign 的 SSCD 型号包括 FIPS 认证的防篡改外壳。如果有人打开箱子,所有的私钥都会被立即销毁。见说明。

为了与您的 ERP 系统集成,我们预先构建了连接器多个 API

如需更多信息,请联系 arx.com 的销售人员。告诉他们拉里派你来的。

于 2013-06-14T07:24:17.173 回答
1

如果智能卡物理上位于客户端,那么无论是否有服务器组件,都必须在客户端计算机上运行某些东西。这是因为签名是在智能卡本身上计算的,只有与智能卡相连的计算机才能与之对话,所以必须在客户端上运行一些东西。

这两个选项是:

  • 让客户端软件处理整个签名过程,从读取 PDF、将所需内容提供给智能卡、接收来自智能卡的响应签名以及将签名插入 PDF,或

  • 让客户端软件与服务器协调以从服务器接收 PDF 哈希,将其提供给智能卡,接收响应签名,将其发送回服务器,然后服务器可以将签名插入 PDF(有这个方案可能)。

在任何一种情况下,都必须在客户端,在智能卡设备中创建签名。

于 2016-10-20T19:27:30.343 回答