我们听到过很多关于公共区块链如何改变世界的讨论,但要想在全球范围内应用,共享公共分类账还需要一个功能强大,高效安全的共识算法。
共识算法,例如比特币的工作量证明(我们最常听到的),能够完成两件事:确保区块链中的下一个区块是唯一真实的版本,并避免强有力的竞争对手破坏系统和分叉块链。
在工作量证明中,矿工之间通过比拼解决加密难题的速度而相互竞争增加的下一个区块(一组交易)。 第一个解决难题的将赢得胜利。作为奖励,矿工将收到12.5个新铸造的比特币和一笔小额交易费。
虽然这是一个凭借自己能力争取权益的杰作,但比特币的工作证明并不十分完美。
最常见的批评是:它需要大量的计算能力,无法更好地扩展(确认交易大约需要10-60分钟),并且大多数挖矿都集中在世界上电力便宜的地区。
比特币创造者中本聪(Satoshi Nakamoto)使我们意识到了区块链的潜力,但这并不意味着我们不能继续探索更快,更去中心化和更节能的共识算法。
以下是一些共识算法的替代方法(但清单中并没有全部列出)。
权益证明
最常见的工作量证明替代方法就是权益证明。
在这种类型的共识算法中,’验证者’不是投资在昂贵的计算机设备上,而是投资在系统硬币中。
注意验证者这一术语。 这是因为权益证明中不再创造硬币(挖矿)。 相反,所有的硬币从一开始就存在,验证者(也称为利益相关者,因为他们持有系统中的股份)需严格支付交易费用。
在利益证明中,被选择创造下一个区块的机会取决于你拥有的系统硬币比例。拥有300枚硬币的验证者被选择的机会将是拥有100枚硬币三倍。
即使验证者创建了一个区块,该区块仍需提交到区块链上。不同的权益证明系统在如何处理这些问题上有不同的见解。例如,在Tendermint中,系统中的每个节点必须在区块上签署,直到半数以上赞同,而其他系统会随机选择一组签名者。
现在我们遇到了一个问题: 如何阻止验证者创建两个区块并收取两组交易费用呢?如何阻止签名者签署两个区块?没有任何损失的参与者是没有理由要好好表现的。
在“密码经济学”新兴领域中,区块链工程师正在探索解决这个问题的方法。其中一个就是要求验证者锁定某种虚拟库中的货币。
如果验证者试图双重签署或分叉系统,那么这些硬币将会被削减。
点点币(Peercoin)是第一个应用利益证明的硬币,其次是黑币和NXT。 虽然目前以太坊依赖于工作量证明,但其计划在2018年初实施权益证明。
行动证明
为了避免过度通货膨胀(当太多货币涌入系统时变回发生),比特币只能产生2100万枚。 这意味着,比特币区块奖励补贴终会结束,到那时比特币矿工只能获得交易费。
有些人猜测这可能会导致由于人们以自身利益行事破坏系统而产生的安全问题。 因此,行动证明作为比特币的替代激励结构而被创立。行动证明是一种结合工作量证明和利益证明的混合方式。
在行动证明中的矿工将会与传统工作量证明中的矿工比赛解决加密难题。根据实施情况,挖掘的区块不包含任何交易(它们更像是模板),所以获胜的区块将包含矿工的奖励地址。
此时,系统切换到权益证明。 基于前面的信息,选择随机的验证者签署新的区块。 验证者拥有的系统硬币越多,他或她被选择的可能性就越大。 一旦所有验证者都签署完毕,这个模板就会变成一个完整的区块。
如果所选择的验证者中有一些不可用于产生区块,那么将会选择下一个获胜区块,选择新的一组验证者,依此类推,直到区块接获得正确的签署量。费用将在矿工和签署区块的验证者之间平分。
对行动证明的批判声音与工作量证明(需要太多的矿区能量)和利益证明(无法阻止验证者双重签名)相同。
Decred是目前唯一一个使用可变行动证明的硬币。
销毁证明
销毁证明,不是把钱投资于昂贵的计算机设备,而是你’通过将货币送到一个不可退回的地址上销毁硬币。 通过将你的硬币提交到永远无法复原的区域,使你在基于随机选择过程的系统中拥有矿产的永久权利。
根据销毁证明的实施,矿工可能会销毁本地货币或替代链中的货币,如比特币。 你销毁的硬币越多,你被选中挖掘下一个区块的机会越大。
随着时间的推移,你在系统中持有的权益会逐渐衰减,所以最终你会想要销毁更多的硬币,以增加你被选中的几率。 (这模仿了比特币的采矿过程:为了保持哈希率你必须不断地投资于更现代的计算设备。)
虽然销毁证明是工作量证明的有趣替代品,但该协议仍然浪费了不必要的资源。还有一种批评意见认为:挖掘能力只给了愿意销毁更多货币的人。
唯一使用销毁证明的硬币是slimcoin,一种基于点点币(peercoin)的加密货币。 它综合了工作量证明,权益证明和销毁证明,但是在这个时候它还处于半活跃状态。
容量证明
正如我们所见,大多数替代协议都采用了某种类型的付费方案。 容量证明也是一样,但在这里你可以用硬盘空间’支付”。 你所拥有的硬盘空间越大,挖掘下一个区块和获得区块奖励的机会越大。
在容量证明系统中挖掘之前,算法生成的庞大数据集都存储在硬盘驱动器上。 你拥有的区块越多,找到块链中下一个区块的机会越大。
通过投资TB级的硬盘驱动空间,你可以给自己购买一个更好的机会去创建重复块和分叉系统。但目前我们仍然面临着无法阻止不良行为者的问题。
容量证明包括存储证明和空间证明。 Burstcoin是唯一使用容量证明的加密货币。
运行时间证明
芯片制造商英特尔(Intel)已经提出了自己的替代共识协议,称为运行时间证明。 这个系统的工作方式类似于工作量证明,但消耗的电量却少得多。
此外,该算法使用可信执行环境(TEE)(例如SGX)来确保随机抽奖方式产生区块,代替了让参与者解决密码难题。
英特尔的方法是基于TEE提供的保证等待时间。 根据英特尔公司的说法,运行时间证明算法可以扩展到数千个节点,并且可以在任何支持SGX的英特尔处理器上高效运行。
该协议需要你信任英特尔 – 而不是第三方(公共区块链一直试图摆脱的机构)。
作者:Amy Castor
翻译:cici@比特币中文网
网址:http://www.coindesk.com/short-guide-blockchain-consensus-protocols/
【声明:此文为本站原创翻译,如有不当之处请多指教!欢迎转载,转载请务必注明译者以及转自比特币中文网!】
(免责声明:本文仅代表作者本人观点,不代表比特币中文网立场)