在纸上表示数字签名的标准

信息安全 电子签名 pdf 打印机
2021-08-29 21:57:52

用户正在使用该网站进行交易。网站生成的 PDF 文件(例如合同或报告)。用户对此文件进行数字签名(类似于纸质合同上的手写签名)。他们使用政府颁发的 RSA 证书。

目前这工作如下:

我正在生成一次 PDF 文件。然后我计算该文件的 SHA-512 校验和。我将此校验和发送给用户,他们执行此校验和的数字签名并将其证书和签名发送给我。

当我生成 PDF 时,我将 QR 码与 URL 合并:https://server.com/deal/123/report用户可以打印 PDF、扫描此二维码、浏览此 URL、输入他的登录详细信息并使用该 URL 下载 PDF。没有任何证据可以证明有人签署了该 PDF(尽管我在数据库中有签名并且可以在必要时证明)。

这些东西有标准吗?比如数字签名,打印在纸上,用一些标准软件验证等等。

我现在正在考虑以下方法:

开始与现在相同,但是当用户签署第一个 PDF 时,会生成第二个 PDF,并将他们的签名合并为 QR 码。当然,第一个 PDF 不会被删除,因此用户可以下载第一个 PDF 并使用来自第二个 pdf 用户的 QR 码的信息可以检查签名是否确实正确。但是,当然,他需要特殊的软件来检查。

1个回答

你的问题很好。基本问题是数字签名与数字数据相关联。而且(同样重要的是)需要访问原始数字数据以验证签名或签名。

因此,传输介质需要是数字的。

三个答案:

纸质副本是指向真实(数字)原件的指针

在这种情况下,打印出来的纸张包含真实原件的二维码,该二维码存储在服务器上。无需担心证明打印出来的纸张的有效性,因为它只是指向真实原件的指针,它存储在您的服务器上。

接收方(依赖方)总是需要查找服务器副本以查看其中包含的内容并验证其标准数字签名。

您希望在纸质打印输出上放置最少的信息,因为您不希望收件人认为他们可以依赖纸质打印输出的内容——他们不能也不应该依赖它,事实并非如此可靠的。

纸质副本会简单地说“该协议由签名者在日期进行数字签名。下载原件并使用二维码验证其签名。”

除了 QR 码本身包含的内容外,我建议您不需要任何用户名或密码。

可以验证纸质副本的数据

在这种情况下,您希望收件人能够验证纸质副本的数据,而无需数据的在线版本。不幸的是,纸上的常规打印不是数字的(OCR 不是 100% 准确或可重复的。)

所以我想把你的问题改成“我怎样才能用纸可靠地传输数字数据?”

这些天有答案,包括 3d 条形码和特殊的 OCR 字体。根据内容的多少,您可以将原始文本作为数字签名的 pdf 文件包含在 QR 码中。您可以在页面上包含原始文本的副本。

您将遇到与上述相同的问题——如果文档的文本在页面上是可读的,那么验证它与签名的文本完全相同是非常困难或不切实际的。另一方面,争议很少。必要时可验证印刷版本。

纸质副本是签名数据的表示

这些类型的文件一直被依赖方接受(它们被称为传真)。关于传真文件的法律效力有很多判例法。法律因州和国家/地区而异,因此请咨询当地律师。

如果原始文件的传真是可接受且合法的,那么您可以简单地打印出数字签名文件的表示。希望数字签名者提供图形签名。如果没有,您可以使用签名者证书中的通用名称和脚本字体创建一个。重要的问题是包括一个参考号,以便在挑战需要时检索原始的数字签名文档。DocuSign 和其他供应商这样做。请注意在线版本的参考编号。

DocuSign 可见签名。 请注意在线版本的参考编号。