Ethereum 2.0 Meeting 44 | 以太坊 2.0 会议第44期
会议:以太坊2.0会议#44
会议日期: 2020年7月23日
会议时长:1小时
会议视频链接:
会议日程:
1.测试和版本更新
2.测试网更新
3.客户端更新
4.研究更新
5.网络侧更新
6.规范讨论
7.开放讨论/总结
会议主要内容:
1.会议开始,主持人Danny先开始第一个议题,即测试和版本更新。
Danny说他正准备推出v0.12.2版本。这个版本向后兼容,没有太大的改动,和前一次相比主要是一些P2P规范中Gossip条件的修正和澄清。在v0.12.1版本中有4个证词和罚没相关的测试没有发布,Nimbus团队好像在这方面碰到问题了。不过现在版本中这些测试会发布的。Lakshman和Proto一起,在努力把Rumor加到区块链的测试中去。Danny请他们来更新一下。
Proto说关于链测试,他们做了测试网的工具,还有自动化部署测试网的配置。接下去会继续专注于链测试。Lakshman说他可以更新的不多,但是他最近发现一个漏洞,当用户提议的某个区块集合(blockset,在计算机或者数学领域,set一般是翻译成集合)不是已知最后区块的后代情况下,会在gossip中发现类似DoS的矢量。他在挖掘gossip验证时其它可能的漏洞,希望能够一起防止此类DoS的矢量攻击。
2.第二个议题,测试网更新。
Danny介绍说现在有三个迷你攻击测试网已经上线,他们都是单一客户端,每个测试网有4个节点和128个验证者。之前在Github的仓库上公布过一些破解规则,悬赏奖金等事宜。Danny说Jonny已经身体力行的在做了,希望与会者或者正在听会议的人有兴趣能够一起参与进来。Danny的计划是整合现在的迷你攻击测试网,把它变成一个大的,然后放置一些赏金,希望红客们能够来破解。
Danny询问有没有关于当前的攻击测试网的问题?Proto表示,值得强调的是,当下就是最好的机会去破解攻击测试网,因为现在它是单一客户端的。之后升级成多客户端就会困难很多了。Danny表示认可,并说现在对一个只有4个节点的网络发起DoS攻击是不难的,呼吁大家赶快上!
接下来Afri开始介绍Altona测试网和Medella测试网。Afri说,度假回来后他发现Altona测试网的状态非常好,运行情况良好,没有发生重大问题。有一些关于罚没(slashing)的问题正在解决。上周发布了一个小型的客户端基准测试报告,Genesis的客户端,包括Lighthouse,Prysm,Teku和Nimbus在高效能运行情况下的表现都进行了对比。Altona非常稳定,所以他们想基于此做一个类似但能公开的测试网。这个测试网从上周就开始准备了,名字叫做Medella。
Afri继续介绍,Medella测试网是基于v0.12.2的规范,不准备包含任何重大的改变,所以很快就能推出客户端版本。测试网的规格书在Github Goerli上,包含了主网的规格书。准备完成后会做公开发布。Afri询问Danny,以何种方式通知大家最有效。Danny说他已经发了一个博客给相关人士,并且也链接到4个有Genesis验证者的客户端。Danny还说有一个和验证节点快捷启动平台(Validator Launchpad)有关联的版本即将发布。这个是给那些不太熟悉测试网的人学习和尝试的地方。
Dankrad建议能否在测试网里做到100%的追踪罚没进程?他认为我们需要知道在每个罚没里具体发生了什么,因为发布后再有人碰到类似问题将会是致命的,需要提前准备隐患消除。Danny表示很赞同,并问还有没有好的建议。Proto建议还需要多一个Eth2.0客户端的仓库。
Ivan建议最好能够记录每个罚没进程,确保每次罚没都能被检测到。Dankrad说如果有个仓库的话,是不是在里面放一个表格记录谁在负责哪个验证节点,这样万一有问题可以马上定位到工程师去关注问题。
Danny说他会创建一个多客户端的仓库,让大家知道何时会出现罚没。但是他觉得这个没必要给主网准备,因为Danny认为99%的错误都是UX错误或者基本错误。Dankrad问客户端能否检测到一个与某个名字相关的证词,但是本地实际没有签名的状况?Mamy回答说,如果要做罚没保护,那么应该有一个本地的数据库记录签名内容,这样才能够发现使用你的公共秘钥签名但却不在本地的内容。这种情况如果发生,就说明要么你动了你的电脑,要么有其他人在用。后续Danny,Dankrad和Ivan继续讨论了罚没记录的问题,最后他们决定尝试利用信标节点知道最后验证节点证词的特点来做验证者的身份检查。Dankrad会具体去看这个问题。
https://github.com/goerli/medalla
https://ethresear.ch/t/ethereum-2-0-client-metrics-07-2020/7699
3.客户端的更新
Lodestar:Cayman介绍说,他们完成了gossip sub1.1版本,后面还需要做一些测试以及关于Go的实施测试。他们计划接下来几周就发布这个带有JS lib p2p的版本,并且会加入他们的API和Eth1Stats的支持。与此同时,他们在做Medalla测试网的准备工作,他们想参与验证部分但又不想破坏测试网。所以他们决定等准备工作快完成时候再来判断如何参与。
Prysm:Raul说他们主要在重新规划账户和密钥管理,确保它们能否符合EIP关于钱包的标准。他们已经完成了远程签名钱包,这是Prysm里面使用最多的功能之一。现在用户可以连接到一个远程的签名服务器上。同时他们也在优化密钥管理的用户体验,让很多操作变得简便,同时又能符合标准的要求。Rual继续说他们也做了网络优化工作,确保用户不会碰到状态奇怪的节点。Danny询问验证节点快捷启动平台的集成做的如何,他现在能否从快捷启动平台移动密钥到Prysm去?Rual回答说这个是可以做到的,他们已经验证过了,只要格式符合密钥存储的标准就可以。他还问是否今天就可以试试?Danny说Carl会给他一个链接,链接到Medalla测试网上。
Teku:Anton说他们主要在做内存管理的工作。JVM现在比较稳定了。发现一些内存泄漏的情况,怀疑是Rocks DB的库造成的,正在尝试其它办法减少泄漏。Anton表示也做了很多节点管理的优化,同时马上完成Rust库的整合工作。他们认为他们可以将区块的导入速度提高三倍。Teku的安全评估RFP已经开始,8月3号是最后完成日期。
Trinity:Grant介绍说现在他们的主要任务是同步信标节点到Altona的初始节点。上周他们已经成功连接到了Altona测试网。Alex完成了分叉选择的重构工作。现在他们正在做提速的工作。Alex这周增加了一些记录并发现当前同步速度是0.2个时隙(slot)每秒,做了一些优化后,现在速度提升到了13个时隙每秒。现在还有一些类似Epoch256的问题待解决,但是没有重大问题。Danny询问Epoch256是不是因为共识错误造成的,Grant回复说是因为下一个区块的状态不匹配造成的。
Nethermind:这次Nethermind没有派人来。
Lighthouse:Age介绍说首先介绍一个新成员,叫做Benedict。这周Lighthouse主要在做系统稳定的工作,也和Prysm一样做了密钥管理的优化工作。在Altona测试网上合入ATT,确保每个区块中都包含了证明。Johnny发现DiscV5里面的一个错误,现在已经解决了。最后他说他们也在准备Medalla测试网。
Nimbus:Mamy介绍说他们已经开始审计工作,一共有三个外部的审计公司ConsenSys Diligence, Trail of Bits和NCC,审计时间2周,然后会有2-3周的解决问题时间。他们主要专注于信标内核,减少内存的使用,可以更快速的缓存。目前也在做提高同步速度的工作。Nimbus团队还在做Altona测试网的准备工作,主要的问题是ATT没有很好的普及。Gossip上也有个问题,正在解决。Mamy继续介绍说,他们做了很多优化工作,比如在DiscV5和状态连接上。正在做信标节点和验证节点的分离,在最后确认解决办法。最后Mamy谈到他们发布了一个关于运行他们自己验证节点的帖子。
4.Danny开始下一个议题,研究更新。
TXRX的Jeseph介绍说他们也在研究攻击测试网。但是他想重申一下Danny刚才说的话:如果TXRX是唯一一个致力于此的人,那么他认为长期来说网络的安全水准得不到保证。现在来看,攻击测试网其实是有点像Lib-P2P中最弱的部分,因为它不能产生证明,而且我们没有对其进行验证。所以希望每个人都能投入一点资源来攻击攻击测试网,因为如果我们不这样做,就不能提升测试水平,更不会有长期安全。Joseph还表示他们也在做Eth1和Eth2的连接工作,这很让人兴奋。Danny表示赞同,并说如果谁还有黑客朋友绝对应该请他过来尝试破坏攻击测试网。
https://github.com/txrx-research/teku/branches
Leo介绍说他们主要在研究Snappy的压缩率。从上次会议之后他们就开始关于Eth1以及Eth2区块的测试。他们从Altona测试网一共下载了19个区块,每个区块都运行测试并且取得相同的内容。总体来说,他们得到的压缩率是1.6左右,压缩速度是大概每秒911兆字节。这个是基于intel4核i5处理器的硬件平台。相比较之前的Eth1的测试,压缩率下降了,Eth1的压缩率是1.8,但是相对的压缩速度提高了,Eth1是500兆字节每秒。同时他们也做了原始代码的基准比较,结果是789兆字节每秒的压缩速度。在Eth2的压缩速度中,有些区块的压缩速度会特别慢,最慢的到476兆字节每秒,最快的是1255字节每秒。这个跟随区块的不同而变化。
Danny询问知道基准测试的压缩率么?Leo说现在他还没有,不过刚才说的那些数据,他准备做一个表格放在Discord上面。同时他说他们也开始在Altona测试网上运行验证节点,现在正在Pi4上面跑Lighthouse的客户端,之后会测试所有的客户端。
https://docs.google.com/spreadsheets/d/1SoXvmPfm1BRVcdDm7CuwaWDjxp5a3NzGMBLViQjBNqA/edit?usp=sharing
5.Danny开始下一个议题,网络侧更新。
Danny说v0.12.2规范没有大的改动,增加了一些gossip sub的更新。Proto说我们正在研究一些客户端中不同的特定功能,例如签名验证,以及其他相关字段(来源、序列号、公钥等)。客户端目前处理所有这些事情的方式各不相同,但规范中并未使用它们。如果有人在做gossip sub的工作,希望有人能够去查看这个PR。
https://github.com/libp2p/go-libp2p-pubsub/pull/359
6.下一个议题是规范讨论。这次没有讨论的内容
7.下一个是开放讨论。Vitalik希望讨论一下什么时候,怎么开始第一阶段的实施活动?Danny介绍了一下现状,他说客户端进度不同,有些已经开始做,有些还在看,有些在做原型设计。现在在JAVA上有一个原型设计,类似一个模拟器。Terence也做了很多Phase1规范的实施工作。现阶段大部分的开发工作都集中在Phase0上,他认为过几个月需要慢慢转移到Phase1上面。
Vitalik建议让一个客户端先切换过去,尤其是已经准备好主网部署的客户端。Terence说是不是可以有注释过的Phase1的规范?这样可以让新的开发者更快上手。他知道在Discord上有人表示希望在Prysm上开发Phase1的工作,但是如果没有注释过的规范很难让他们立刻开展有效工作。
Danny表示赞同并说他会弄一个注释版本。接下去他会越来越多地工作在规范的写作上面。Hsiao表示她正在做Phase1的规范,她个人认为规范可以简化一点。她会发一个帖子出来并希望有更多的人能够加入。Danny说下次会议应该单独做一个Phase1的议题。同时讨论后决定一旦Phase1的测试做完,就会在规范的仓库里面创建一个分支给Phase1。
https://github.com/terencechain/prysm-phase1
会议结束。
与会开发者:
• Ansgar D.
• Aditya Asgaonkar
• Afri Schoe
• Anton N.
• Age Manning
• Alex Stokes
• Ben Edgington
• Carl Beekhuizen
• Cayman
• Danny Ryan
• Dankrad
• Grant Wuerker
• Hsiao-Wei Wang
• Ivan M (Prysm)
• Jacek Sieka
• Jonathan Rhea
• Joseph Delong
• Leo BSC
• Lakshman Sankar
• Mamy
• Marin P.
• Matt Garnett
• Nishant
• Pooja Ranjan
• Protolambda
• Raul Jordan
• Shay
• Sacha Saint-Leger
• Terence (prysmatic)
• Vitalik B.
• Zahary K.
欢迎转发,本内容遵循CC BY-SA 2.5协议:
https://creativecommons.org/licenses/by-sa/2.5/
你的支持,是对我们的认可。来打赏我们一杯咖啡吧!**打赏地址:**
以太坊:
0x7Ba18D8d4B0E4EB06a720aF2BeC29603078c806b
Gitcoin:
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!