学霸是如何记账的
关于学习有个著名的理论,叫费曼技巧——即用自己的语言,把自己语言,把自己理解的模型讲给别人听,这个过程中,很快就发现讲着讲着讲不明白了,或者自己认为自己讲明白了,别人就是听不懂,这些地方,理解问题的薄弱点。
在一个跟一个朋友谈论比特币的时候,我发现自己的理解比特币的奖励机制这一块是非常薄弱的,薄弱到自己也讲不清楚到底区块是怎么产生的,由谁产生的?这几天,这些个问题不断的在我脑袋里闪现,让我辗转反侧,甚至已经到了夜不能寐的地步了,所以这几天我一直试图找出其中的问题,虽然收效甚微,但是我还是想尝试在解释一下,也试图理清一下自己的思路。
如果用一个形象点的比喻,比特币的挖矿行为就如同学校里面全校学生在校长的号召下,每十分钟解出一道数学难题,第一个解出数学难题的学霸,他才有资格在学校公开的账本上记录下一段时间的学校开支,同时获得校长的奖励。
这里的校长就好比是中本聪,他把“解出难题才有记账资格才能获得奖励”的这套规则写成程序,也就有了今天看到的比特币应用。
这里全校的学生就是矿工,为了获得奖励,全校的学生都在未来获得奖励不停的在考场里解题,居然乐此不疲。
这里的十分钟,也就是每隔十分钟左右,会有一个幸运矿工,拿到记账权,然后记账的同时得到手续费和另外的出块奖励。
这里的数学难题(这个数学难题可以调节难度,从而保证每隔10分钟左右出一个块),其实就是找到一个幸运号码(比如哈希值前7位全为0的),这个幸运号码全靠所有矿工做哈希运算。
这里的记录学校开支其实是把过去10分钟所有的交易打包记录到学霸自己的区块上,然后广播出去,其它节点验证矿工收到你的广播后,只验证三项内容:
1、所有交易输入是否都≥交易输出?
2、所有交易是否都从未发生?
3、用你的随机数哈希区块,哈希值前缀是否有7个“0”?
然后开始下一轮的解题中,直到下一个10分钟左右,新的学霸就开始在原来学霸记账的区块上记账,获得奖励,以后所有的区块都是这样生成,无限的循环下去。
此时你会发现一个残酷事实,就是陪着学霸解题的其它同学在这次解题的过程中,白干了,这也是比特币的POW,基于工作量证明的模式。广为人诟病(耗电)的一大原因,但是随着区块链技术的发展,涌现出来更多的公式算法,想知道更多的区块链新知,请持续关注我,扫码下面二维码: