一个区块由区块整体信息、区块头和区块身体组成。
区块信息包括一个叫做神奇数的字符串,用于区分不同的区块,相当于表格的表头题目。它还包括表示整个区块大小的数字,类似于班级人数。
区块头的信息包括软件版本、上一个区块的哈希值、默克尔根、时间戳、难度目标和随机数。
默克尔根是通过将区块身体中的交易信息两两计算哈希值得到的最终哈希值,代表所有交易的结果。任何一笔交易发生变化都会改变根哈希值。
区块身体中存放各种交易信息,比如转账。这些交易以默克尔树的形式存在,就像一个树枝不断分叉,最后形成一个根哈希值。
由于这样的数据结构,区块链是一个整体,每个区块有联系,难度可以调整,时间可以标记,数据还有一定的结构,并得到最终哈希值。这种结构便于验算,保证了整个区块链的稳定。
推荐阅读:《百问百答:区块链系统入门》,通俗易懂,帮助你系统了解区块链。