首页 > 头条
最热共识机制盘点:DPoS v.s Tendermint
发布时间:2018-03-15 关键字:区块链, 技术 收藏

DPOS可以有效地防范拜占庭作恶,有着稳健的拜占庭容错。

640.webp (7).jpg

距离EOS主网上线还有三个月,围绕着EOS上的股份授权证明机制(DPoS)的全球21个主节点之争成为最近大热话题。DPoS共识机制,简单点说,就是大家一起用手里的EOS Token来给所有节点竞选人投票,谁的票数多,谁就可以当选主节点。

DPoS是在POS的基础上,多了一个条件——“Delegated”——代表。能够获得记账权的人是社区投票选出来的,而且是轮流制。这类似于人大代表制度,我们投票表决,推选出能够代表社区整体的利益的人,而且如果这个代表表现不给力(如:没有按时记账),我们还可以换掉他。相对于POS机制,DPOS的中心化程度降低了。

EOS的白皮书中提到,EOS的每年会增发代币的5%给维持节点的人。这笔钱什么概念呢?EOS总量十亿,5%也就是五千万;EOS现价约合38RMB,主网上线后若按40RMB来算,分给21个节点,每个节点每年仍有接近1亿的收益。这也解释了为什么最近EOS的主节点之争成为大热的原因。

640.webp (8).jpg

当然,我们今天要讨论的重点并不是DPoS机制本身涉及的经济利益问题,而是来看看DPoS和另外一个也有代表机制的大热共识机制-Tendermint(见笔者前序文章)之间的差异。

验证流程的差异

首先,在实现拜占庭容错BFT上,Tendermint假设区块链上的部分网络同步就能实现容错,而EOS只在完全同步的网络里才发挥容错特性。

其次,Tendermint上的代表(验证者)只要大于4个且没有上限,而EOS上面的代表(主节点)是固定的21个。

在投票权方面,EOS使用其代币投票来实现去中心化,拥有越多代币的人具有更大的投票权。而在Tendermint上为了成为验证者并具有一定的投票权,参与者必须锁定预设数量的代币,可以是自筹资金购买代币,也可以是其他代币拥有者授权委托。

解决无利害关系问题(nothing at stake)的思路差异

Tendermint通过“冻结”名为“债券保证金”的安全抵押物来解决无利害关系问题。为解锁债券保证金,必须在一段时间里慢慢解锁(一般是两到三个月),这被称之为解锁债券阶段。

这允许所有轻节点用户—移动手机和那些没办法以恒定速率来与区块链同步的用户——能够有时间获得验证者名单的改变情况。没有解锁债券阶段,就容易被先前在验证者名单里但目前已经不在名单里的验证者所攻击。

在DPoS协议中不存在这样的经济惩罚。而是委托人在失责的情况下将失去声誉来作为“抵押物”;破坏者几乎没有经济激励的动机。DPoS假设失去委托授权加上参选的付出的沉没成本要大于执行双花攻击获益的行为。但是值得特别关注的是,缺乏明确在协议中规定的处罚让EOS网络变得脆弱,尤其是无利害关系仍然得不到很好的解决。

CAP定理下的DPoS vs Tendermint

CAP定理指的是在一个分布式系统中,Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可得兼。当DDOS攻击发生时,Tendermint会直接停止共识服务。EOS则是继续运行,并在运行的过程产生很多的分叉,这种不一致的状态可能被攻击者利用。从这个角度来看,Tendermint将选择了C(一致性)优先于A(可用性),DPoS则相反。

总得来说,无论是DPoS还是Tendermint,都还没有在大规模经济利益和人群体的现实环境中经受过考验,寡头问题或者是激励偏差问题都是两个机制未来不得不面对的挑战,具体效果如何让我们拭目以待!

 

文章原标题:最热共识机制盘点:DPoS v.s Tendermint 原作者:Baron Gong

本文来源: GONG先生说

责任编辑:phx

GONG先生说

粉丝群

文章数量

1

热门技术