工作量的公平 POW

这里绝对的公平就是比特币最早的工作量公平(proof of work)。比特岛上原住民都要计算算术题以获得参与资格,这很像中国古代的科举制度。虽然有诸多诟病,但不可否认,在这个数十亿人口的国家,通过考试来分配工作和激励,是最公平的,但可能也是效率低下的。这个考试机制的设计有两个基本要求:

  1. 考试内容和工作能力要紧密相关
  2. 考试题目不能提前泄露,防止作弊

比特币的工作量证明,专门为此而设计。首先每一次的证明需要加载这段时间的所有交易账本作为一个区块(block),这些账本本身就是矿工们要验证的交易。然后我们在这个账本块后面加上一个小尾巴,使账本和小尾巴组成的字符串,经过哈希变换以后,头部出现足够多的0。这里每个账本块由全世界的交易组成,无法提前预知,而哈希变换是一个完全随机的过程,连续出现10个零,就好像丢10个筛子丢到10个6那么难。一旦账本块和这个小尾巴被验证之后,就会被所有的矿工验证。虽然找到这个小尾巴很那,但是验证起来很容易。被验证的块,一个个连起来就是区块链。如果有人改动了区块链账本里的任何一个字符,都会导致哈希结果错误。非对称加密和数字签名确保了交易双方的交易权限,而区块链工作证明保证了交易结果的正确可靠,两者配合确保区块链的不可篡改性。

规矩定下了,矿工就各显神通。很多人用计算能力更强的显卡来挖矿,还有矿工使用专门定制的ASIC(application-specific integrated circuit)芯片。这些都无可厚非,因为工作量的考试题,和验证账本的需求是耦合在一起的。矿挖的快,就是账本验证的快,理所应当获得更多的比特币奖励,这就是经典的按劳分配。但因为有些专用芯片挖矿效果特别好,占据了矿工收益的大头,招来了中心化过高的质疑。但既然是在规则范围内,质疑也站不住脚。反而那些质疑者的内心才是中心化的,因为他们在试图用规则外的方法维护其并不正当的利益诉求。芯片被制造出来,人人都可以购买使用,只要其生产没有侵害他人利益。

但围绕挖矿芯片的速度优化代码,还真有专利争议。AsicBoost在2018年发起了最具争议的专利行动,他们拥有提高哈希效率30%的专利,几乎所有矿工都会使用。开发者社区展开防御,尝试开发绕过他们专利的挖矿算法和新协议。这种升级的专利战争,将旧世界财富和强权的影响力,扩散到区块链世界,引发了大量不满。Coinbase率先采取了防御性的DPL (Defensive Patent License),不久William Ting就和知识产权律师发起了升级版Blockchain Defensive Patent License (BDPL) 以促进专利互通。最终AsicBoost 在2018-03-01宣布加入BDPL,改变了专利争议走向,维护了比特币社区的和平。

中国矿机企业Bitmain也面临同样的局面,但他不够开放,拒绝加入BDPL。一方面他可能已经在其销售的芯片里用了这个技术,但拒绝承认。另一方面前任设计总监Yang Zuoxing自己创立了Bitewei,却遭Bitmain起诉其窃取了技术。Bitmain的Antpool矿池曾占据超过17%的比特币矿力(hashrate),但这种能力却被社区所排斥。2018年3月Halong Mining(BDPL的成员)发布了其新款DragonMint miner series,短暂抢下了部分Bitmain的矿力份额。很多人期待Halong利用AsicBoost的技术对Bitmain带来进一步打击,以倒逼Bitmain加入BDPL,但似乎也徒劳无功。区块链不是空中楼阁,一整套区块链系统还是要运行在物理世界里。物理世界和人类社会的公平程度,最终都会反过来体现的区块链上。

除了专利问题,还有一个更严重的浪费资源问题。随着比特币挖矿竞争日益激烈,工作量证明难度日益加强。为了抢夺那相对简单的账本验证权,矿工要在无用的随机题上消耗百倍的资源。就好像为了抢一个包子,大家要比赛跑一场马拉松。为了解决这个问题,大家又想出很多创意。比如为了让计算资源有意义,有人开发了Primecoin (XPM)。这里认证算法是要求找出连续的质数链Cunningham chains,为数学做点贡献。其中最为成功的要数litecoin(LTC 莱特币)。除了比特币默认的SHA256挖矿算法以外,使用了另外一种对CPU和内存资源要求更平衡的scrypt算法,力求避免ASIC大矿池的垄断。同时也把块认证时间提升到了2.5分钟。这样算力的恶意争夺被大大弱化,资源浪费得到缓解,而交易转账的验证时间大大加快。目前有人统计,LTC已经替代比特币成为暗网的潜力代币

POW算力的本质是时间

当人们追求算力的时候,被POW工作内容蒙蔽了。不论内容如何,“工作”的最终目的是时间稳定的前行,区块相连保证事件发生的先后顺序不可更改。工作(work)是一个时钟(clock)。Proof of work名字的内涵是Proof of Time。这里把时间和“难度”捆绑在了一起,因为只有这样才能在去中心化系统中维持时针统一。当矿工增加,算力增加的时候,工作难度自动相应的提高,最终时间进度是不变的。而难度的调整有算法保证,不论你在地球还是在银河系外,无需任何事先交流,大家感受到的难度,也就是时间的进展是完全一样的。每一次出块,就是时钟的一个“滴答”。其实时间本就是人类定义的概念,我们发现某些现象规律的发生,这种现象完全中立、可信、去中心化,比如一个原子时钟。利用这些规律我们定义了时间的间隔。但这些规律背后是物理“难度”的约束,光速恒定不变,微观物理事件受限于光速,宏观规律受限于微观事件,最终产生了难以挤压的时间方向。只有在改变时空,改变这种约束时,人类定义的时间才会发生变化,就是相对论。而宇宙这个分布式系统的时钟,虽然有些地方快,有些地方慢,但是事物发展的前后顺序是统一不可篡改的。这种顺序一致性,是POW时钟的最终目的。

不论POW算法如何改进,区块的时钟不会停止。即使总有人发明高效的矿机来垄断算力,也改变不了时间的进展。虽然POW非常浪费资源,但确实这个设计,是利用宇宙的规律,弥补了人类概念的缺陷。然而人类孜孜不倦的追求时间旅行,想要超越时间的约束,没想到在区块链里变相实现了。通过Proof of Stake一种基于累计持币的激励算法。我们不需要这么频繁每次都考试,将大量精力浪费在机械的备考上。我们把历史上的考试结果积累起来,平时成绩好的,投票权就大。因为从经济角度讲,持币多的人,在这个系统里付出也多,他作恶的投入产出就小,导致没有作恶动机。那些靠挖矿卖币,短线赚钱的人,话语权会受到限制。但是矿挖的好,又长期持有的会被欢迎。这种社会化的制度,在区块链时空中产生了相对论效应,持币者扭曲了时空,实现了时间旅行。目前这种力量不受矿机市场的影响,所以在2018年4月Bitmain发布针对ETH的ASIC矿机后,引发ETH社区的激烈讨论,其中以太坊创始人Vitalik Buterin的选择,就是加速Casper POS协议的实施进行防御。但因为POW时间的属性是一切的基础,所以不存在纯粹的POS,必须是POS和POW的组合。因为如果没有时间,何来时空扭曲?没有时间就没有区块链。

results matching ""

    No results matching ""