「力场 lichang.io」公链挖矿第一社区!
原文精选:现在回到如何找到一个使区块有效的随机数的问题上。在第3章中我们讨论过,区块链主要有两层基于哈希函数的结构。第一层在是区块链上,每个区块的头部都有一个指针指向其前一个区块,第二层是在每一个区块里,包括所有交易的梅克尔树。
作为矿工,首先需要从你的交易池中选出一系列有效的交易并且编译成梅克尔树。当然,只要不超过每个区块随机数的交易上限,你可以选择编译的交易数量。然后,组装出一个新的区块,让它的头部指向区块链上的前一个区块。新区块的头部,有一个32位的随机数区域。你需要尝试不同的临时随机数,直到该随机数能使整个区块的哈希值小于目标值。这个目标值一般体现为以零开始的特定位数的数值。作为一名矿工,你可能使随机数从0开始,每次增加数值1,直到该随机数能使区块有效为止,如图5.1所示。
读书笔记:
1,区块链主要有两层基于哈希函数的结构。第一层在是区块链上,每个区块的头部都有一个指针指向其前一个区块,第二层是在每一个区块里,包括所有交易的梅克尔树。
2,作为矿工,首先需要从你的交易池中选出一系列有效的交易并且编译成梅克尔树。
原文精选:在大多数情况下,随机数试过所有32位可能的取值后,仍然不能产生一个有效的哈希值,这时候你必须做出更多的改变。注意,图5.1中币基(coinbase)还有一个随机数可以改动。当你遍历区块头部随机数所有可能的取值后,可以改变币基里的随机数,比如加1,然后可以重新改变区块头部随机数来寻找有效的哈希值。当改变币基里的随机数后,整个梅克尔树上交易的哈希值都会改变(见图5.2),因为币基值的改变会向上传递,所以改变币基的随机数值比改变头部随机数值的代价要大很多。
正因为如此,矿工大部分时间只改动头部的随机数,只有在遍历头部232个随机数值且还没有找到一个有效区块时,才改动币基的随机数。你所尝试的绝大多数临时随机数都不会成功,但若能够坚持足够长的时间,你总能找到一对正确的临时随机数组合——头部随机数与币基随机数,用来产生一个符合哈希值要求的新区块。找到后要立即宣布,就有希望得到相应的区块奖励。
读书笔记:
1,当改变币基里的随机数后,整个梅克尔树上交易的哈希值都会改变。
2,找到一对正确的临时随机数组合——头部随机数与币基随机数,用来产生一个符合哈希值要求的新区块。找到后要立即宣布,就有希望得到相应的区块奖励。
一叶之秋带你一分钟速读经典书籍,每天一分钟(只需阅读读书笔记部分),天天获新知。
一叶之秋——非著名股票分析师
CCTV证券资讯频道特邀分析师
币乎,币问内测作者;区分认证分析师
金色财经,币世界专栏作家
《区块链编年史》 《区块链重塑未来》系列作者
量价时空战法体系,一分钟读书俱乐部创始人
公众号:区块链项目评测
007er
网友评论