毫无疑问,比特币是人类的一项伟大发明,这样的发明可以与蒸汽机相提并论。不过,与蒸汽机不同,比特币更多的有赖于人的合作才能运转自如。人依然是这一变革的主体。也就是说,人,并没有因为比特币的出现被作为——最不稳定的元素——被弱化了(如工业时代,机器替代人)。从某种意义上说,如果说蒸汽机更多的是一种动力的替代,是一次伟大的发明;而比特币则更多的是制度的优化,是一次伟大的文明进化。
比特币对于人类文明的贡献体现在对于“双花”问题的突破性解决上。“双花”是加密数字货币的核心难题。所谓“双花”,通俗的类比是“盗版”——你可以将你持有的图片、音乐、视频等数据文件,复制若干份,送给任何人。对于比特币来说,如果“盗版”存在的话,你可以把同一笔钱花费若干次。
比特币,是通过全球账本和矿工验证等多重机制来解决“双花”问题的。
区块链,实际上就是一个全球账本。这个账本的存在,表明一个事实,你的某个账户有多少钱,每个地球人都知道,你不可能花费不属于你的钱。你通过私钥签名来证明某笔钱是你的。
矿工验证,包括两个部分,第一部分就是验证你花的是你的钱;第二部分就是获得记账权的矿工,将你的花费记录到——区块链——这个全球账本上,让所有人都可以核查,这样你就不可以花费第二次了。
验证,是一次名符其实的大发明。签名数据和脚本运行构成了验证机制的核心内容。“锁定——解锁”是“收入——支出”的算法表达。私钥签名,实现解锁功能,从而证明这笔钱是我的收入,我可以对其进行支出,支出给谁,就有谁提供新的锁定,如此往复。
当然,你可以继续花费已经花费了一次的钱。也许,你的第二次花费比第一次花费更早记录到了区块链中,从而使得第一次花费不能通过验证,也就不可能再记录到区块链里面。解决这个问题的方法,就是时间。如果你是卖方,即使发现买家已经付款并且已经被记录到区块链了。你最好再等待60分钟,因为比特币区块链大约每10分钟产生一个区块,60分钟过后将有6个区块产生,如果此时发现你的收款依然在区块链中有效存在,你就可以放心发货了。当然这是一种不便,有些加密货币钱包据此开发出了多重签名付款,通过钱包作为第三方担保——这笔钱不会被花费第二次——确保用户会收到这个钱包付出的每一笔钱。
或者,你可以自己当矿工把自己花的钱再记录一次。这就涉及区块链攻击了。当你发现X+1的区块里面已经成功记录了你第一次的花费。你心生歹念,想再次花费这笔钱。你当然知道其他矿工不会再将你的再次花费记录到区块链。于是你自己做矿工,自己挖矿,重新生成第X+1个区块。这时,你是在跟全网所有的矿工在竞争,成功的可能性很小,除非你拥有全网51%的算力。但是,如果你拥有了这样的算力,你是不屑于干这种“偷鸡摸狗”的勾当的,因为依靠这样强大的算力,可以光明正大的获得更多的比特币。如果你执意进行挖矿攻击,一旦成功,所有人将会失去对比特币的信任,网络的坍塌可能会在瞬间变成现实。到时,你也将因此承受损失。很显然,这是一场没有胜者的游戏。
理性,成为人性贪婪的最后防线。从现实看来,这样的防线依然坚固,至今尚未有比特币的挖矿攻击报告。
也许你已经发现。比特币,对人类文明进步的贡献并不是通过道德的倡导和法律的规制来实现的。比特币,坦然面对“双花”,用数理的方式,技术的手段去解决它。当然,这样的方案,也许还不够完美,但是,至少它告诉我们一种可能:社会文明是可以通过发明来推进的,而且效果还不赖。也许,文明与发明之间本身就是相通的,是相互促进的。