每日一篇

《精通比特币》(7)

2017-09-18  本文已影响0人  007刘利珍

6.10交易池和孤立交易池

交易在接收,验证之后会放入交易池中等待验证,但不是每笔交易的父交易一定出现在子交易之前 ,因此会有一些交易无法找到他们的父交易,他们就会储存在孤立交易池中。一但交易池中添加了新的交易,马上和孤立交易池中的交易进行验证,一旦验证真实。交易从孤立交易池中删除进入交易池。他们只与启动时间和重启时间有关,一开始为空。

还有一种池是UTXO池,用来集合未花费的比特币,他不可能为空,并且每个节点没有太大的不同。

6.11警告消息

比特币的世界里还可以发布紧急通知,消息的发布是要多重签名的,确保不会发布虚假消息。

7.1区块链的简介

      区块链就是一个又一个的区块连成一条直线,有时间的先后顺序。

  对区块头(每一个区块都有一个区块头,大约80个字节,不是区块链最上面的区块)进行SHA256加密哈西,会得到一个哈西值,推出该区块的高度。每一个子区块链都还有父区块链的哈西值,这样他就可以追溯他的去区块,与他联成一条直线。在交易刚开始,可能一个父区块有多个子区块,但交易确认之后一个父区块就只有一个子区块了。这说明最表层的区块可能发生变化,但低层区块很难发生变化,因为它一变,他之后的所有区块都发生了变化,计算量太大了。一般一个区块后面有6个区块,这个区块就不容易改变了。

7.3区块头

一个区块是由区块头和储存在这个区块中的交易组成。区块头是由3部分组成,第一个元数据是与父区块的哈西值有关 ,用于与父区块发生连接。第二元数据是时间戳,难度和nonce与挖矿竞争有关。第三元数据merkle树根,有交易有关。

7.4区块标识符

区块主标识符是它的加密哈希值一个通过SHA256算法对区块头进行两次哈希计算得到的数字指纹。它可以唯一地识别一个区块,得到唯一的一个区块高度,是作为一种元数据储存在区块中。

区块高度,不能唯一制定一个区块。

7.5创世区块

区块链的第一个区块创建于2009年,被称为创世区块。它是区块链中所有区块的共同祖先,这意味着你从任意区块,循链向后回溯,最终都将到达创世区块。

7.6merkle树

Merkle树是一种哈希二叉树,它是一种用作快速归纳和校验大规模数据完整性的数据结构。

在比特币网络中,Merkle树被用来归纳一个区块中的所有交易,同时生成整个交易集合的数字指纹,且提供了一种校验区块是否存在某交易的有效途径。merkle树是从下到上,不断进行哈西计算,最后形成一个32字节的merkle根。叶子要是偶数,不是偶数会发生复制,使其变成偶数。

上一篇下一篇

猜你喜欢

热点阅读