权益证明简介
比特币的工作量证明算法(proof of work)成熟稳定,安全性高,消耗能源,交易速率受限。因此虚拟货币领域产生其他共识算法,如“权益证明算法(proof of stake)”,活跃性证明算法(proof of activity),销毁证明算法(proof of burn),容量证明算法(proof of capacity),经过时间证明算法(proof of elapsed time)。下面介绍权益证明算法。
权益证明算法(proof of stake):通过各种方式组合下列因素:随机选择,虚拟货币拥有量,虚拟货币持有时间,来挑选新的区块生产者的共识协议。
区块生产方式
权益证明算法必须找到一种在区块链上生成有效区块方式。按虚拟货币拥有量选择区块生产者不行,最大财富拥有者会掌握永久优势。为此设计了几种不同的生产方式。
随机选择区块生产者的方法
未来币(Nxt)和黑币(Blackcoin)用随机方式选择下一个区块生产者。通过一种公式来查找按一定方式组合权益的最小哈希值的拥有者即一个区块生产者。权益值是公开的,每个节点都能合理地准确预期:谁会赢得新区块生产的权利。
以币龄为基础的方法
点点币(peercoin)是一种把“币龄”(一种新概念)和随机值相结合的系统。“币龄”值等于币数量和虚拟货币持有时间的乘积。
持有时间至少30天的币的币龄才能作为权益参与竞争下一个区块生产者。币龄大,币量多节点成为新区块生产者的几率更大。一旦节点生产了新区块,节点持有的币的币龄清零,要等30天才能参与竞争下一个区块生产者。为防止币龄大,币量多的节点主导区块的生产,币龄在90天达到最大值便不再增长。这种规则保证了网络安全,而且区块逐步产生,不用消耗大量的计算机算力。由于没有算力集中的矿池,持有超过半数的币的成本更加昂贵,开发人员认为51%hash算力的恶意攻击将更加困难。
核心节点
另一种权益证明算法的实现的方式是运行核心节点。核心节点适用于任何加密货币的分布式应用服务。核心节点的不利点在于相对高的入口,而不是一般的权益节点,为了保障网络安全,运行核心节点者需要购买一定数量的币作为当时市场价格的抵押品。
有的加密货币核心节点需要一定成本,有的加密货币使用多层网络系统,不同层次的核心节点收入不同。
优点
使用权益证明算法的加密货币比使用工作量证明算法的加密货币工作效率高数千倍。
同时节约能源,根据一家比特币矿场经营者的数据,2014年每比特币的能源消耗达到240kWh(相当于燃烧16加仑汽油,就碳产量而言)。
缺点
有观点认为,权益证明算法不是分布式共识协议的理想选择,核心节点如果创造多个分叉链几乎没有损失,这妨碍共识的形成。核心节点同时创造多条链的成本很低,可能出现“双花”问题。
为避免出现上述情况,不同的币采用不同的方法。
以太坊建议采用Slasher协议,用户可以惩罚企图双花的作弊者。但未被采用,结论是“非微不足道的”。相反,以太坊设计了一个名为Ethash的工作证明算法。它计划被一个叫做“CASPER”的不同的PoS协议所取代,
Peercoin使用中央广播检查点(由开发者的私钥下签名)。不允许区块链高度高于已知最后检查点的高度。
Nxt的协议只允许重新生成最后的720块。然而客户可能会跟随721个区块的分叉。
混合“销毁证明算法”和权益证明算法两种模式。用采用“销毁证明算法”销毁块的节点作为检查点,具有较高的奖励,不包含交易,更安全,并且彼此锚定并连接到PoS链,但是成本更昂贵。
Decred的混合工作量证明算法和权益证明算法两种模式。权益证明算法延长区块链以工作量证明算法时间戳为先决条件。
活跃性证明算法,其目的是通过工作量证明算法,由矿工解决无关权益的问题的挖块和权益证明算法作为第二种签名认证机制。