比较一下HIVE见证人以及EOS BP的异同

EOS是继BTS以及HIVE之后,BM的另一力作(有意思的是后来BM都不在这些项目了),同样作为基于委托权益证明 (DPOS)的区块链,EOS的BP和HIVE的见证人有着极大的相似之处,又有着很大的不同。

image.png
(图源 :pixabay)

本文将对HIVE的见证人以及EOS的BP各种机制进行简单的介绍和对比。

见证人的产生

尽管在EOS区块链上,大家习惯性地将相应的角色称之为BP(Block Producer),但是实则他们的机制、作用、角色都差不多,所以为了写文方便,我都称之为见证人啦。

EOS和HIVE一样,见证人都是通过投票选举产生,每个投票者可以最多投30位见证人,而用户的投票权重都取决于锁仓(Staked/Power UP)的代币。

HIVE: HP
EOS: CPU Staked/NET Staked

HIVE和EOS系统中,都可以给别人锁仓,不同之处在于HIVE中Power UP给别人,代币的所有权益以及所属权都直接归属对方了。而EOS中Stake给他人,代币的所有权并不转移(后期可以收回)。

HIVE和EOS系统中,都可以把锁仓代币的治理权(见证人票以及治理票的投票权)代理给他人。这一点上,我感觉区别并不大。

所以锁仓代币产生的投票权以及别人代理的投票权,共同决定了一个账户的投票权重。见证人得票的权重之和决定了见证人的排名。

见证人的出块

HIVE和EOS一样,每轮都有21个见证人出块,但是二者在出块上却有很大的差异。

HIVE将见证人区分为TOP20见证人+轮值见证人,每轮出块由所有的TOP20见证人+一个轮值见证人负责,轮值见证人根据得票情况根据算法随机产生(也是说得票越高被选中的机会越多)。

HIVE每轮选出的见证人会随机打乱出块顺序后轮流出块,HIVE的出块间隔是每三秒一块

EOS见证人则由TOP21(亦即得票排名最高的前21个见证人)负责出块,并按得票排名顺序出块,也就是说在见证人排名没有突然巨大变化的情况下,EOS每轮的见证人以及出块顺序都是固定的。

EOS的出块规则是每6秒切换一个见证人,每个见证人被轮到时,连续出12个块(亦即0.5秒/块)

见证人的奖励

HIVE系统中,见证人的奖励只有出块奖励一种。为了平衡TOP20以及轮值见证人的收益,轮值见证人的单块奖励会更高一些。

撰写本文时,单块奖励如下:

TOP20见证人:0.258 HP
轮值见证人: 1.293 HP

也就是说轮值见证人的单块奖励是TOP20见证人的5倍。那么是不是意味着轮值见证人收入更高呢?答案是否定的,因为TOP20见证人每轮都会出块,而所有的轮值见证人抢每轮中的一个出块机会。

以下是排名16到25的10名见证人,倒数第二列为每日出块数(估算),倒数第一列为每日收益(HP计算):
image.png

由此可见,排名第一的轮值见证人的每日收入也不过是TOP20的三分之一不到。

EOS系统的奖励就比较有意思了,分别出块奖励和得票奖励。因为只有TOP21见证人负责出块,所以出块奖励只有他们可以拿到。

得票奖励则是按着算法根据得票排名权重分发,如果每日的得票奖励不足100EOS,则会自动清零。所以目前只有大概前63名见证人会受到得票奖励。而且TOP21见证人会同时获取得票奖励(eosio.vpay)亦即出块奖励(eosio.bpay)。

EOS上某前排见证人的得票奖励以及出块奖励:
image.png

所以你注意到了嘛?在见证人奖励这块,HIVE是按劳分配,而EOS的奖励机制导致排名21以后的节点可以滥竽充数、不劳而获哦。

票权的衰减

EOS在计算投票权重时有个有意思的地方,那就是投票权重的衰减,亦即随着时间的推移,投票权不断下降。这样就会激励投票用户更为频繁地更新投票,更积极的参与治理。

EOS上,投票的衰减的半衰期为一年, 所以说,如果你在一年内没有进行投票、重设代理等操作,那么你的投票权重会缩水到原来的一半。

以某账户为例,300W EOS的投票权重缩水至103W,变成原来的三分之一了,可谓严重缩水了
1681443700191.png

以下是5个得票衰减最厉害的见证人(BP)账户,以第一个为例,总计1.6亿的票,缩水多达2000多W,实际影响力只有1.4亿
1681443867656.png

和EOS系统上采取票权线性衰减的方式不同,HIVE上采取的治理票过期失效的机制:

一年以上没有参加治理投票的用户,他的见证人投票& 见证人代理 &提案投票都会重置。

相对而言,我觉得HIVE上的治理票失效机制比EOS上治理票权重衰减机制更友好一些,无需频繁更新投票,也避免了浪费HIVE的各种资源。

总结

关于HIVE与EOS见证人的异同,就简单介绍到这里了。

对于这两套系统的有些相同又有些不同的见证人机制,你觉得哪个更加合理一些呢?

本文均是基于自己对两个系统的理解,不能保证各种信息以及数据完全准确无误,感兴趣的朋友可以参考这两个系统对于的技术文档以及源代码,并以其为准。


顺便求一下见证人票,欢迎大家支持见证人(witness):@abit 以及 @oflyhigh。如果你不清楚该投哪个见证人或者支持哪个提案,可以考虑把我:设置成你的见证人代理哦!

相关链接

H2
H3
H4
3 columns
2 columns
1 column
Join the conversation now
Logo
Center