DPoS
Dpos是一种基于投票选举共识算法,无需挖矿。
基本原理
投票过程
受托人来自于普通用户节点,需要首先进行注册,然后通过宣传推广,寻求社区信任并投票,获得足够排行到前101名的时候,才可以被系统接纳为真正可以处理区块的节点,并获得铸币奖励。
普通用户节点投票所占的比重取决于每个节点持有的货币数量,这也意味着持币多的人将比持币少的人有更大的影响力,这可能会造成一定的中心化,但比特币是通过计算机算力争夺记账权,算力大的人容易获胜。DPOS机制是通过资产占比来投票,更多的加入了社区人的力量,人们为了自身利益的最大化会投票选择相对可靠的节点,相比又更加安全和去中心化。
选举过程
在比特币中,会投票选出101个委托人,这些可信节点将拥有记账的权力,由他们创建区块。这101个节点拥有的权力相等,每成功生成一个区块后出块者和投票者将获得奖励。
记账过程
首先算法将随机指定生产者的出块顺序,每一个生产者将根据顺序创建区块,只负责一个块,每一个区块产生后将传递给下一个节点,第二个节点要确认上一个区块的内容,同时负责打包新的区块。当某一个区块被确认三分之二后,该区块就成为了上联区块,不可逆转。
委托人的工作
几个周期
块周期:一个块10秒
委托人周期:生成101个块 16分钟
奖励周期:根据区块链高度,设置里程碑时间(Milestone),在某个时间点调整区块奖励。时间间隔在一年左右。
委托人的工作
提供一台服务器节点,保证节点的正常运行;
节点服务器收集网络里的交易;
节点验证交易,把交易打包到区块;
节点广播区块,其他节点验证后把区块添加到自己的数据库;
优点
1.共识达成的周期短
每个块的时间为10秒,一笔交易(在得到6-10个确认后)大概1分钟,一个完整的101个块的周期大概仅仅需要16分钟。
2.能耗低
相比于Pow机制,Dpos不用浪费算力资源去争夺记账权。
3.免受不必要的逻辑检查。
因为这一块对于大部分共识协议来说,是最大的瓶颈。
缺点
1.投票的积极性低
绝大多数持股人(90%+)从未参与投票
2.漏块现象
投票选举出的委托人位于世界各地,一个委托人先出块,在确认后返回假设需要4秒,而下一个节点出块确认返回的时间只需要3秒,则后一个区块先上链,这就导致上一个区块漏块。
3.对于坏节点的处理存在诸多困难。
社区选举不能及时有效的阻止一些破坏节点的出现,给网络造成安全隐患。
4.不是“去中心化”,而是“弱中心化”
应用
比特股
比特股是一种支持包括虚拟货币、法币以及贵金属等有价值实物的开源分布式交易系统,借由采用股份授权证明机制算法(DPOS)所创立的分布式交易总账。
比特股X发行股份,并可以在用户之间相互流通,就像买卖比特币一样。
EOS
EOS用超级节点竞选的方式来刺激形成一个活跃的去中心网络,并且,超级节点竞选是与其共识机制 DPOS(委托权益证明)高度匹配的。
获得投票的 21 个活跃生产者和 179 个候补生产者一起生产 EOS 这条区块链的区块,即运行这个区块链网络。这些区块生产者是动态的,时刻根据投票动态调整。