主页 > imtoken官网地址 > 了解比特币区块链的数据结构

了解比特币区块链的数据结构

imtoken官网地址 2023-02-16 05:54:35

让我们回到两人之间转账的过程来理解比特币区块链的数据结构。 我发起一个交易,就是我向整个区块链网络广播,你我要进行这个交易:我在没有你允许的情况下转一个比特币到你的地址。

但交易只有在包含在最新的比特币区块中时才真正完成。 一般来说,当一笔交易所在的区块后面加上5个区块,即包括自己在内一共6次确认,就可以认为这笔交易已经完全确认。 按照比特币每个区块10分钟的确认时间,一笔交易到最终确认大约需要1个小时。

比特币一个区块多少币_区块链和比特币的关系_比特币目前的区块高度

这包括两个步骤:首先,将交易打包到候选块中,每个节点可以根据规则生成不同的候选块; 第二,节点挖矿成功,候选区块成功添加到区块链末尾。 成为最新的官方区块。

那么,将交易包含在区块中意味着什么? 这就涉及到区块链最基本的数据结构,这也是其不可篡改的基础。

区块链和比特币的关系_比特币一个区块多少币_比特币目前的区块高度

下面的讨论可能有点枯燥,但这是比特币和区块链最基础的知识。 我将尝试用通俗易懂的语言来解释它。

区块链之所以称为区块链,是因为它的数据块存储在一条链上。 从第一个块开始,即所谓的创世块,新块不断地连接到前一个块以形成链。

比特币目前的区块高度_比特币一个区块多少币_区块链和比特币的关系

每个区块由两部分组成——区块头和区块数据。 其中比特币目前的区块高度,区块头中有一个指向上一个区块的哈希指针,这个哈希指针包含了上一个数据块的哈希值。 哈希值可以看作是数据块的指纹,即前一个块数据的指纹存储在后一个块的头部。 如果前一个区块中的数据被篡改过,数据和指纹就不会匹配,篡改就会被发现。 要更改一个块中的数据,必须相应地修改每个后续块。

比特币区块链设计有一种机制使得这种修改很难发生,这个我们后面讲“工作量证明”和“比特币挖矿”的时候会详细讨论。

比特币目前的区块高度_区块链和比特币的关系_比特币一个区块多少币

一个区块中的数据就是打包到这个区块中的一系列交易。 这些交易按照既定规则进行打包比特币目前的区块高度,形成特定的二叉树数据结构——默克尔树(Merkle trees)。 根据目前比特币区块的大小,一个区块可以容纳的交易数量约为2000笔,例如第526957个区块容纳1804笔交易。

比特币区块链的数据结构包括两个哈希指针,两者都是不可篡改特性的数据结构基础。 一种是形成“区块+链”(block+chain)的链状数据结构,另一种是由哈希指针组成的默克尔树(见图1)。 链状数据结构,很容易发现某个区块中数据的修改; Merkle树的结构起着类似的作用,可以很容易地检测到其中任何交易数据的修改。

比特币目前的区块高度_比特币一个区块多少币_区块链和比特币的关系

理解比特币区块链的数据结构

图一:比特币区块链的“区块链”和默克尔树