http://www.www.tnmanning.com

Cosmos 如何应对马太效应?

今年6月,Cosmos 主网发生首起双签事件,直接导致某验证节点被永久封禁,并损失了6万美金等额代币。这一损失并非只由验证人承担,委托人的代币同样遭受损失——双方按照相同比例(5%)被网络处罚。

触发 Slash 处罚通常分为两种情况:一、触发双签,即同一个区块被某个验证人签名了两次。理论上讲,此类情况发生问题的原因是服务器被黑客攻破,从而导致签名私钥被人盗取,但目前看来,触发双签的最大原因是操作不当;二、在一个窗口期内没有足够的签名的块。例如,"signed_blocks_window": "10000",即一个窗口期是10000个块,"min_signed_per_window": "0.050000000000000000"至少需要5%的出块签名才不会被 jailed。出现该情况的原因通常是网络问题或节点宕机,处罚比例为0.1%。

Cosmos 如何应对马太效应?

为避免因节点触发 Slash 而遭受同比例惩罚,理论上讲,持币者通常会选择分散委托。Slash 机制在某种程度上缓解了马太效应,但事实上,人们还是更倾向于选择较大的验证人。最近,Cosmos 核心开发者之一 Sunny 提出了一个 Staking 经济模型新草案:使 Slash 罚没的比例与验证节点的权重成正比:

为解决这一问题,我们将启动“比例削减”程序。该程序规定,验证节点越大,削减的数量越多。首个简单尝试就是使验证人的 Slash 百分比与其投票权重成比例。 

简单概括为以下四点: 

· 根据验证人的投票权来确定:验证人的投票权越大,削减的比例越大。如验证人的投票权为10%,则 Slash 的处罚比例为10%。

· 如某个验证人把大节点拆分为两个小节点,例如将一个10%的验证人拆为两个5%的验证人,则采用第二种方式,即把出错的验证人的权重进行累加。若一个验证人的两个节点全部出错,此时 Slash 比例仍为10%(5%+5%)。

· 在上述情况下,惩罚虽未减少,但也没有增加。因此出现第三种方式:假设验证人A将10%的权重分成两个5%,slash_account = (sqrt(0.05)+sqrt(0.05)^2)=20%,此时处罚比例将达到20%,可有效阻止大节点将其分散。

· 采用不同系数针对不同种类的 Slash。

以上惩罚仅适用于同一验证人同时存在不同节点 Slash 的情况。如某验证人将一个节点拆为两个,但只有一个触发 Slash 惩罚,则惩罚数量仍是降低的。但这种拆分对网络安全仍具有促进作用。

目前,Cosmos 采用的仍是固定的 Slash 比例,Proportional Slashing 机制仍在讨论中。该草案无疑具有诸多正面意义,例如增加网络中权重的去中心化、激励委托者将自己的 token 委托给相对较小的安全节点等。但鉴于需要大量使用 sqrt 函数,也必然会增加大发3d系统的负担。

关键词: Cosmos  马太效应  

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。