我很好奇是否有办法对文件(技术上是任何数据)进行数字签名,例如合同或照片,以便 10 年后,可以证明它们是从现在开始的,而不是 9 年后伪造的.
例如,我可以写一个对未来的预测,并用传统的方式对其进行签名以证明它是我写的,然后对其进行时间戳签名,以便当它实现时,我可以证明我预测它。
我想到的一种方法是可能有一个时间戳权威。您向他们发送数据,他们对数据 + 时间戳进行哈希处理,并使用他们的私钥使用 RSA 对哈希进行加密。因此存在的签名文档包括:数据、时间戳、加密哈希。
10 年后,我对数据 + 假定的时间戳进行哈希处理,并检查它是否与我使用授权的公共 RSA 密钥(我信任)解密的加密哈希匹配。如果是这样,我知道时间戳是有效的。
我可以看到两个问题:
- 需要外部授权
- 当局的私钥需要绝对保密,因为如果它被泄露,所有用它签名的文件都会失效。
你能想出一个没有(其中一个)这些问题的解决方案吗?