用户正在使用该网站进行交易。网站生成的 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 码的信息可以检查签名是否确实正确。但是,当然,他需要特殊的软件来检查。
