开发者社区> 问答> 正文

文件管理中如何使用简单的时间戳协议?

文件管理中如何使用简单的时间戳协议?

展开
收起
游客gzyuldo4mrg6i 2022-04-02 08:37:59 798 0
1 条回答
写回答
取消 提交回答
  • 在使用时间戳服务时,所涉及到的角色一般有以下几种:提供时间戳服务的机构(Time-Stamping Authoritor),申请时间戳服务的用户(Subscriber)和时间戳证书的验证者(Relying Party)。时间戳机构的主要职责是为一段数据申请时间戳证书,证明这段数据在申请时间戳证书的时间点之前真实存在,在这个时间点之后对数据的更改都是可以追查的,这样就可以防止伪造数据来进行欺骗。证书持有者把需要申请时间戳证书的数据发送给时间戳机构,时间戳机构将生成时间戳证书发送给证书持有者。在需要证明该数据未被篡改时,证书持有者展示数据所对应的时间戳证书,时间戳证书的验证者来验证它的真实性,而从确认该数据是否经过篡改。

    最基本的时间戳协议的工作流程如下;申请时间戳服务的用户将需要认证的数据传输给时间戳服务的提供者;时间戳服务的提供者将经过认证后的时间戳证书返还给用户。

    简单时间戳协议的工作流程如图1所示:用户将需要认证的数据传输给时间戳机构,数据经过 Hash运算得到 m=Hash(M),时间戳机构将 m 和收到数据的时间 t 一起进行数字签名,然后将生成的时间戳证书 Sign(m,t)返还给用户。在需要验证时间戳证书时,首先验证时间戳证书 Sign(m,t)是否为时间戳机构签发的,其次验证 m 是否为用户数据经过Hash 运算得到的结果。如果两项验证中有任何一项不通过,就证明用户的数据经过了篡改;如果都通过,说明用户的数据在时间 t 之后没有进行过任何修改。这个方法通过对数据进行 Hash 运算,保护了用户数据的隐私,在另一方面也减少了时间戳机构的存储容量,为时间戳机构削减了成本。

    2022-04-02 08:40:42
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
JCLI使用说明文档 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载