7月5日,由杭州市余杭区政府指导,杭州未来科技城管委会、巴比特主办的“2020杭州区块链国际周”正式开幕,来自世界各地的行业大咖、互联网大厂、创新企业、投资机构、学术机构、主流媒体将齐聚亮相,共同探讨区块链产业面临问题及未来趋势。 Sigma Prime 联合创始人Paul Hauner发表了题为《以太坊2.0:过去、现在和未来》的演讲。Paul在演讲中介绍了以太坊2.0的历史及一些重要概念,他还表示,在启动以太坊2.0 phase 0之前,还需要运行一个长期存在的多客户端测试网2-3个月的时间,此外,开发者还需要对所有涉及到的以太坊2.0客户端进行安全性审查,他还预测称,以太坊2.0的主网上线日期预计将在今年11月或12月。 ? 以下为巴比特整理的演讲全文: 大家好,我的名字叫Paul Hauner,很荣幸能够为中国的朋友们发表演讲。正如你们所知,以太坊自2015年就已上线,并成为了世界上市值第二大的区块链。现在以太坊正朝着2.0进行大规模的升级,它会通过权益证明(PoS)代替工作量证明(PoW)共识算法,并实施并行化交易处理,权益证明(PoS)将大大减少对环境的影响,并提供额外的安全属性,而并行化交易处理将大大提高交易的吞吐量。 今天和大家谈论这些,原因在于,我是实施这次升级的软件工程师之一,在这次介绍中,我将探讨以太坊2.0的历史,看看它目前处于什么位置,并将朝着什么方向发展。 我也不会错过这次机会,告诉大家我在开发的以太坊2.0客户端Lighthouse的一些事情,作为一个更为详细的介绍,我是一名来自澳大利亚东海岸,有着十多年工作经验的软件开发人员,同时我也是Sigma Prime公司的联合创始人兼董事。我还会讲到,我们并不是直接为以太坊基金会工作,我是Lighthouse客户端的主要开发者和发起人之一,这是一个用Rust编程语言实现的以太坊2.0客户端,Lighthous是一个以太坊2.0客户端,这就好比是当前以太坊的Geth客户端,或者说是比特币的Bitcoin Core客户端。 我们的Lighthous开发工作,得到了以太坊基金会、Consensys以及其他组织及个人的资助, 对于他们提供的支持,我们感到非常感激。自从以太坊2.0概念诞生以来,我一直在参与它的规范编写工作,我几乎参与实现了生产级软件的每一个组件,也为以太坊2.0规范做出了无数贡献,包括修复了以太坊2.0存在的多个关键漏洞。 两年来,我一直全职参与了这个项目,我希望能够帮助大家理解以太坊2.0现在的进展,以及它的发展方向。Sigma prime是我所在的公司,也是Lighthouse客户端的维护方,我们成立于2016年,这是一只由大约14名软件工程师和研究人员组成的团队,他们在开发及分析安全软件方面都有自己的专长,我们不仅要开发像Lighthouse这样的关键软件,我们还有相当一部分时间花在分析其他软件,并为核心区块链基础设施、智能合约、密码学实现,以及其他组件提供详细的安全审查。我们最近审查了NEAR和Filecoin的区块链实施情况,并审查了Chainlink、恒星(stellar)以及很多其它在区块链上处理价值数以百万美元计公司的智能合约。 对于以太坊2.0,我们还被以太坊基金会聘用,来执行差分模糊测试,这种安全技术,旨在使用随机数据找出可能导致区块链分叉的软件漏洞。 以太坊2.0的历史 回到以太坊的话题,以太坊2.0的概念是在2018年年中的时候首次出现的,作为当时战略的一个支点,执行增量升级,通过工作量证明(PoW)链上的智能合约,向以太坊提供一定程度的基于分片的权益证明,而它的增量方法并没有令人完全满意。特别是,它不允许有大量的验证者,而这对我们想要的去中心化而言,是不利的。另一方面,一种称为BLS签名的新型密码学技术,如果去围绕它设计一个适当的架构的话,就可以允许以太坊大量增加验证者账户,Vitalik, Justin drake 以及其他研究人员开始沿着无障碍的道路前进,最终完成了初步设计。很明显,这种设计是非常可取的,从长远来看,贬低当时的努力,符合以太坊的最大利益。 因此,以太坊2.0的概念,诞生于2018年年中,从那时以来,它已经演变成了Python编程语言的规范,我们今天可以在github.com/ethereum/eth2.0-specs访问到它,这一规范是简明而又全面的,但作为权衡,它也是不容易理解的,除非你是一名软件开发人员,或者是一位寻求复杂细节的学者,否则我不建议你直接阅读规范, 也就是说,这份规范的门槛是很高的,但其涉及到的概念,对于那些只对区块链有简单了解的人来说,是可以理解的。 以太坊2.0的一些重要概念 我现在将解释其中的一些概念,因为我认为这将有助于你理解协议目前的状况和发展方向,但别担心,当这些概念在你头上掠过时,最后并不会有什么测验,因此,关于以太坊2.0,你首先应该了解的是,相对于今天我们所知道并且喜爱的以太坊区块链而言,以太坊2.0是独立存在的区块链。为了让事情变得简单些,我会把当前的以太坊区块链称为以太坊1.0,这不是我们以前所使用的术语,但现在有了以太坊2.0,它就变得有用了,当我说独立区块链时,我是指在一个非常基本的层面上,以太坊2.0可以完全独立于以太坊1.0而存在。 它们有不同的区块和交易,它们本质上是不同的,如果我们愿意的话,它们可独立自主地存在。但是,我们部署以太坊2.0的方式,确实会从根本上把它与以太坊1.0联系起来,它将以两种方式做到这一点,首先,只会有一种ETH加密货币,不会有新的代币,没有ico,以太坊2.0上的加密货币只是从以太坊1.0上面迁移过去的,或者,它将通过权益证明共识机制产生的奖励获得,这是新的发行方式。当然,如果市场愿意的话,ETH1.0和ETH2.0可以有不同的价格,但是以太坊开发人员的一致意见是保持代币的统一,并作为一个单独的ETH代币而呈现。 它们联系在一起的第二种方式是,为了成为以太坊2.0验证者,你需要向以太坊1.0智能合约进行存款,所以以太坊2.0将使用以太坊1.0作为一个登入机制,所以当你提供一笔存款,以成为状态验证者时,ETH将在以太坊1.0链上燃烧掉,并在以太坊2.0链上重生出来,因此,以太坊1.0和以太坊2.0共享一种代币,构成了它们作为两个基本上相互关联的区块链的关系基础。 作为以太坊2.0的开发者,我期望看到区块链以越来越基本的方式连接起来,所以我已经提到以太坊2.0会有验证者,但我并没有真正正确地介绍这个术语,和很多其它权益证明(PoS)协议一样,验证者是一种具有一定数量绑定到该协议的加密货币的实体,而这种绑定关系的媒介,就是他们的质押权益,所以在以太坊2.0当中,一旦验证者在一段时间后存入他们的权益,他们将被激活,因此从激活验证者到选择退出之间的一段时间,他们将被要求执行两项主要任务,第一项任务是制造区块,这是区块链中的常见活动,涉及将网络消息收集到区块中并在网络上发布。 而现在,第二项任务是状态协议的唯一证明,这就是要生成attestation(证明信息),这些attestation(证明信息) 实际就相当于投票,它们声明了区块链历史中的一些区块是规范的,应该是可信的来源,协议的作用是收集这些attestation(证明信息),然后求和,然后用它们来确定是否大多数验证者同意区块链的历史。如果是这样的话,它可以确定区块链的这一部分已经完成。 所以在以太坊2.0当中,验证者被随机选择来执行这些任务,这是基于区块链运行过程中产生的一些熵,所以一名验证者可每隔几天生成一个区块,这取决于验证帐户,但他们知道,他们大概每6.5分钟就要出具一份attestation(证明信息),所以,说清楚些,当我说你将生成一个区块,我的意思是你正在运行的一个软件,一个区块链客户端会自动为你完成这个任务。 因此,你的以太坊2.0客户端,这个会运行的软件,它将负责所有这些任务,而作为人类,你唯一的任务就是保持软件的运行。 所以现在回到你质押的权益上来,这是你和协议联系到一起的媒介,如果你执行了一件可证明的坏事,协议会惩罚你,它会烧掉你质押的一部分加密货币,在某些情况下,协议会用这笔质押资金的另一部分,来奖励揭发你不良行为的检举人。 现在,一次坏的活动,会导致罚没的发生,你在以太坊2.0中的余额会减少,这会由两种情况导致,第一种方式是创建冲突区块或证明,然而,只要你遵守以太坊2.0的使用说明,并且它没有任何严重的漏洞,那你的以太坊2.0客户端就可以完全保护你不受这种情况的影响,第二个可能导致你损失质押权益的原因,是因为离线,即没有执行你需要执行的任务。 在损失方面,创建冲突消息的代价是巨大的,而离线的惩罚就没有那么重了,所以创建冲突消息会让你损失一半的质押权益,而离线只会让你损失在线时能够获得的回报,也就是说,如果你在线,并履行职责的话,你会获得15%的收入,而如果你离线了,没有履行职责,则会导致15%的损失。所以我提到了惩罚,当然,作为验证者是会有回报的,否则就不会有太多的吸引力,因此,那些履行职责并出色完成任务的验证者,将获得协议授予的新发行奖励,这和工作量证明(PoW)是很像的。 所以这些奖励取决于几个因素,比如验证者的数量,以及全局验证者的表现情况,但目前,如果你履行所有职责,并且区块链按预期运作,我们预计你在以太坊2.0进行质押的年化ETH回报大约是15%,说的清楚些,一个以太坊2.0验证者需要质押32 ETH,而其通过质押获得的ETH年收益大约为15%。如果你碰巧有64ETH,那么你需要创建两个验证者,每个验证者严格质押32 ETH,现在,我不想在这里谈太多的细节,但是了解以太坊2.0的结构,有助于理解路线图。 以太坊2.0,实际上是由多个区块链组成,而顶部的单个信标链,它管理着验证者为权益证明协议执行绝大部分的计算,然后在底部,我们有分片链,它们就像现在的以太坊1.0区块链,但是会有很多这样的链并行存在,它们像智能合约和余额一样存储状态,并处理修改分片状态更改的交易,然后将它们当前状态的摘要推送到信标链,这会使用到验证者对那些分片链状态摘要达成共识。 现在我们来谈谈这次演讲的真正话题,也就是以太坊2.0当前的发展情况。为此,让我们先看看这个项目的长期路线图,以太坊2.0路线图是分阶段呈现的,而目前,绝大多数的工程都集中在phase 0 这个阶段,这就是当前所有以太坊2.0测试网的目标,Phase 0 这个阶段包含核心的权益证明协议,即投票奖励、惩罚、罚没等,然而它并不包含分片链,也就是说,它不会有交易、智能合约或任何真正面向用户的功能,而这些功能与Staking无关。 没错,如果你想知道,不做交易的区块链有什么意义,好吧,phase 0这个阶段就是工程师们的证明,这样我们就可以建立和维护一个稳定的权益证明区块链,而不会因为交易而复杂化,以太坊在启动2.0时需要更加小心,这不是其他区块链在第一次启动时可比的,以太坊已经拥有庞大的用户群,一旦我们发出以太坊2.0准备就绪的信号,我们很可能会看到大量用户涌入,我认为这要比新的区块链更有可能发生,所以,当我们让phase 0落地时,我们发出的信号是什么呢? 希望今年晚些时候,我们可以有信心让质押者在链上进行操作,但不一定涉及目前运行在以太坊1.0上的所有应用、智能合约和交易量,我们将在之后发布的阶段,为这些事物发出信号。因此,分阶段方法的另一个好处是,如果在phase 0期间出现关键问题,我们会尽最大努力避免这些问题,如果我们不同时运行数百个应用,那么解决这些问题就会容易得多,现在我们知道有一个分阶段的方法,我们知道在phase 1 有交易之前,我们将在phase 0有验证者,我们还建立了存款合约,让验证者在以太坊1.0链上存入ETH,并将它们转移到以太坊2.0,所以这给我们留下了一个有趣的问题: 在 phase 0这个阶段,一旦验证者将自己的ETH转移到以太坊2.0, 一旦他们不想再做验证者,他们怎么处理自己的ETH? 我发现这让大多数人感到惊讶,让我给你们答案,一旦验证者在phase 0阶段停止验证,他们必须等到phase 1阶段,才能真正转移或再次使用这些ETH, 所以说清楚,如果你在phase 0阶段存入32 ETH,然后成为一个验证者,你需要确保自己能够承受自己的ETH会锁定到phase 1阶段,这个时间很容易是以年为单位的,所以,这对某些人来说显然是不利的。 为什么会这样?之所以如此,是因为在以太坊1.0和以太坊2.0之间启用双向传输, 如果存在严重的共识错误,就基本没办法在以太坊2.0上执行回滚,也就是说,如果系统是一个封闭的系统,如果它的值不能从中泄漏,那么在该系统上执行回滚就要容易得多,现在我们想把这个回滚能力锁定到phase 0阶段的早期,由于权益证明(PoS)协议的实施确实是非常复杂的, 现在,也就是说,如果我们真的发现phase 0表现出非常好的稳定性,没有什么能阻止我们在phase 1阶段之前过早地实现双向桥, 事实上我们确实期待它,然而在现阶段,我们还不能完全保证存在一座双向桥梁。 因此,锁定还强化了这样一个想法,即如果你参与了phase 0 阶段,然后你就参与了以太坊早期阶段的实验性转变,我们不一定希望每个人都在phase 0 阶段立即进行Staking,那些坚定的铁杆支持者,第一时间参与进来当然有一些好处,我说的是,我们仍可以使其对于phase 0 质押者而言是可访问的,它不会只为技术精英而准备,但这确实需要对以太坊及它的愿景做出一定程度的承诺。 这么说吧,我希望看到你们当中的一些人,会在以太坊,也许是Lighthouse客户端上进行Staking。 事实上,我们已经有不少来自中国的用户在测试网上运行Lighthouse,所以我们刚刚谈论了以太坊2.0的路线图,我们也知道了phase 0 是工程目标,而后面的阶段还在研究当中。 以太坊2.0的研发进展及未来 那现在phase 0工程的进展到哪里了呢?事实上,关于phase 0,开发者们正进行大量的工程工作,它已经活跃了将近两年了,而phase 0阶段最大的工程,就是以太坊2.0的客户端,我们目前有七个活跃的、完全开源的以太坊2.0客户端实现,其中有4个客户端积极参与了公共多客户端测试网。 以太坊2.0客户端实现的多样性,对网络来说是非常重要的,对于生态系统来说,一个具有多种实现方式的区块链,不太可能因为一个错误而经历严重的停机,另外,每一种客户端实现都使用了不同的语言,这意味着我们可以很容易地与其他喜欢某种特定语言的工具或组织集成,我们的客户端实现,有Rust、Go、Python、Java、Nim、Java script以及C#语言版本,这涵盖了编程领域的巨大空间,这意味着如果你正在使用其中一种语言,并且有人已经完成了所有数据结构定义编码方案的实现以及许多其他任务,这意味着你可以用较少的开销用自己的语言构建工具。我们也有多个区块浏览器、正在开发的帐户管理工具和开发系统、正执行网络及隐私分析形式化验证的安全团队,还有安全漏洞悬赏以及这些工具和实现的差分模糊测试。 我们已经看到成百上千的用户在运行软件时遇到问题并提供了反馈,所以phase 0 更像是处于beta阶段的项目,它将为全面的生产做好准备,现在phase 0阶段还有什么要做的?在我们能启动phase 0之前,官方的以太坊2.0信标链还有一些任务要完成,主要是运行一个长期存在的多客户端测试网2至3个月的时间,我们已经在运行这些多客户端测试网,并且在过去已运行了一些,但我们还没有在主网测试网之前发布官方的最后一个,我预计这会在接下来的几个月内发生。 我们还需要通过安全性审查,来核查网络上线时会涉及到的所有客户端,已经有两三个客户端在进行这项工作了,还有一些小的工程任务还没有完成,比如API和密钥管理实践的标准化,但与我们已完成的工作相比,这些都是微不足道的任务。 我知道,大家都想知道主网的上线日期。由于这是一项分布式、去中心化的工作,因此,对于我们而言,很难给出一个像是严格的自上而下组织的最后期限。然而,我个人的无约束力估计,是在今年的11月或12月,我们确实因为主网发布而感受到了压力,并且我们都很想在明天推出主网。但是以太坊对很多人来说是非常重要的,重要的是,我们能够一次性地,并且正确地推出主网。 现在,也许建立一个更精简、更环保的以太坊对你很有吸引力,你在想怎么才能参与进来,有很多方法可以参与到多客户端测试网当中来,运行你自己的测试和验证程序,并报告与客户端相关的任何问题或烦恼,这对我们开发人员来说是非常有价值的。你只要访问其中的一个github存储库,并按照它们的指示进行操作,所以如果你是一名软件开发人员,你可以尝试对现有工具做出贡献,或者使用新工具填补空白,如果你想和像我这样的研究人员和工程师聊天的话,你可以访问ETH R&D discord,如果你是软件共识算法方面的专家,你可以去寻找漏洞,或为规范进行改进,作为一个慷慨的漏洞奖励,我们有足够的空间给聪明和积极的个人。 如果你想参与进来,你需要做的就是伸出援手,最后,我想简单地谈谈我们的以太坊2.0客户端实现- Lighthouse,Lighthouse是领先的以太坊2.0客户端实现之一,由于我们首先重点关注的是安全性和性能,当你在一家信息安全公司工作时,使用Rust编程语言是很自然的事情。我们的性能数据目前是领先的,根据所有的相关报告显示,我们的稳定性也是如此,我们还关注了可用性方面,我们正生产一个对用户友好的图形化Staking界面,你可以在笔记本电脑上安装lighthouse,并使用32 ETH进行质押,或者你可以将其部署到服务器集群,并使用32000 ETH进行质押操作。 我们在discord上非常活跃,并且团队的大多数成员都在亚太地区,我们致力于以太坊2.0,并生产一个快速、安全、并且易于使用的客户端实现,在接下来的一周,将会有一个新的多客户端测试网发布,我们希望看到你的验证者能够在多个客户端上运行,其中包括了lighthouse,谢谢你们听我的演讲,我祝愿你们所有人都能度过一个愉快而富有成效的会议。 —- 编译者/作者:隔夜的粥 玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。 |
杭州区块链国际周 | Sigma Prime 联合创始人:以太坊2.0预计将在今年11月或12月上
2020-07-05 隔夜的粥 来源:区块链网络
LOADING...
相关阅读:
- 日报丨蚂蚁集团发布国内首款区块链自研软硬件一体机2020-08-01
- 以太坊2.0中的DeFi:城市、郊区、农村2020-08-01
- 【文中红包】11月份以太坊2.0能如期发布吗?不少人已经弃ETH而去,你还2020-07-31
- 以太坊网络的五年2020-07-30
- 以太坊2.0新进展:11月预期上线能否顺利?利好出尽是利空的魔咒会不会2020-07-30