首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

比特币白皮书解读——时间戳服务器

这是关于比特币白皮书(Bitcoin: A Peer-to-Peer Electronic Cash System)的系列文章之一。文章主要结构:原文——翻译——解说。原文直接引用白皮书中的内容,方便大家直接查阅,大家也可通过地址 https://bitcoin.org/bitcoin.pdf 来看原文。翻译是我根据原文进行的翻译,不完全是直译,部分内容会通过我的理解进行更通俗的阐述,让大家更容易理解。解说是对本章节内容的解说。文中的翻译及解说若存在异议,欢迎交流,谢谢!

原文

3. Timestamp Server

The solution we proposebegins with a timestamp server. A timestamp server works by taking a hash of ablock of items to be timestamped and widely publishing the hash, such as in anewspaper or Usenet post [2-5]. The timestamp proves that the data must haveexisted at the time, obviously, in order to get into the hash. Each timestampincludes the previous timestamp in its hash, forming a chain, with eachadditional timestamp reinforcing the ones before it.

翻译

3.时间戳服务器(Timestamp Server)

我们首先对此解决方案提出一个概念——时间戳服务器(timestamp server)。一个时间戳服务器的工作是把包含了众多条目的区块(block)的哈希值增加时间戳,并广发发布,就如同在报纸或者新闻组上发帖那样子。这个时间戳可以证明数据确实是在指定时间点前已存在,不然它不可能是该哈希值的组成部分。每个时间戳在它的哈希值中包含之前的时间戳信息,并形成链条,而这种当前时间戳哈希值包含之前时间戳的方式增强了整个链条的联系。

解说

这一节的内容较少,但是实际上看上去也不容易。原文可能会看得一头雾水,而翻译估计也看得不知所云。估计对于新手来说,整篇白皮书都会有这样的感觉的。我们通过回答下面的几个问题,来帮助了解本节的内容。

时间戳用来干什么?在比特币的区块链中,最近的交易会打包成一个区块,然后系统会为这个区块打上一个时间戳。通过时间戳,我们可以得到在此区块中包含的交易,都是在这个区块时间戳那个时间点之前发生了。大家可以想象一下报纸,如同报纸上的新闻,就是在这个报纸印刷日期之前发生的内容一样。而对于上一个区块的时间戳,当前区块的交易又是在那个时间戳所指的时间点后发生的。由这两个时间点,就可以形成一个时间区间了。同时,时间戳也为这个区块链能按时间来进行时间的排序奠定了基础。

时间戳存储在哪里?每个区块,可以简单的理解为由区块头和区块体组成。而时间戳,就是包含在区块头中的一个参数。

时间戳与当前区块的哈希值有什么联系?一个区块的hash值,指的是这个区块的区块头上的数据通过指定要求进行排序并哈希散列后产生的hash值。所以可以看出,区块的hash值是包含了时间戳这个成分在里面的。

上一个区块的时间戳与当前区块有什么联系?正如上面所说的,区块的hash值是包含了时间戳这个成分在里面的。而每个区块区块头还包含一个“前一个区块的hash值”的参数,也就是引用了前一个区块的hash值。所以当前区块也就偷偷的与前一个区块的时间戳建立了联系了。这样,当上一个区块的时间戳被修改了,那么上一个区块的hash值也会跟着修改,而当前区块的区块头也会要求修改,从而影响当前区块的hash值。这个影响会一直延续下去,从而增强了整个链条的联系。

时间戳上的时间以哪里为准?大家可能会想,要有一个时间戳服务器,那不就又违背了去中心化的思想了?中本聪肯定不会做出这种事吧。首先,每个节点的时间,都会根据与它相邻的节点的时间的中位数来做调整。其次,一个区块上的时间戳被认为合法的要求是,它大于前11个区块的时间戳的中位数,并且小于网络调整时间+2小时。这里所说的网络调整时间,就是你能连接的所有节点的时间中位数了。若想了解更详细的说明,可以参考此地址:https://en.bitcoin.it/wiki/Block_timestamp。

通过上面的五个问题与解答,应该就能对这么短小的一节有了个较清晰的了解了。

- 比特币白皮书解读系列 -

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180402G1VN3300?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券