主页 > imtoken钱包官方版下载 > 第三期:比特币账本中记录了哪些信息

第三期:比特币账本中记录了哪些信息

imtoken钱包官方版下载 2023-09-12 05:10:07

比特币是一种分布式账本。既然是账本,就会分成很多页,有编号。那么这个账本的每一页都可以理解为一个区块链,那么这个账本的第一页就是创世块。

让我们再次解释创世块的概念。区块链由多个连接的块组成。每个区块记录一段时间内网络中比特币的交易。区块可以看作是账簿中的一个账页。要构建的第一个块称为创世块,并具有唯一的 ID 号。除了创世块,每个后续块都包含两个 ID 号,一个是块本身的 ID 号,另一个是前一个块的 ID 号。通过ID号之间的前向和后向指向关系,将所有区块依次连接起来,形成区块链。

它只记录了从地址a转移到地址b的比特币数量,以及交易时间、交易数量、手续费、区块高度等,截至2019年12月6日晚上56点,此时以太坊的区块链高度为9060758;比特币区块高度为606918。

那么这个块高度是怎么回事?比特币的账本里也有规定,就是我们做账的时候,账本的这一页每隔十分钟就会被填满一次,因为这个账本的大小是有限的。中本聪规定比特币账本的每一页只有 1m 大小。当它已满时,将记录下一页。那么每一页代表一个区块链高度。今天比特币的区块高度是608918,也就是说比特币的账户只有这么多页。以太坊有超过 900 万页,而比特币只有 60 万多页。

我们知道这个账本的记账规则,每一页记录的是什么类型的信息,但是如果有人故意弄错了怎么办?如何快速识别和高效对账?

这将使用我们昨天学习的哈希函数,无论我们使用比特币还是以太坊,无论他们账本的每一页是100条信息还是1000天的信息,我们都要做一个哈希运算。在这个页面的账号之后,经过哈希运算,我们会得到一个简单的汇总信息。有了这些汇总信息,我们对账就方便多了。我们不需要验证这个区块中的所有交易,我们只需要验证这个摘要信息。摘要消息就是这个值,000bfa48589fa7e86aa4bbdf147ea649c1bb4bb17ae99626bd2e7159aaab7290。

如果全网有100个记账员,其实记账员也叫矿工。他们的工作是收集和打包每笔交易信息。至于这 100 名矿工为什么要做这项工作,我们后面会提到,反正他们在 10 分钟内收集了全网的所有交易信息,而这些信息经过哈希运算后就可以发布。

如果100个矿工中有99个在aaab7290末尾发布了汇总信息,而你发布的和别人的不一样,说明你的记账有误,也就是无效记账。这里我们使用哈希函数的两个函数。第一个功能将10分钟内非常复杂的信息及时化简为一组非常简单的汇总信息;第二个功能是验证信息,这组复杂的原始信息若有任何细微的变化,经过哈希运算后得到的汇总信息,将完全无法识别。这样,矿工记错账户一目了然,非常方便。这样,我们就可以确保比特币账本的这一单页是正确的。但是这时候还有一个问题,就是我们记录第100个账号的时候,如果有人偷偷改了之前的第20个账号怎么办?

其实这个问题也很容易解决。让我们从创世区块开始。第一个创世块有一个唯一的 ID 号。我们对区块链进行hash后,得到一个摘要值,比如尾号是2938,

当所有矿工得到的摘要值都经过验证后,本区块结束,进入下一个区块。但是,在对下一个块进行哈希处理时,除了包括这个区域之外,除了包含该块的所有内容之外,还包含了前一个块的摘要值。同样的,第三条区块链做哈希的时候,也包含了第二个区块的摘要值。以此类推,直接推到今天第60万块。其实之前所有区块的hash值都已经嵌套了。无论未来区块的高度有多高,无论有多少区块,前一个区块都无法更改账本的所有内容,即使您只更改前一个账本中的任何小数点,那么当您操作再这个块比特币账本是谁在记账比特币账本是谁在记账,你得到的摘要值会和别人的不一样。现在,在比特币账本中,这60万个账户页面中每个账户的正确性,没有人可以随时更改。