一文速览Eth2.0的7大客户端进展

以太坊2.0升级预计将于今年晚些时候发布,起初将推出阶段0。阶段0包括上线信标链,信标链负责管理 PoS 协议。为了与信标链交互,需要通过实现了以太坊2.0规范客户端

本文中,作者将对目前正在积极开发中的7个以太坊2.0客户端进行了简要介绍,提供关于每个客户端的来源信息,包括供读者深入了解的相关链接。

 

为何需要这么多的客户端?

 

你可能想知道,为什么有这么多客户端?为什么不集中精力搭建一个很棒的“超级客户端”一劳永逸呢?

嗯,有很多原因可以说明拥有多个客户端是一件好事。以下是我认为最突出的两点原因:

  • 拥有多个客户端意味着独立的开发者们处于友好的竞争中,通过不同的解决方案和特性来相互激励。竞争推动创新
  • 拥有多个客户端意味着稳健性,当某个客户端出现问题时提供更多其他选择。例如,假设我们只有一个“超级客户端”,如果这个客户端出现 bug 或漏洞,那该怎么办?这可能会导致整个 Eth2 网络瘫痪。
由于这些 (以及更多的) 原因,支持一个均衡的以太坊2.0多客户端生态系统是很重要的。以太坊核心开发者 Danny Ryan 对此表示:

在 (信标链) 发布之前的这段时间,我希望你们可以走出舒适圈去尝试使用不同的客户端。这些客户端之间有许多的权衡,你需要亲自使用才能找到哪个客户端最适合你...以太坊以多客户端的模式运行,为了获得这种方式带来的益处,我们需要用户运行各种不同的客户端 (从而使所有类型的客户端健康地分布在网络中)。

 

7大客户端

 

回归正题,我们开始深入了解以太坊的7大客户端。这些客户端按名称字母顺序排列如下:

  • Cortex (Nethermind)
  • Lighthouse (Sigma Prime)
  • Lodestar (ChainSafe Systems)
  • Nimbus (Status)
  • Prysm (Prysmatic Labs)
  • Teku (PegaSys)
  • Trinity (以太坊基金会)
本文将从成熟度、技术、功能和支持等方面对各个客户端进行描述。

随着最新的以太坊2.0规范版本 (v0.12.1) 在最近发布,且规范可能仍在经历变化,所有客户端都处于积极开发中。

以下信息基于本文发布之日公开的线上信息来源。

致各个客户端团队:如果文中有任何不准确之处,还望指正。

 

01. Cortex (Nethermind)

 

开源的 Cortex 客户端是唯一基于 .NET 的处于开发中的以太坊2.0客户端。其开发公司 Nethermind 成立于 2017 年,位于英国伦敦。

虽然自去年12月份以来,Cortex 的 Github 库中就没有出现新的活动,但有证据表明,该团队正在 Nethermind (Eth1客户端) 库中开发对 Eth2.0 的支持。目前尚不清楚这是否意味着 Cortex 客户端已被淘汰,而青睐于功能更全面的 Nethermind 客户端,或者 Nethermind 最终将变成 Cortex。

产品概览 (基于 Nethermind,而非 Cortex)

  • 技术:Microsoft .NET Core 3.0
  • 平台:Linux、MacOS、Windows
  • 许可证:GNU Lesser General Public License
  • 仓库:GitHub。30名贡献者 (提交)。最近的提交在几天内。
  • 指标:Prometheus
  • 测试网:尚未上线 Altona 测试网
文档

Eth1 Nethermind 客户端有大量的文档。我没能找到有关 Eth2 Cortex 客户端的任何文档。可能目前正在开发中。

当前状态

  • 当前致力于存款 (deposit) 的处理和信标链节点实现。
  • 尚未实现最终性 (finalizing)
值得注意

Nethermind 的 Github 页面列出了在未来 6 个月内建立对 Eth2 多客户端测试网的支持

Links 相关链接

 

02. Lighthouse (Sigma Prime)

 

Lighthouse 是由 Sigma Prime 团队使用 Rust 编写的开源客户端。该客户端的开发始于 2018 年,该公司位于澳大利亚悉尼。

产品概览

  • 技术:Rust
  • 平台: Linux、MacOS、Windows
  • 许可证:Apache 2.0
  • 仓库:GitHub。57名贡献者 (提交)。最近的提交在几天内。
  • 指标:Prometheus
  • 测试网:Altona (创世时期)
文档

Lighthouse 团队在提供该项目的文档方面做得非常棒。一些文档包括:

  • 关于客户端安装和配置的用户指南
  • 活跃的 Discord 社区
  • 定期更新的开发者博客
  • 自动生成的源代码文档
  • 贡献者指南,用于对该项目进行贡献
当前状态
  • 团队正专注于实现 v0.12.1 规范;
  • 参与了最新的多客户端测试网 Altona 的启动;
  • 正在敲定验证者私钥管理;
  • 正在运行外部安全审计;
  • 正在进行性能改进;
  • 正在致力于一种保护验证者免受 slashing (罚没) 的方案。
值得注意

Sigma Prime 网站有一个令人印象深刻的“sand on water”交互模拟,玩起来非常有趣,值得一试。

相关链接

 

03. Lodestar (ChainSafe Systems)

 

