比特家 > 名词 > 正文

名词解析 | 区块链中的“区块”到底是什么?

组成区块链的基本单元结构,就叫做区块,每个区块由区块头和区块主体组成。

我们都知道盖一间房子,它的基本单元结构是每一块砖,而组成区块链的基本单元结构,就叫做区块,每个区块由区块头和区块主体组成。 
区块头存储结构化的数据,大小是80字节;而区块主体利用一种神奇的树状结构,记录区块挖出的这段时间里所有交易信息,所需空间比较大。
平均来讲,假设一个区块内有400笔交易信息,区块主体可能比区块头大1000倍以上,虽然区块头比区块主体小,但区块头总归是脑袋,大部分功能其实都由区块头实现。 
为了更好地了解区块链的概念,我们可以把每个区块当成一个小盒子,里面的交易信息是小纸条;也可以把它想象成小黑板,每块小黑板上都分区块头、区块主体登记重要信息。现在我们就来看看每个区块上都写了些什么。 
上图中,区块头部分括号里的数字表示各个数据所占大小,加起来刚好是80字节。
区块头内含的数据有: 
(1)版本号(Version) 
用来标识交易版本和所参照的规则。例如安卓8.1,或者iO1.3,区块也有自己的版本号。 
(2)前一区块哈希值 
也称“父区块哈希值”,这个哈希值通过对前一个区块的区块头数据进行哈希计算(SHA256算法)得出,它的意义在于:每个新挖出的区块都按秩序接在前一个区块的后面;这样,挖出新的区块后,你才能安心地喝一口茶,因为你很清楚这个区块是跟在一个被各节点验证过的可靠的区块后头。 
(3)默克尔根(MerkleRoot) 
如上图,在区块主体中,所有交易信息先进行两个一组的哈希计算,这种结构叫做Merkle树(MerkleTree),而且是一棵倒挂的树。 
我们把问题简单化,假设区块主体中有4笔交易信息,分别是交易1,交易2,交易3,交易4。Merkle树先对每个交易信息进行哈希Hash计算,分别得出Hash1、Hash2、Hash3、Hash4。 
到了第二层,像班主任安排座位一样,两个一组,也就是说Hash1和Hash2的字符串排排坐,变成2倍长的字符串,然后算出这个字符串的哈希值,我们记做Hash(1&2);Hash3和Hash4同上办法处理,得到Hash(3&4),再往上算,Hash(1&2)、Hash(3&4)这两个字符串又合并,接着进行哈希运算,这个最后的哈希值就是区块头的Merkle树根。 
(4)时间戳(Time) 
记录这个区块生成的时间,精确到秒。每诞生一个新的区块,就会被盖上相应的时间戳,这样就保证整条链上的区块都按照时间顺序进行排列。 
(5)难度值(Target_bits) 
挖出该区块的难度目标。每产生2016个区块,数据区块运算难度会调整一次。比如,比特币区块链网络能够自动调整挖矿的难度,让矿工每10分钟才挖出一个区块。原本需要14天才能挖完2016块区块,但不知哪个天杀的突然弄来几台算力爆表的矿机,7天就搞定了,这就意味着到预定调整期的时候,挖矿难度会增加一倍。 
(6)随机数(Nonce) 
挖矿相当于矿工做数学题,他们利用计算机或矿机的算力,经过大量的计算(专业一点称“哈希碰撞”),试出一个正确的区块哈希值,所以很多时候我们也把挖矿称作争夺记账权。 
那么,矿工怎样才知道是否试对了哈希值呢?随机数就是这道数学题的解,挖矿过程就是在寻找这个随机数。假设某个新区块的随机数为5555,矿工们就开始苦哈哈地尝试各种随机数,直到有个幸运星成功试到一组数字,这组数字的哈希值是 
c1f330d0aff31c1c87403f1e4347bcc21aff7c179908723535f2b31723702525
而这个字符串正是随机数5555的哈希值!
成功挖到一个新区块的节点/矿工会向全网广播:“别挖啦!这个区块被我承包啦!”
尽管其他矿工已经快要知道这个随机数了,其他矿工都只能放弃这个区块的记账权,转而开始验证这个区块,新区块验证通过后,成功加入区块链。 
最后,总结一下: 
  • 区块是区块链的基本组成单元。 
  • 每个区块由区块头和区块主体组成,头小身大。 
  • 区块头包括:见下图 
  • 区块主体包括挖出该区块的这10分钟内的所有交易信息,呈Merkle树结构排列。
对比特币来讲,真实情况是一个区块主体包含约4000多笔,更多的情况大家就举一反三吧,总之就是不断两组合并、哈希运算,依次往上计算,直到算到最后一个哈希值。 
Merkle树能够快速检验交易数据的完整性,即检验数据是否被篡改过。
根据密码学中哈希函数的特点,如果有人对数据做过手脚,计算出的哈希值也会变得完全不一样。
哪怕在这4000笔交易中,我只移动了一个小数点,你也能从Merkle树根的哈希值发现问题。

关于区块链,区块链,block,Merkle的相关新闻

区块链入门很简单 看这5份白皮书就懂了

一句话记住市值前100的加密货币

小白问答 | 区块链为什么需要跨链技术?

名词解析 | 什么是分片?

从尼克萨博被自动售货机“砸中” 到智能合约

主流货币

货币市值最高 24H涨幅最高

主流钱包

币信钱包 轻钱包 教程下载
Jaxx 轻钱包 教程下载
比特派 轻钱包 教程下载
IMTOKEN 轻钱包 教程下载
MyEtherWallet 网页钱包 教程下载

主流交易所

中文 人民币 交易方式
OKEX 币币法币
OTCBTC 币币法币
币安 币币法币
BitMEX 币币法币
火币Pro 币币法币