问题描述
我正在寻找一种工具或方法来证明从网络下载并存储在本地的资源的真实性。需要明确的是:我不是指验证下载文件的 SHA 或 MD5 校验和。我需要的是一种下载和存储网络资源的方法,以便我以后可以证明该资源确实来自该网络服务器。
特别是对于以下场景:网站发布了一篇关于客户的文章。他想起诉诽谤人格。我需要一种方法来存储文章,而他们无法简单地删除它并否认他们曾经发表过它。所以最好是这种工具得到出版物的支持,使其在法庭上具有可信度。
我考虑过存储 TLS 证书、密钥和加密数据。这将依赖于根 CA,但我认为这本身不是问题。我可以使用自定义程序和像 OpenSSL 这样的库来做到这一点,但我认为这是一个很常见的问题,可能有一个相对标准的工具。此外,我不完全确定这在多大程度上构成了可靠的证据。有人可以指出支持这种方法的出版物吗?
也许我使用了错误的搜索词,但我找到的所有内容都与上述 SHA 或 MD5 校验和有关。非常感谢任何帮助。
解决方法
如果我理解正确,您需要诸如带时间戳的签名之类的东西。是的?
您不仅需要来自文档(文章、文本值等)的校验和,还需要证明这篇文章确实及时存在。
使用数字签名时,您可以将此类 timestamp
存储在第三方认证的提供商中。您签署文件并将校验和发送给第 3 方提供商。稍后您可以要求提供者验证此确切文档是否有效并且确实是在给定时间创建的。
https://en.wikipedia.org/wiki/Trusted_timestamping
由于这可能会产生成本(提供商存储时间戳的费用),您可以从多个文档创建校验和(例如从一小时内获取所有文档),将所有文档存储在一个文件中,从该文件创建校验和并签名带时间戳。通过这种方式,您可以为文档批次创建一个时间戳,而不是为每个文档创建一个时间戳。