Lodestar 客户端是由 ChainSafe Systems 团队使用 TypeScript 编写的开源客户端。它由加拿大多伦多的一群开发者开发。除了这个客户端之外,该团队还开发了许多支持以太坊2.0的实用程序包和库。

产品概览

  • 技术:TypeScript
  • 平台:Linux、MacOS、Windows
  • 许可证:GNU Lesser General Public License v3.0
  • 仓库:GitHub。30名贡献者 (提交)。最近的提交在几天内。
  • 指标:HTTP 服务器
  • 测试网:尚未上线 Altona 测试网
文档

Loadestar 团队采用开放式交流,可以阅读他们团队的会议记录。有关安装该软件的用户指南很少 (基本上就是:克隆、安装依赖项、搭建、运行),但该团队计划增加更多相关文档。

  • 关于客户端安装和配置的最小用户指南;
  • 活跃的 Discord 社区;
  • 定期更新开发者会议笔记和计划;
  • 贡献者指南,用于对该项目进行贡献。
当前状态
  • 正在应用 v0.12.1 规范更新,并锁定上线 Altona 多客户端测试网;
  • 中期目标是能够在一个合适的测试网 (Altona 或者之后推出的测试网) 上可靠地运行一个信标节点和验证者客户端,并更新相关文档。
值得注意

该团队已经实现了一个仅为教育目的的网站 bls-keygen.com,允许用户使用 Lodestar 的 BLS 库实现来生成验证者密钥。他们还有另一个网站 simpleserialize.com,该网站实现了以太坊规范 v0.11.2 共识类型以及将序列化值 (serialized values) 进行反序列化的功能。

相关链接

 

04. Nimbus (Status)

 

Nimbus 是一个研究项目,也是以太坊2.0的开源客户端实现,其目标是在嵌入式系统和个人移动设备上执行,包括硬件资源受限的老式智能手机

Status 团队已经通过他们的消息传递产品 Status 在移动技术方面拥有丰富的经验。他们将自己的经验应用于搭建一个以太坊客户端,该客户端可以在个人移动设备上运行存档节点 (archival node) 和相关的 Eth2 软件

产品概览

  • 技术:Nim
  • 平台:Android、Linux、MacOS、Windows (试验)
  • 许可:Apache License 2.0 或 MIT
  • 仓库:GitHub。24名贡献者。最近的提交在几天内。
  • 指标:HTTP 服务器
  • 测试网:Altona (创世时期)、Onyx
文档

提供最近更新的、简明但切中要点的文档集,涵盖了启动和运行该客户端所需的大部分信息。

  • 关于客户端安装和配置的用户指南;
  • 活跃的 Discord 和 Status 聊天社区;
  • 开发者指南,用于对该项目做出贡献。
当前的状态
  • 实现了最新的 Eth2.0 规范版本 v0.12.1;
  • 参与了最新的多客户端测试网 Altona 的启动;
  • 当前仅支持从源代码构建;
  • 正在进行性能改进和安全性审计。
值得注意

Nimbus 是当前唯一针对移动平台的以太坊2.0客户端。Nimbus 基于 Nim 语言运行,Nim 是一种高效和通用的系统编程语言,具有类似于 Python 的语法,可以编译成 C 语言。

该团队最近将区块和证明消息 (attestation) 的处理性能提高了大约 10-50 倍,客户端的启动提升了 20-100 倍。

相关链接

 

05. Prysm (Prysmatic Labs)

 

Prysm 客户端是由 Prysmatic Labs (成立于2018年1月) 开发的功能齐全、文档良好的开源以太坊2.0客户端。

Prysm 是一个相当成熟的客户端,拥有一个非常活跃的开发团队。他们在与他们的软件和测试网的用户进行交互和支持方面做得很棒,他们最知名的测试网就是 Topaz (已弃用) 和 Onyx。

产品概览

  • 技术:Go
  • 平台: Linux、MacOS、Windows
  • 许可证:GNU General Public License 3.0
  • 仓库:GitHub。48名贡献者 (提交)。最近的提交在几天内。
  • 指标:Prometheus
  • 测试网:Altona (创世时期)、Onyx
文档

Prysm 的用户、代码和问题文档都非常详尽,并得到了很好的维护。Prysmatic Labs 团队在保持博客更新方面也做得很棒,对于想要跟进 Prysm 客户端进展的人来说值得一读。

当前状态

  • 该客户端已更新至最新的 v0.12.1 规范;
  • 参与了最新的多客户端测试网 Altona 的启动;
  • 最近进行了安全审计,正在处理审计反馈;
  • 该团队正在进行各种优化;
  • 正在进行验证者账户重构
值得注意


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

本文作者2020-7-7 16:02
山海
粉丝0 阅读8442 回复0
上一篇:
区块链成职业新宠 广东企业占半壁江山发布时间:2020-07-07
下一篇:
区块链占据9大新职业2席,人才缺口成为新问题?发布时间:2020-07-08

精彩阅读

排行榜

41财经公众号码

扫码微信公众号
给你想要与成长

用心服务区块链创业者/投资者
QQ1541735644
周一至周五 9:00-18:00
意见反馈:1541735644@qq.com

扫一扫关注我们

41财经媒体 X3.4© 2001-2013 Comsenz Inc.