重新创造比特币18:工作量证明(上)
作者:何岩,由 recreating.org发行。
0.前言 #
上一篇,Bitcoin的点对点网络演进成了一个可以自治的群系统。
这一篇,我们将解决最后一个遗留的难题,那就是分配记账权的单点:Timestamp Server
1.最后的单点Timestamp Server #
一大早,中本聪和Gilfoyle就来到了咖啡馆,Bitcoin的记账网络演进成了真正意义上的群系统,这让他俩很兴奋,他俩想乘胜追击,一口气拿下最有一个难题,系统中最后的单点:负责分配记账权的Timestamp Server
中本聪说:“最后这个方案太重要了,如果设计不好,我们之前的努力都会前功尽弃。”
Gilfoyl说:“是呀,记账就等于得到区块奖励,记账权就是利益,分配记账权就是分配利益,这关系到Bitcoin系统的生存还是死亡!”
尽管中本聪预感到了,这次的问题很难,但是没想到会如此困难,简直是进入了绝望之地。
老板Bob看着这哥俩早上来,讨论一天,喝了一桌子咖啡杯,晚上垂头丧气的离开。第二天再来,又是一桌子咖啡杯,又是一无所获。如此反复持续了整整一周。
这一天,中本聪实在脑子不转了,趴在桌子上睡着了。
2.梦中的网络世界 #
在梦中,中本聪看到了自己创造的Bitcoin世界。
在这个世界中,整个网络像星系一样,缓慢转动着。
中本聪感到一种和谐之美,而自己正是这个世界的造物主。
忽然,中本聪发现了那个叫小男孩的节点。
中本聪拉近了视角,听到小男孩正在和邻居节点牛头人抱怨。
小男孩一脸愤懑:“牛头人,我发现了一个叫黄鼠狼的骗子节点,他获得了记账权之后,不守规矩,偷偷的把区块奖励由50Bitcoin给改成500Bitcoin了,这样他就多得了450个Bitcoin。还好我仔细检查了他广播出来的区块数据,才发现了他的骗子行为,这个黄鼠狼太坏了!”
牛头人说:“啊?是吗?稍等我也看看我这里的账本。”
牛头人翻看着之前同步过的区块数据。
牛头人也愤怒了:“真的啊!黄鼠狼记账的那个区块里,的确给自己的区块奖励写成了500个Bitcoin。这个坏蛋太贪了,我们要告发他!”
小男孩说:“可是,我们应该告诉谁呢?告诉我们的邻居们吗?他们即便知道了,也和我们一样改变不了什么,毕竟区块已经产生,没有办法改变。那个记账的时间段只有黄鼠狼一个区块被广播,大家也没得选择。”
牛头人说:“那我们就告诉宇宙的中心,拥有至高权利的timestamp server,让他知道黄鼠狼的罪行,以后不再给黄鼠狼分配记账权。”
小男孩说:“这个方案听上去不错,但也只能秋后算账,无法修复眼前正在发生的作恶行为。”
牛头人说:“那咋办?你还有啥办法?”
小男孩说:“我觉得,如果想从根本上解决,只有改革记账权的分配制度。也就是说,问题的根源不在黄鼠狼,而在我们至高无上的权力中心单点:timestamp server。”
牛头人问:“你要革timestamp server的命啊,你可得小心 ,万一timestamp server翻脸了,把你加入黑名单,以后你再也得不到记账权了!”
小男孩说:“不怕,大不了我重启一下,换个IP,他就又不认识我了。”
“其实我早就看Timestamp Server不爽了,我一直怀疑他以权谋私,嘴上说的是随机分配,确总是把记账权分配给那几个老节点,例如我们的三爷(节点3)就总是得到记账权。”
“另外,一个10分钟的时间段里,只会有一个节点有权利来进行记账,如果这个节点作恶,我们都没有其它区块可以选择。”
3.竞争 #
牛头人问:“你的意思是,要把记账的权利,从单点(timestamp server)手中夺走,由我们所有节点来共同决定分配权?”
小男孩说:“对,只要权利在某一个单点手中,公正就无法得到保障,即便这个单点不作恶,也会给像黄鼠狼这样的节点以可乘之机。”
小男孩接着说:“如果记账权由所有节点们来决定,无非有两条路。”
“第一条路是少数服从多数,即每十分钟大家投票一次,谁得票多,谁获得记账权。
“第二条路是自由竞争,即所有节点都可以自愿参与解答一道题目,谁得出答案谁就获得记账权。”
记账权的单点分配,对应的是集体主义。为了达到社会整体的更幸福,资源由少数精英来集中控制,即计划经济。
记账权的少数服从多数,对应的是自由至上主义。这种模式下很容易演变成为自由放任的无政府主义。更诡异的是,无政府主义很可能最后会演变成集体主义。
记账权的自由竞争,对应的是法治自由主义。个体的自由是有边界的,每个人只需要关注自身利益,在法治规则内进行公平竞争,社会的整体就会朝着更加美好的方向演进,即资本主义。
集体主义和自由主义的本质区别在于,对世界的底层运作机制的理解不同。
集体主义将世界看作是一个确定性的精确系统,系统的未来可以被计算。所以集体主义重视精英,轻视普通个体,因为精英比普通个体更懂得如何计算。
而自由主义将世界看作是一个非确定性的复杂系统,系统的未来不可被计算。所以自由主义重视普通个体,怀疑精英的设计模式,因为随心而动的即兴随机才是完美可以产生的土壤。
小男孩说:“对比这两种自下而上的自由模式,我选择第二种,即,节点通过自由竞争获得记账权。”
牛头人问:“为什么呢?第一种少数服从多数,看上去更民主啊”
小男孩说:“不要迷信民主,少数服从多数的那条路存在这样几个问题:
第一,大多数人可能选错,因为乌合之众的理性决策并不可靠。
第二,谁来定义时间间隔,即谁来定义10分钟到了。
第三,参选的节点凭什么来获得投票,看脸吗?
在我看来,少数服从多数的机制,还不如记账权单点分配靠谱呢!”
牛头人说:“自由竞争就不存在这些问题吗?”
小男孩说:“你别说,自由竞争真的很完美。
第一,竞争可以增加存在的合理性。
竞争的本质就是付出了劳作,如果这个世界上真的存在一样东西,可以证明自己的存在是合理的,这样东西就只有劳作。
你想想,如果你面对一群陌生的追求者,你要选择一个人来结婚,你会考虑什么因素?
谁更有钱吗?有钱只能代表过去,不能证明他现在更有能力,也不能证明他的钱是来路干净。(POS机制)
别人的评价吗?评价也是过去时,另外,你怎么知道别人的评价不是被收买,或者被欺骗。(DPOS机制)
那么,只有看他们如何追求你,谁付出的努力最多,并且努力的方式最诚恳。
追求你所付出的劳作,就是一种证明,证明追求者的存在是合理的。
我们将其称为:工作量证明,英文Proof of Work,简称:POW。
工作量证明不能保障他一定是个好人,但确是唯一理性的评判方式。
如果不付出劳作,人如何安心存在?
第二,竞争可以定义时间。
我们可以将题目的解答难度设计成接近10分钟,这样就不需要一个中心化的单点来定义时间。
谁有资格定义时间呢?你如何证明你的手表的时间是客观的,你的手表如果不能,那你的参考谁定义的时间呢?你会说,参考电脑中的时间,电脑的时间又是参考谁,一层层追溯下去,就会发现我们的世界,时间的定义最终还是依赖一个单点。
“我国的北京时间由「国家授时中心」发布。国家授时中心的前身是陕西天文台,位于我国中部腹地的陕西临潼。
所以说,北京时间以「国家授时中心」的原子钟为准。”——WIKI
第三,竞争导致可选择。
因为竞争是自由参加,所以可以同时存在多个节点解答出题目,并同时广播。
如果有人作恶,我们就可以抛弃错误区块,而选择自己认为正确的。
选择自己认为最快且最正确的区块同步到自己的账本,本质上就是在进行投票。
这样就可以让黄鼠狼这种偷偷改变区块奖励的区块作废。
所以说,即便你付出了工作量,只能证明你有权利参与记账,但是因为这是竞争,所以大家可以选择你的竞争对手。”
中本聪心想:“我明白了!所以,问题的关键点就是,如何设计出这样一个皇冠级别的题目,来表达工作量的证明。”
4.后记 #
本篇定位了要解决的问题:去掉单点。
又讨论出了解决的方向:通过自由竞争来代替中心控制。
最后聚焦到了具体的点:设计出一个可以用于节点竞争的题目。
工作量证明的题目如何设计?请见下篇。
相关链接 #
Part One : 交易
重新创造比特币1:从一个简单的web交易系统开始
重新创造比特币2:第一个版本上线啦
重新创造比特币3:舍弃账户模型
重新创造比特币4:数字签名
重新创造比特币5:公钥和私钥
重新创造比特币6:第二个版本上线啦
重新创造比特币7:UTXO
重新创造比特币8:基于UTXO的系统重构
重新创造比特币9:万物皆交易
重新创造比特币10:交易脚本
Part Two : 群系统
重新创造比特币11:群系统(上)
重新创造比特币12:群系统(下)
重新创造比特币13:P2P网络
重新创造比特币14:交易的同步
重新创造比特币15:账本的同步
重新创造比特币16:Block Chain
重新创造比特币17:网络的弹性
重新创造比特币18:工作量证明(上)
重新创造比特币19:工作量证明(下)
重新创造比特币20:分叉之重组与分裂
英文版Amazon.com在售 : Recreating Bitcoin
BSV打赏:
1Djc4TdVBi8urzmSXKHwg8cpEAYKcRQxgY
©2019 - Recreating.org all rights reserved