区块链的“区块”到底是个啥玩意儿?

区块链的“区块”到底是个啥玩意儿?

比特币是基于区块链的,这一点大家都知道。但是这个区块链是什么呢?更准确地说,区块链的各个组成部分是什么呢?

区块链是一个数据块。每个块可以看作是分类帐中的一个。单个块由几个组件组成。大致可以将它们区分为块的头部(块头)和块的身体(块体)。

一、块头

块头为六个部分:

·软件的版本号

区块链的“区块”到底是个啥玩意儿?

·前一个块的哈希值

·Merkle树的根哈希值

·世界时自1970-01-01以来以秒为单位的时间

·当前困难的目标

·特定场合

  1、软件的版本号

在大多数情况下,软件版本号并不重要。但是,具有特定版本号的挖掘程序可以指示它支持哪个协议决。

 2、前一个块的哈希值

前一个块的哈希值,也可以说是块的链。因为前一个块的哈希值包含在新块的哈希值中,所以区块链的块都是在彼此的基础上构建的。如果没有这个组件,每个块之间就不会有连接。

3、Merkle树的根哈希值

块中包含的所有事务都可以聚合到哈希值中。这就是Merkle树的根哈希。

4、自1970-01-01T00:00UTC以来的秒数

块本身中的时间戳。时间自1970年1月1日起以秒为单位给出。

5、当前困难的目标

这一数值也指示着新哈希值得要小到什么程度才能声明有效性。换句话说,就是每个哈希值都有一个位大小。位的目标越低,就越难找到匹配的哈希值。

6、特定场合

特定场合是由工作量证明增加的变量。通过这种方式,挖掘器猜测一个有效的哈希值,一个比目标值小的哈希值。

这六个组件构成了块头。区头在比特币中扮演着重要角色,因为它将所有区块连接在一起。你可以把它想象成卡车的驾驶舱。这些是卡车通过网络控制时所带的重要文件。

二、块体

块体可以想象成卡车的装载空间。它包含与块确认的所有事务。当挖掘程序构造一个块时,它会验证事务。也就是说,他主要检查寄件人是否有足够的钱。他可以很容易地从区块链中读取这些信息。如果发件人想发送10个比特币,他会查看过去的数据块,看看发送者是否已经收到10个比特币。块中的事务不仅在列表中,而且在所谓的Merkle树中。