COMP:Cosmos往事:激励测试网、节点攻防及“卡特尔”之辩

Cosmos新的激励测试网GoZ即将到来,而一年前参与CosmosGoS大赛的往事还历历在目。GoS激励测试网堪称首开先河,无论是其对抗竞赛的形式,还是社区的参与度,都为后来的众多主网上线提供了许多借鉴与启发,几乎成为主网发布前的“规定动作”。不仅如此,GoS节点之间不同形式的“对抗竞赛”也充满故事。stakefish想要分享此前在GoS第5阶段开始前,也就是那次激励测试网即将接近尾声的时候,回应后来与stakefish同为胜出团队的CertusOne发布的一篇文章,供大家了解一段Cosmos往事,感受验证节点的建设热情,也在曾经的那些关于对抗的经历中获取治理的反思与启发。时间过的真快,当时的stakefish以bitfish的名义运行包含测试节点在内的两个节点,而如今已经成长为运行20多个节点的staking服务运营商。让我们通过回顾这篇一年前发布的“bitfish对GoS第五阶段的官方回应”,闪回到主网上线前的Cosmos世界。

大家好,我们是bitfish,alliance.fish的组织者,也是GoS大赛的节点运营者。我们志在加速区块链技术的主流应用步伐。Cosmos正在探索解决这个过程中的扩展性、互操作性等主要问题以实现主流应用目标,我们也因此一直在积极的为网络做着贡献。我们现在想要给社区、验证节点伙伴、Interchain基金会,以及Cosmos团队一个适当的回应,澄清CertusOne和Joe关于我们参与GoS的一篇深入的文章中提到的问题。CertusOne和Joe的博客文章

文章的质量很高!我们非常高兴看到CertusOne和Joe撰写了关于我们节点运行的高质量的文章。尽管这暴露了我们位置,但是对于整个Cosmos网络的健康发展是有益的,也让我们看到了未来网络发展的前景,我们可以期望在主网上线之后也能有对于节点类似级别的细查,确保目标的成功实现。

CertusOne和Joe的博客文章关于发现“卡特尔”的分析注:卡特尔原指的一种以联盟形式的垄断,在pBFT网络中指的是控制1/3以上或2/3以上节点的情况。作为Cosmos生态的参与者,我们希望也能通过这篇回应,为网络发展贡献一些见解。了解更多的信息是关键点,我们将在回应中尽可能提供更多细节,以期为所有节点实现一个更加公平良好的竞争环境。为GoS整装待发

bitfish在区块链生态的根基发源于矿池,并计划通过stakingpool和staking服务,为PoS领域作出在PoW领域类似的贡献。沿着这个思路,我们想要实验一下如何运行多个节点。我们十分关注GoS发布的规则和参与方式,运行多个节点是GoS规则所允许的。于是我们开始向家人和好友寻求帮助,鼓励他们来进行注册。我们希望能够尽量的模拟出符合要求的staking服务,因此也不会用虚假的身份证件来干扰正常的KYC流程。当我们的节点快要超过整个数量的33%时我们就停止了注册。而且由于我们想要参与Cosmos各个方面的压力测试,也并没有想要直接控制33%的网络权力。GoS最初有253份申请通过了批准,我们占其中的28%。我们的基础设施团队在节假日不间断的工作,确保能够让70多个验证节点以及更多的哨兵节点、中继节点和监控服务器正常运行。开启alliance.fish

受到steak.zone的创意启发,我们当时也想邀请更多的验证节点加入,相信分享与合作可以让我们的知识和经验倍增,于是alliance.fish诞生了。设计团队在一天内拿出了一个超棒的作品,甚至还在alliance.fish页面里加入了一个复活节彩蛋。

我们在首尔举办的见面会上宣传alliance.fish我们邀请到一个著名的验证节点加入这个联盟中,得知他们还引领着另一组验证节点,这相当激动人心。但是不久之后,我们惊讶的发现那个验证节点正在把关于我们的信息泄露给另一个联盟,而那个联盟的成员是Cosmos验证节点和GoS聊天室中排名居前且频繁发声的验证节点。这着实让我们感到热血沸腾,对抗已经开始,我们需要准备好各种防御工事,甚至要做防御链下社会工程攻击的准备。从GoS开始到第3阶段

