DPoS是PoS的改良版,两者最大的不同在于。PoS是根据节点的持币数量与持币时兼争取记帐权,而DPoS则是以网络中利益相关人的选票选择记帐节点,相当于菁英政治中的代议机制。DPoS最初由Bitshares、Steemit以及EOS的创办人Dan Larimer提出,他在区块链项目Bitshares中实现了DPoS共识机制。在DPoS网络中,有两个重要的角色「见证人」与「利益相关者」。

利益相关者

利益相关者也就是网络中的持币者,能够透过交易所或钱包,在抵押代币后选择要支持谁来担任验证人,利益相关者持有的代币越多,投票的权重就越高,而有些验证人会提供分红,将挖矿奖励分享给支持他的利益相关者。

DPoS的一个重要特点是,任何系统参数都可以通过利益相关者的投票进行更改。这些参数包括区块间隔和大小、交易费用、见证人奖励、甚至见证人数量(具体支援参数会依据不同项目而有所不同),这为网络提供了更大的灵活性与分散式治理。

见证人

DPoS中另一个重要的角色为见证人(或称为超级节点),其工作是为区块链添加新的区块,也就是记帐。理论上,只要具备一定程度的设备与计算能力,任何人都有机会担任见证人。但实务上见证人大多都是社群中活耀的实名组织,具有可靠的社群贡献纪录。想成为见证人的节点可以通过对网络做出积极的贡献来提高声誉,例如市场营销、贡献代码、筹集资金、社群建立等。

理性的见证人会保持中立,维护帐本的安全,因为见证人始终处于利益相关者的控制之下,当验证人因不良行为(未记帐或签署无效区块等)导致网络运行出现问题时,利益相关者的损失最大,因此,利益相关者会随时将其选票重新分配给其他见证人。理论上,网络规模越大,见证人彼此的竞争就越激烈,因此,成为社区中具备良好声誉的成员以避免被替换,才符合见证人的最大利益。见证人的数量是固定的,具体取决于项目方的设计,Ark 的见证人有51 个、 Lisk 有101 个、EOS 则有21 个。

DPoS 运作机制

DPoS 透过声誉和实时投票机制选出一批见证人,见证人会负责轮流产出并验证新的区块,

假设网络中有A、B、C 三个见证人,则A 产出第一个区块、B 产出第二个区块、C 产出第三个区块,保证所有见证人都能够产出区块。在每t 个时间间隔(例如,每10 分钟),见证人的顺序会重新排列,然后再次轮流产出区块。

简单来说,第一轮出块顺序是A→B→C,三个见证人都产出过区块后,便开启下一轮出块,并将顺序随机改变例如B→C→A。

DPoS不需要像PoW一样,浪费算力争取记帐权,且PoW必须控制出块时间以降低同时产出两个甚至多个区块的机率,比特币就是为了降低孤块率才会固定十分钟出块一次。而DPoS因为只有少数见证人负责出块与验证区块,且出块的顺序是经过协议决定好的,因此不会发生两个见证人同时产出区块的问题,可以大幅降低出块时间,例如EOS的出块时间为3秒,EOS 2.0将进一步降低到0.5秒,因此在效率上遥遥领先PoW。

去中心化的争议

DPoS 是否有违背权力下放的精神是许多人关注的问题,DPoS 的支持者认为,PoW 虽然所有节点都有权利能够争取记帐权,但实际上计帐权大多被大型矿场或矿池垄断,从下图中可以看到,2018 十月~2019 十月,前七大矿场或矿池就占了比特币全网算力的80%,即使你持有比特币,你也无权决定未来比特币的开发方向以及由哪些人生产区块,所以你不得不授权给那些拥有算力的人,让他们代理产块。

资料来源

然而,DPoS 只有少数见证人负责产出区块与验证区块,帐本安全性会因此降低是不争的事实,此外,菁英政治的代议机制,往往会延伸出党派斗争,使用DPoS 共识机制的EOS 便时常传出为了争取见证人地位,拉拢利益相关者相互斗争的问题。

优点

与PoW 和PoS 相比拥有更高的效率。 解决了PoW 的能源问题、PoS 的权益粉碎攻击以及降低硬分叉的可能性。

缺点

为了提高效率,DPoS 以代理人共识取代全网共识,因此时常被抨击与区块链去中心化的理念相违背。