验证带时间戳的 PDF

信息安全 电子签名 时间戳 pdf
2021-08-20 21:43:00

我对时间戳文件以提供数字完整性的过程有点陌生。出于测试目的,我将tsa.safecreative.org用于 PDF 文件。

现在我已经签署了几个 PDF 文件,如果我打开 PDF,它说时间戳是有效的(因为文件是由时间戳证书签名的)。尽管如此,时间戳的关键思想之一是作为证据证明,所以我应该能够使用 SafeCreative 网站上的列表来验证我的文件的时间戳。

当查看时间戳的确切时间时,我知道 SafeCreative 为我的演示文件保护以下数据

2015-12-16 21:17:27 5488602bec5c55a91e474c2b79d6c1a02928d594c472be54307e3cc8cec3cd90    SHA256

现在让我们假设这个演示文件是法庭程序的一部分。我想验证该文件是否在该确切时间加盖了时间戳。根据defuse.ca 的说法,SHA256 哈希是 bc5886d2890da95d04b5ec4fbba7881a2cabb38ba87ae27daf5870c381facbbe 虽然这显然是时间戳添加认证之后的哈希。

我将如何在法庭上证明我得到的 PDF 在那一刻带有时间戳(我不认为证书是在证明时间戳而不是文件完整性)?文件中某处是否有“旧”哈希?时间戳服务器是否甚至存储哈希,如果是,为什么没有 API 来检查它?

1个回答

看起来我几乎是在它并且简要地误解了所使用的概念。我假设的概念是数据库版本的时间戳,主要是因为网站上的列表(是的,有不同的时间戳方法 -请参见此处),而实际上 PKI 是根据RFC 3161使用的。

这张图片可以更容易地解释这个概念(仅因其许可证而链接)。不是通过询问 TSA 来验证时间戳,而是所有数据确实(正如我在入门帖子中所怀疑的那样)包含在新文件中 - 当时文件的哈希和时间戳由 TSA 签名并附加到文件。因此,在法庭上,我只需要提供文件,并且可以看到该文件当时具有这个特定的哈希值,并且可以进行测试。只要 TSA 没有受到损害,签名时间和哈希值就是有效的,没有人能够修改它们。

通过这种方式,我还发现了为什么每个 IP/天限制为 5 个签名是公牛(对于本来可以理解的数据库签名),并且使用其他免费服务更有意义。