GoS开始前我们已经做足了准备工作,以28%的占比加入网络,并为守护好我们的网络份额制定了目标。我们的开发团队持续提升GoS的节点性能,加速了我们积累网络奖励的速度,还避免了节点遭受被惩罚情况的发生,这也增加了我们的网络权力占比。令我们惊讶的是,我们远远超过了最初的目标,在GoS第3阶段上获得了超过55%的网络权力。这增强了我们对攻击防御能力和管理节点能力的信心,随之进一步测试自己的能力并尝试一些小型攻击。我们使用运营的其中一个节点对其他节点进行了一次成功的、持续的“审查攻击”,并在一段时间里没有被发现。我们没有大规模部署这样的攻击,因为我们并不想破坏整个网络。当我们探索进一步试验和压力测试的时候,CertusOne也发布了他们的博客文章,辨别出并建议通过分叉以移除我们的节点。Joe的博客中也用另一种方法验证了CertusOne的发现。随后多个节点开始在Github和GoS的Roit频道上支持这个分叉提议。唉,我们在网络上的试验和压力测试看似要到此为止了。我们的收获

在过去的一个月我们学到了很多,参加GoS是一次成功的经历。当其他验证节点开始通过Riot频道向我们寻求设备配置和节点设置方面的帮助时,我们就更加确信走对了这条路。我们给了他们相当多的帮助,相信这能够促进Cosmos生态整体健康发展。既然我们已经公开了身份,就会适时的主动介绍自己。通过一些硬核数据也让我们觉得所做的努力是值得的。从CertusOne关于的总代币数的图表中来看,在排名前20的节点中,我们运行的有11个。我们运行的所有70余个节点都排在前80名。

图中红色部分代表我们运行的节点基于Hubble关于pre-commits的数据,总数前10名中我们的节点有9个。只有CertusOne超过了我们节点的数据。类似的,我们的全部70余个节点几乎都排在总pre-commit数量的前80名。

pre-commit数量上CertusOne的后面有我们70多个节点:)注:pre-commit是指验证节点对区块提交签署的投票,数量越多代表节点的表现越稳定。我们的见解

相信上文已经给大家描绘了我们参与GoS的一个清晰轮廓。现在,我们想要在此分享一些观点和见解。1、CertusOne将我们节点排除在外的理由并不合理GoS5唯一有一些价值的主张是声称我们违反了注册规则,但是我们强烈反对这项指控。我们让朋友和家人帮忙进行注册流程,是向真实的人寻求的帮助。我们想要在GoS的进展中促进stakingpool和节点服务的发展,这在Interchain基金会的规则中并未禁止。规则中唯一一个需要我们密切关注的部分如下:

从如下链接的截图:https://github.com/cosmos/game-of-stakes/blob/master/RULES.md#disqualificationCertusOne博客文章中对于以上这整段注册规则只字未提。我们在这里特地提示这句话“如果你仅仅是简单的为朋友注册账号,然后委托或者转移所有代币到一个或者一小部分节点上,那么所有相关参与者将会被取消资格。”而我们运行的所有节点从未相互转移过任何代币。我们也曾注意到,CertusOne在更早些时候正准备一篇博客文章以暴露我们中的所有节点。他们承认没有在那时发布是因为他们在等着我们对网络发起攻击。现在事情已经很清楚了,他们一直在等一个“合适的理由”来提议分叉。

