比特币挖矿是怎么回事?
想要弄清楚比特币挖矿到底是怎么回事,就得先明白比特币这种最近十多年出现的钱,和之前的钱有什么不同。
关于钱的本质,我个人比较认同伊隆马斯克在不久前访谈中提出的洞见:
Money is a database for exchange goods and services...
钱是一个用于交换商品和服务的数据库……或者换一种坊间更加流行的说法:
钱的本质是记账。
说到这里你可能会不同意,当前这种基于银行结算系统的电子货币体系本质是记账,这个还算好理解;
但历史更久远的实物货币系统,无论是纸币、铸币还是贵金属、贝壳、粮食布帛,它们哪个乍一看貌似都和记账八竿子也打不着。
为了方便说明这一点,我们可以设想一个更贴近生活的场景:
大柱子、二栓子和翠花三人组了一个斗地主的局,约定决战到天亮,且一定要分出胜负。对如何记录每局输赢,大致可以采取以下几种方案:
使用筹码,每局根据输赢实时结算;使用纸条,每局根据输赢选择贴/撕;使用账本,每局根据输赢记录正负分;这几种方法各有利弊,筹码和纸条可能会丢失或者被伪造,账本也可能会被负责记账的人做手脚。
但无论使用哪种方案,最终的目的都是一样的,也就是准确记录和统计斗了一晚上地主之后,被惩罚玩真心话大冒险的到底是谁。
同样的道理,无论我们使用的货币样式是贝壳、贵金属、纸币、铸币、支票、信用卡还是移动支付,都只是为了在经济活动中支持大范围的商品和服务贸易,并且忠实记录其中的应收应付、盈余赤字金额。
钱这个账本或者说数据库之所以能有效,是因为所有这个系统的参与者都相信它有效,并且心甘情愿地用有价值的商品和服务,换取这个数据库/账本中记录的余额。
也就是说,钱能值钱的前提,是这个账本的记录不能被记账的一方随意篡改。
古今中外的无数案例证明,这个问题不解决,很容易在战争、瘟疫、经济萧条等特殊时期,引发因为大规模篡改账本余额导致的信任危机。这必然会让钱变得不值钱,也就是通常人们说的“通货膨胀”。
所以比特币作为一种最近10多年全新出现的钱,对这个问题的解决方案也非常简单粗暴:
既然在只有一个账本一个记账方的情况下,不可能杜绝账本被篡改的问题,那么索性就让所有人都保留账本并且同步记账。
也就是把中心化记账,改为分布式记账。
大柱子二栓子和翠花各为斗地主的输赢保留一份账本记录,会让其中某个人通过在账本上做手脚的方式,单方面耍赖的企图变得极其困难,甚至可以说是不可能完成的任务。
但这样做又会出现一个新的问题:
同步更新账本时,格式顺序以谁的记录为准?
同样是大柱子+2 二栓子-1 翠花-1的记录,三个人都想把自己放在最前面。
二栓子也许会记:
二栓子-1 翠花-1 大柱子+2
翠花则可能会记:
翠花-1 大柱子+2 二栓子-1
如果不能达成一致,到最后核对账目的时候肯定会非常麻烦,如果要指定一个人先记录其他人照抄,则又会出现跟只有一份账本一样,无法排除被篡改的可能。
所以只好决定在每轮记账的时候用猜拳的方式,随机决定一个人负责记账,其他两人则在核对后原文照抄,这样才有可能让一个同步更新的分布式账本系统正常运转。
这个机制,其实就是比特币网络里随机决定记账权的挖矿(mining)机制。
不同的是,比特币为了避免记账的参与方蓄意搞破坏,在争夺记账权的过程中引入了“工作量证明”(Proof of Work)这个门槛。
也就是说,所有参与争夺记账权的设备,都需要通过投入算力的方式纳一个投名状,并且将新发行的比特币作为奖励给予随机获得记账权的设备。
这使得那些原本有搞破坏想法的参与方,面临一个利弊权衡:
既然都投入了足以争夺记账权的算力资源,长期看搞破坏远不如参与记账赚比特币奖励来得划算。
可以看出,这个设定让比特币网络里所有的参与方,在机制上享有公平的获得记账权利的机会,同时让在网络中作恶,变成一种事实上成本高昂、损人损己的愚蠢行为。
这一机制的存在,最主要的目的是让比特币这个承载巨额价值的分布式数据库,能够彻底脱离信任有效运转,并且彻底杜绝数据记录被记账方篡改的可能性。
也正是比特币的挖矿机制,让人类拥有了一种最不依赖信任,却又最值得信赖的钱。