火热的Grin,没落的PoW

这段日子没少被Grin刷屏,作为2019年的第一条鲶鱼,Grin着实吸引了不少人的关注。
值得一提的是,在目前使用PoW机制的项目越来越少的背景下,Grin依然采用完全的PoW机制,即所有人都只能通过挖矿来获得Grin。 这里面的门道,值得跟大家提一下。
1. 什么是挖矿
世有挖矿,然后有区块链,区块链常有,而挖矿不常有。
所谓挖矿,实质上是用计算机解决一项复杂的数学问题,率先求出特解的用户得以奖励。挖矿往往通过PoW(工作量证明)来实现。PoW机制指的是要求出示一定的证明来表明工作量,对于由小概率事件累计的工作来说,出示结果就等同于证明了工作量。

在挖矿这个行当,工作量就相当于算力,你的算力强,相同时间下工作量自然就大。对区块打包权的竞争,本质上是算力的比拼。

火热的Grin,没落的PoW

最初,矿工通过家用电脑就能实现挖矿,这段时间是去中心化体现的最好的阶段。随着时间的推移,机敏的商人们发现其中有利可图,于是许多专门用来挖矿的矿机诞生了,其挖矿效率远远超过了家用电脑。
人们逐渐发现,基于PoW的算力争夺战,不但会消耗大量的能源,更重要的是算力可能会被矿场所垄断,给去中心化造成威胁。
因此,近年来许多知名的公链采用的都是PoS(股权证明),以太坊虽然用的是PoW,但也在绞尽脑汁的把共识机制更换为PoS。
2. 矿机的发展史
要挖矿,自然就离不开矿机。广义的矿机,包含一切可以挖矿的电子设备,如笔记本电脑,也算矿机;狭义的矿机,指的是专门发明出来挖矿的设备,挖矿就是它诞生于世的唯一使命。
下面我们简要介绍一下矿机的发展史,只有对矿机有一个初步的了解,我们才能明白挖矿之争,他们究竟在争什么。
①CPU矿机:最早的矿机就是家用电脑,通过CPU来挖矿,普通人在家就可以成为矿工。
②显卡矿机:主要有两家显卡GPU芯片供应商,AMD和NVIDIA,说白了他就是加强了显卡配置的电脑。
③FPGA矿机:可以算一种过渡性矿机,使用FPGA可编程芯片为核心,相当于一个可定制的硬件。
④ASIC矿机:挖矿效率极高,每秒能进行万亿次哈希运算,相当于一百万个CPU的计算能力。
对①②来说,即便不用来挖矿,当成普通电脑来用也无妨,而对③④来说,不用来挖矿,就只能报废了,用来当电暖气都嫌他噪声大。现在市面上的矿机,主要就是②和④。明明④的挖矿效率极高,为什么②还能顽强生存呢?这里还有另一个问题。
3. PoW的命门
我们不难猜到,中本聪在设计比特币的时候,希望的自然是人人皆可挖矿。但随着区块链逐渐被外界所熟知,挖矿竞争越来越激烈,普通电脑的算力根本无法与ASIC矿机相抗衡,更不要说与掌握大量矿机的矿池相比了。
事物发展的趣味之处就在此,ASIC矿机因区块链挖矿火热而诞生,但客观上却对区块链及去中心化起到了反作用。此外,争议之处尤其在于,目前ASIC矿机主要被比特大陆等少数生产商所垄断,这几家生产商几乎完全占据了国际开采算力,被外界称之为“矿霸”。
试想,现在市面上的ASIC矿机倘若完全被比特大陆所垄断(现在也差不多了),那比特大陆除出售矿机获利外,肯定会选择与有实力的矿池联手垄断算力,才符合其利益最大化(现在它也是这么做的),这个时候,所谓的去中心化,PoW共识机制事实上就有名无实,沦为了一纸空文。
最初,PoW虽然在效率、能耗等方面遭遇诟病,但确实是最公平的共识机制。随着ASIC矿机的出现,挖矿生态无疑受到了影响,广泛共识存在的基础也随之变化,这是PoW机制的一个潜在的问题。
4. Grin做出的选择
不同于向PoS靠拢的众多公链项目,Grin依旧选择了PoW,那如何防止算力被矿霸裹挟,就成了摆在Grin面前的首要问题。
现实是,与显卡矿机相比,ASIC矿机算力更为强大,能耗也更低,但是也更容易受到矿霸的控制。为平衡显卡矿机和ASIC矿机的关系,Grin采用双PoW共识机制,包括面向显卡的 CuckARoo 和面向 ASIC 的 CuckAToo,而前者是一种抗ASIC算法。
在实现上,Grin约定了两年的过渡期。即在上线初期,抗ASIC算法占90%的出块比例,面向ASIC的算法占10%。此后两年内,抗ASIC算法所占的区块比例逐渐从90%下降到0,而面向ASIC的算法则从10%上升至100%。相当于每过8天抗/面向ASIC的比例下降/上升1%。
其目的也很简单,就是为了使项目在诞生之初不被矿霸垄断算力,提供了一个相对安全的缓冲期。如果起初就能通过ASIC矿机挖矿,那显卡矿机基本就被断了活路,而如果走抗ASIC矿机路线的话,则需要通过时常改变共识算法来避免ASIC矿机进化,极容易造成硬分叉。
没错,在这方面,XMR就吃了个暗亏。为了抗ASIC,XMR不断得硬分叉,每分叉一次,其核心用户就流失一次,逐渐式微。
5. 结语
有人问:有没有一种能够永久抵御ASIC矿机的算法?
答案是没有。因为技术在不断进步,现在的抗ASIC算法,几个月之内就会被ASIC矿机攻破。就目前而言,掌握强大算力的矿池,能够轻松毁灭一个与其相同PoW算法的区块链项目(如知名的SHA-256挖矿谜题)。
那PoW是不是就没落了?答案是那也未必,Grin这个缓冲的机制以后会被更多的项目所借鉴,应该说,这比PoS要更加公平些。对未来诞生的区块链项目来说,PoW依然是重要的共识机制。
而Trias则提供了另外一种思路,Trias提出“安全验证即挖矿”,并且能够通过贡献算力和安全验证程序等过程来挖矿,避免大量算力浪费在计算谜题上,转而将其运用在自动化分析或测试程序上,这也算是一种新颖的“工作量证明机制”。