繁体   English   中英

如何使用时间戳安全地签名数据?

[英]How do I securely sign data with a timestamp?

我想在具有安全时间戳的数据库中签署记录,以证明在该日期之后没有人改变过它们。

我应该考虑哪些方法或协议? RFC 3161 我发现声称提供该服务的大多数网站对我来说并不是非常有信誉。

你可以自己动手吗?

如果您正在寻找一个可用的RFC3161服务器,那么http://time.certum.pl/就是我所知道并且一直存在的服务器。

如果你正在寻找一个更大的解决方案,不依赖于一个基于秘密的时间戳框(基本上可以扩展的东西), 查看http://www.guardtime.com

从技术上讲,时间戳是UNIX时间戳:)但是您似乎分配给时间戳的属性是散列和“签名”(可以验证特定散列在特定时间存在的声明)。

任何与“信任”有关的事情都可以让你自己动手。 与滚动自己的CA的方式相同,就像您可以使用自己的基于标准的服务或创建自己的方案一样。 但说服其他方“信任”你自己推出的东西可能会更棘手。

这就是人们为CA证书付费的原因 - 他们受到浏览器供应商的预先信任。 这就是为什么当您需要其他人必须信任的解决方案或者您不得不为数据加时间戳时,您需要一个经过认证的时间戳源。

简单的方法是附加你想要确保没有被篡改的值,向它添加一个盐,然后md5全部,并保存md5哈希。

因此,如果您有一个包含列的表:Username,Firstname,Lastname,Hash

你做一个md5(用户名+名字+姓氏+“MySuperSecretSalt”)并将值保存在哈希中。

但我必须说,这听起来像是一件奇怪的事情。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM