区块体

科普中国-科学百科 2018-03-24

  记录一定时间内所生成的详细数据,包括当前区块经过验证的、区块创建过程中生成的所有交易记录或是其他信息,可以理解为账本的一种表现形式。

  相关知识

  

  区块

  Block

  区块是在区块链网络上承载交易数据的数据包,是一种被标记上时间戳和之前一个区块的哈希值的数据结构,区块经过网络的共识机制验证并确认区块中的交易。1

  父块

  Parent Block

  父块是指区块的前一个区块,区块链通过在区块头记录区块以及父块的哈希值来在时间上排序。

  区块头

  Block Header

  记录当前区块的元信息,包含当前版本号、上一区块的哈希值、时间戳、随机数、MerkleRoot的哈希值等数据。此外,区块体的数据记录通过MerkleTree的哈希过程生成唯一的MerkleRoot记录于区块头。

  三、区块

  区块链由一个个区块(block)组成。区块很像数据库的记录,每次写入数据,就是创建一个区块。

  每个区块包含两个部分。

  区块头(Head):记录当前区块的特征值

  区块体(Body):实际数据

  区块头包含了当前区块的多项特征值。

  生成时间

  实际数据(即区块体)的哈希

  上一个区块的哈希

  ...

  需要理解什么叫哈希(hash),这是理解区块链必需的。

  

  所谓"哈希"就是计算机可以对任意内容,计算出一个长度相同的特征值。区块链的 哈希长度是256位,这就是说,不管原始内容是什么,最后都会计算出一个256位的二进制数字。而且可以保证,只要原始内容不同,对应的哈希一定是不同的。

  举例来说,字符串123的哈希是a8fdc205a9f19cc1c7507a60c4f01b13d11d7fd0(十六进制),转成二进制就是256位,而且只有123能得到这个哈希。(理论上,其他字符串也有可能得到这个哈希,但是概率极低,可以近似认为不可能发生。)

  因此,就有两个重要的推论。

  推论1:每个区块的哈希都是不一样的,可以通过哈希标识区块。

  推论2:如果区块的内容变了,它的哈希一定会改变。

  本词条内容贡献者为:

  肖志勇 - 副教授 - 江南大学

责任编辑:科普云

上一篇:混币服务

下一篇:重要性证明

科普中国APP 科普中国微信 科普中国微博
科普中国-科学百科
是中国科协为深入推进科普信息化建设而塑造的全新品牌,旨在以科普内容建设为重点,充分依托现有的传播渠道和平台,使科普信息化建设与传统科普深度融合,以公众关注度作为项目精准评估的标准,提升国家科普公共服务水平。

猜你喜欢