我们早前已经注意到了CertusOne正在准备相关的文章草稿。给我们的印象很深刻,但是我们觉得应该有一个相比“亚洲卡特尔”更好的名字。我们以少于30%的网络权力开始了GoS之旅,并通过不断优化节点让网络权力几乎翻倍。我们应该为了卡在33%这条线之下而停止优化吗?我们运行的节点也都避免了任何“禁闭”惩罚,甚至通过接收其他验证节点发来的链上交易的方式帮助他们解除惩罚。以任何客观的标准来讲,我们参与GoS的整个过程都表现的很好,且对网络很有帮助。但是现在我们被妖魔化,仅仅因为我们有能力实现网络权力从28%到55%的有机增长。2、缺少恰当流程的治理方式被滥用毫无疑问,GoS网络上还存在另一个卡特尔。从一篇文章到GoS第5阶段分叉的配合程度很清楚的表明,尽管没有合适的理由,有一群“善于发声”的节点已经在幕后串谋,以在“恰当时机”进行分叉。正因为没有恰当的治理流程来以进行检查,这群节点才得以彻底破坏从指控到执行的过程。CertusOne把指控和决议同时融进了一篇博客文章,并没有给社区成员思考和判断下一步方案的独立时间,而是急于推进一个决定。没有人在这个过程与我们进行过沟通。被CertusOne领导的这个群体基本上同时扮演了法官、陪审团和行刑者的角色。我们基本上还没有机会走上法庭,就被直接送上了断头台。相比采用这种“链下”分叉的方式,本来是有其他可能的解决方案的。比如说,我们完全可以用链上的方式,通过投票来解决这个问题。我们想告诉社区的是,要对那些吵着要进行硬分叉的人保持警惕。他们开了一个不好的先例。友好的方式应该永远是第一选择。3、我们运行这些节点的分布方式是现实网络中的一种可能网络权力集中分布在少部分“鲸鱼”中在PoS网络中是有可能的。这些鲸鱼可以指定一个实体来帮他们运行节点。这与我们在GoS运行的情况可能非常接近。我们有可能在帮助预演一种可能的情况。认为我们在GoS的参与情况在真实世界中不可能存在是有些“天真”的。4、我们并未破坏Cosmos网络要说明的一点是,我们没有做任何对Cosmos网络有害的事情。我们在GoS上投入了许多资源,并且持续的改善设置,这仅仅意味着我们的设置将是主网上最有实力的一个。CertusOne在他们的博客文章中说,社区成员故意嘲讽我们,好让我们去攻击他们。可是我们从来没有考虑发起任何大规模的攻击,因为我们的注意力都集中在提高自身运营能力上,而非作恶。我们没有想过用任何途径破坏或延迟网络。我们只是专注在Cosmos主网,并努力为其做着准备。写在最后

GoS是一次美妙的经历,让我们有足够的信心在Cosmos主网上运行一个安全的验证节点。我们想要感谢Zaki为维护GoS大赛付出的时间和精力。感谢Cosmos团队为网络稳定和提升作出的不懈努力。我们对于在几周后运行主网节点信心十足。我们也不会参加GoS的第5阶段。我们很愿意继续进行网络实验,我们对于在GoS获得的成绩感到满意。节点朋友们,希望你们一些顺利。我们将继续为你们在Cosmos网络上的压力测试加油鼓劲,我们将会在主网继续相见。很高兴能分享我们的知识并对节点进行优化。也欢迎没有参加GoS的社区成员与我们联系,我们愿意与对未来怀有理想的验证节点分享在节点设置上的专业知识。感谢我们的开发团队以及所有为我们取得GoS领先成绩的团队成员们。请继续探索生态的脚步!再见,感恩与我们在一起的快乐时光!读起一年前的这段文章,是否依然能让你感受到那时候在激励测试网上的一些“火药味儿”呢?还好,那次只是短暂的离开,stakefish赢得了认可并在GoS大赛胜出。stakefish在Cosmos主网上线后如约与大家见面,并长时间保持节点排名第一的位置。而Cosmos网络在社区的努力之下,已经成功的进行了多次有效的社区治理,生态发展取得了许多进展。就在数周后,Cosmos也将开始GoZ,为新的重要里程碑IBC进行整个网络的第二次激励测试网。我们希望更多社区成员加入网络建设的行列,不懈的建设与改进。

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

链链资讯

SHIBAPY:HAPY:怎么让区块链+慈善有用又好玩?

2个月来,“新冠”肺炎疫情席卷全球。为支持疫区、早日战胜疫情,医护工作者纷纷奔赴前线,普通民众则通过物资捐赠来为抗疫添柴加薪。但在紧张的抗疫之外,我们也看到了不和谐的一面.

[0:31ms0-6:690ms