谁在建设 ETH 2.0?

谁在建设 ETH 2.0?_第1张图片

以太坊的路线图真是霸气侧漏。在上一篇文章中,我们阐述了 Ethereum 2.0 的愿景。

简单回顾一下,以太坊 2.0 主要包含以下项目:

  • 权益证明(信标链 和 Casper FFG)
  • 分片
  • eWASM

一旦推出之后,以太坊 2.0 既能支持巨大的链上交易吞吐量,同时又能平衡去中心化和安全性之间的关系。以此为基础,以太坊有潜力成为:

  • 全球价值转移的关键基础设施之一;
  • 支持新经济体系的平台;
  • 全球协作的枢纽;

以太坊 2.0 不是由某个公司开发的。以太坊从各个层面来说都是去中心化的。

Vitalik 说得好:

区块链在政治层面上是去中心化的(不受个别人控制),在架构层面上是去中心化的(结构上不存在单点故障问题),不过它在逻辑层面上是中心化的(需要在状态上达成共识,整个系统运作起来就像一个计算机)
——摘自 Vitalik Buterin 的《去中心化的含义》

另外,以太坊在运作方式上是去中心化的(区块链的运行不依靠某个实体)。

既然以太坊不受个体控制,那么以太坊 2.0 是如何搭建的?

这是以太坊的一大亮点。它的有机性有望推动人类组织在扩大规模的同时保持包容性。

以太坊协议规定了构建以太坊区块链所必需的交互。作为一个巨大的开源项目,以太坊有一个庞大的社区,聚集了很多研究者和实施者,他们一起提出观点,讨论,改进并执行以太坊协议。以太坊基金会在其中具有很大的影响力,拥有广受尊敬的研究者和实施者,不过最终决策需要整个社区达成共识。

用来运行以太坊的软件叫做客户端或节点。已经出现了很多以太坊客户端应用,都是不同的软件开发团体编写的(都是开源的)。

谁在建设 ETH 2.0?_第2张图片

除了客户端应用,还有一整个开源软件项目生态系统用于完善以太坊的方方面面。

其中包括:

  • 智能合约语言(Solidity、Vyper)
  • RPC 库(web3js、 ethers、Nethereum)
  • 开发工具(truffle、ganache、solc、solium、embark)

回顾部分结束,接下来进入正题。

研究

许多正在进行的研究主题需要结合起来才能实现以太坊 2.0 。这些主题都是有公开文档记录的,在以太坊研究网站上也有讨论。研究人员和软件开发者可以查询并评论这些提议。

研究主题包括:

  • 签名聚合
  • 随机数生成
  • 分叉选择
  • 数据可用性
  • 轻客户端支持
  • 点对点通信
  • 跨分片通信和状态/执行分离

许多研究主题已经可以实现了,不过仍有许多处于早期阶段,需要更多时间去突破。

执行参考

随着这些研究主题日趋成熟,在此基础上已经形成了一份规范,作为执行团队开发以太坊 2.0 客户端的参照。

为助力以太坊 2.0 的开发,以太坊基金会正通过 Python 语言开发参考实现客户端。基金会还向执行团队提供了宝贵的社区支持,而且还定期举行两周一次的以太坊 2.0 实现者视频会议,追踪进度、解答疑问并且就常见问题达成共识。

信标链/分片客户端

下列团队都在研究或开发信标链/分片客户端:

  • Prysm — 由 Prysmatic Labs 开发,用 Go 语言编写。该团队每两周就会发布一次很棒的进程更新。
  • Lighthouse  — 由 Sigma Prime 开发,用 Rust 语言编写。
  • Nimbus — 由 Status 开发,用 Nim 语言编写。
  • Lodestar — 由 Chain Safe Systems 开发,用 JavaScript 语言编写。
  • Harmony — 由 Ether Camp 开发,用 Java 语言编写。
  • Pantheon — 由 ConsenSys 的协议工程团队 PegaSys 开发,用 Java 语言编写。该团队专注于解决以太坊面临的关键挑战,包括公链和私链的可扩展性和隐私性问题。
  • Trinity — 由(Piper Merriam 领导的)Trinity team 开发,用 Python 语言编写。

在执行以太坊 2.0 规范方面,这些团队的进展各不相同。在眼下阶段,所有团队都在努力搭建信标链客户端,这是以太坊 2.0 的核心愿景。

目前,信标链的搭建已经完成以下工作:

  • 信标链状态数据结构和持续性
  • 每个区块的状态转换
  • 分叉选择规则的实现
  • 验证者改组
  • 区块提议者的角色定位
  • 数据结构序列化
  • 点对点协议

目前正在讨论的一项关键流程是需要一种通用测试语言来编写测试案例——能让研究者定义一组测试及其预期结果 ,每个团队都能基于预期成果来验证执行情况是否符合规范,从而确保不同团队之间的一致性。

eWASM

eWASM 不是针对以太坊 2.0 构建的。eWASM 团队已经开发了一段时间,专注于解决 eWASM 与当前以太坊虚拟机的兼容性问题。eWASM 团队正在评估以太坊 2.0 的影响,不过这项研究还是有点为时过早,毕竟以太坊 2.0 的实际执行情况尚且未知。

特别要指出的是,新的以太坊 2.0 分片系统将采用一种延时执行模式。就目前而言,一旦交易得到处理,以太坊虚拟机区块链就会立即执行智能合约代码。

在新的以太坊 2.0 分片系统中:

  • 分片只负责交易排序和数据存储
  • 执行过程是重叠的,可以读取多个交易、执行代码并返回结果

执行重叠可能是建立在区块链之上的二层方案,而非融合进区块链的底层构架。

 


链接: https://medium.com/rocket-pool/ethereum-2-0-whos-building-it-54a735442e

 

你可能感兴趣的:(区块链,以太坊)