Eth 2.0 AMA | Vitalik: 我对以太坊2.0充满信心!

xmorient点击上方 “Unitimes” 可以订阅哦!


unitimes.io

640?wx_fmt=png

全球视角,独到见解


昨日,以太坊2.0的研究者和开发者在Reddit平台上举办了一场线上AMA (ask me anything)的活动,为以太坊社区成员解答有关以太坊2.0的相关问题。本文将给读者们呈现其中的一些关键问答内容。由于本次AMA持续了12小时,内容篇幅较长,因此本文仅节选其中一些重点内容,更多内容请参阅原文:

https://www.reddit.com/r/ethereum/comments/aivyyj/eth_20_researchers_ama_send_in_your_questions/


以下为AMA具体内容 :)


@martinkarolev: 你认为什么时候以太坊能够解决扩展性问题?


@Justin Drake (以太坊研究者):在以太坊2.0的阶段1 (即分片结构的试运行阶段,预计在2020年),以太坊将拥有分片数据。即便是没有 EVM (以太坊虚拟机),这些分片也可以作为 TrueBit (以及其他替代性执行引擎) 的数据有效性层。在阶段2 (即分片实现eWASM阶段,预计在2021年),我们将实现以太坊第1层的扩展。


执行引擎 (execution engine) 是一种在假设数据达成共识时计算状态的一种方法。EVM 的执行引擎是“naive re-execution (简单的重新执行)”。还有很多其他很棒的执行引擎,比如 TrueBit 和 基于SNARK/STARK 的有效性证明。


@Real_Goat: 第三方运行执行引擎的激励结构是怎样的?智能合约是否会向他们支付报酬?


@Justin Drake:其中一种可能性就是他们的报酬来自于用户支付的交易费用 (就像EVM一样)。

640?wx_fmt=gif

@elizabethgiovanni: 你们在决定将来实现 PoS 系统时的(ETH)发行率时,有向一些经济学家咨询意见吗?更广泛地说,就是在你们做出的某些(ETH)发行率的决定对整个网络和社区将产生怎样的短期或长期影响方面,谁在向你们提供帮助/建议呢?


@Vitallik Buterin: 就我个人而言,实际上我最感兴趣的就是来自于(以太坊2.0中的)质押者的反馈。主要的问题基本上就是,如果质押者获得的奖励有一个固定的水平,那是否会对这些经济激励进行任何调整,以此来(i)激励更多的人来参与验证,(ii)鼓励许多小型独立验证者或者小型矿池,以此来对抗一些大型矿池。


@oudiou: 我真的在考虑成为一名质押者(即验证者),但我也很担忧存在的风险,尤其是验证者使用的智能合约存在的风险。此外,当我通过这篇文章得知,质押1万个ETH预期得到的回报率是2.54%。这么看来,风险/回报这个比率真的有些不理想。我认为任何投资回报率低于5%都是不值得的。

640?wx_fmt=gif

@0xstark: 由于加接下来几年当前的以太坊将被以太坊2.0所代替,对于当前犹豫是否要在以太坊上搭建的开发者你们想对他们说些什么?


@Vitallik Buterin: 我希望一旦 Serenity 的状态和执行模式确定下来(可以通过此链接来查看我之前写的一个最小的状态执行提议:https://ethresear.ch/t/a-minimal-state-execution-proposal/4445),我们将开始与开发者社区一起对高级语言(如Solidity和Vyper等)和最佳实践进行修改。希望借此能够使得开发应用的方式变得更加清晰,使得能够将这些应用按照现状重新部署到以太坊2.0链上。


@Justin Drake: 当前在以太坊1.0上搭建应用是一种进行学习和原型设计的很好的方式,也能够很好地组建一个与以太坊社区理念文化一致的团队 (可能与比特币、Ripple、比特币现金、EOS、Tether等社区的理念都不同。)

640?wx_fmt=gif

@vanchoDotPro: 如果我们进行了多次 ETH 质押(每次质押32个ETH),可以在同一台机器上运行多个验证者客户端吗?


@Vitallik Buterin: 可以的!没有什么能够阻止你通过一台机器来运行多个验证者客户端。你将面临的唯一的硬限制就是,你被分配其中进行验证的分片数量,会随着你运行的验证者数量而线性地增加。因此,如果你持有数千个ETH,那单台的笔记本是不足够的,你将需要更强大的机器。


@Justin Drake: 简短的回复:可以的。


长长的回复:每次质押32个ETH,你都需要注册登记为一名验证者。在阶段0 (即信标链阶段,尚未实现分片),你很可能在单台机器上处理数千个验证者客户端。


在阶段1,能够在单台机器上运行的验证者客户端的数量将取决于你的机器有多强大。主流的笔记本电脑应该能够很好地运行一个验证端,拥有最大容量的则可能处理2到10个验证端。


所需的计算资源将与运行的验证端数量呈线性关系,直到你运行的验证端数量达到1,000左右,那时超级节点(比如分片的全节点) 将更具有扩展性的优势。

640?wx_fmt=gif

@PurleHamster: 关于为了保持以太坊网络的去中心化,并能够将ETH押入抵押池或从中取出,那让用户能够在家中进行质押的重要性如何?


@Vitallik Buterin: 这正是我很在意的一个目标。与在家中便可以进行质押的方式相比,在AWS上质押或者通过矿池质押,后两种方式都不利于实现去中心化。


我们将尝试以下便于在家中进行质押的具体方式:


  • 相对宽松的离线处罚,只要验证者在线的时长超过50~67%的时间,那就可以获得净利润;

  • 将验证信标链的成本费用保持在很低的水平;

  • 反关联性处罚机制,即会严重处罚那些与很多其他验证者同时行为不当的验证者(如果你们在同一个矿池或者使用同一个VPS等情况下就很可能会如此)


@PhyllisWheatenhousen:相比于将你所有的ETH都质押进同一个验证者客户端中,将它们分开质押进不同的验证者客户端有什么好处?


@Danny Ryan (以太坊核心研究者): 每个以太坊2.0中的验证者都需要质押32个ETH,因此你不能将所有的ETH都质押用于同一个验证端。你可以在同一台机器上运行多个验证端(数量取决于这台机器的资源限制)。

640?wx_fmt=gif

@polonord: 鉴于当前Yoichi已经离开了以太坊基金会,针对以太坊2.0规范中的形式化验证方面,你们有什么计划吗?


@Justin Drake: 我想说的是,只有当该规范变得更加完善和稳定时(可能在2019年中期),形式化验证还具有意义。如果有任何人对以太坊2.0规范中的形式化验证感兴趣,请给我们发送一份经费申请报告。


@Hemlck: 如能效劳什么/如何参与进来?我很久之前就喜欢上了以太坊。我一直在研读Zcash的BLS12-381椭圆曲线,过去几周我满脑子都是这些内容。我现在喜欢上了这个项目,并刚刚发现了ethresear.ch这个网站。我真的想要参与进来,不管以什么方式!再次感谢你们的辛勤付出。我就是禁不住去看所有这些帖子。


@Justin Drake: 对于研究者们来说,参与进来并获得关注的一个很好的方式就是在ethresear.ch上发出一些高质量的内容。如果你是一名开发者,可以考虑加入其中一个以太坊2.0实现团队,链接:

https://docs.ethhub.io/ethereum-roadmap/serenity-phases/eth2-teams


@Danny Ryan:你好!参与进来的最好方式就是找到你感兴趣的领域,并深挖进去。因为根本上来说以太坊是一个开源的平台,研究和开发也是非常的开源便于获取的。


  • 继续研读下去,随着这自己的兴趣。

  • https://ethresear.ch/ 是一个紧跟和开始为研究讨论做出贡献的很棒的地方。

  • https://gitter.im/ethereum/sharding 包含了很多有关Serenity的日常讨论 (开发者们就不同的项目展开讨论)。

  • https://github.com/ethereum/eth2.0-specs 一定阅读这个规范!除此之外,还要成为一名积极的读者。如果你发现了任何问题、打字错误、bug等等,那就提交PR。也可以查看在规范代码仓库中的问题和PR,我们会经常性地讨论更改、修复、更新等事项,任何人都可以参与进来做出贡献。

  • 如果你是一名开发者,请打开一个以太坊2.0客户端项目,并选择“良好的第一个问题”,这能让你接触到项目的代码库,为之做出一些贡献,为你能够解决更大的问题奠定基础。


以上是具体针对Serenity领域的建议,你也可以找到自己感兴趣的项目并参与进去。能做的事情又很多,项目的负责人也会非常乐意能够获得帮助的 :)

640?wx_fmt=gif

@rocangla: 以太坊2.0与当前的以太坊有何不同?为何需要使用PoS而不是PoW?


@Justin Drake: PoS能够实现诸如经济确定性(economic finality)和分片,相比于PoW也更具成本效益(从环保和持币者承担的通胀成本的角度)。


@marianna_trench:诸位好啊!假如在实现PoS阶段时,网络中的阶段数量与当前一样...理论上来说,你们预计网络的最大交易吞吐量时多少?


@Justin Drake: 大概的数据是,1024个分片*每个分片每秒处理10笔交易=大约每秒能够处理1万笔交易。

640?wx_fmt=gif

@d4f6: 在实现PoS之后,如果某个节点被攻击了...那攻击者是否能够通过验证错误的交易使得这个节点失去其质押的ETH呢?


@Justin Drake: 当你运行的验证端被处罚的同时,也被自动地从注销了验证资格,以阻止进一步的损害。我们有一个称为“部分罚没(partial slashing)”的机制,即如果你运行的验证端出现故障,且没有很多其他的验证端也在这个时候被同时攻击的话,那你只会受到一小点儿惩罚。


因此,在单独的一次攻击情况下,你应该客户通过提款密钥来恢复大部分的资金(记得保护好你的提款密钥,比如可以通过冷存储的方式存储密钥)。

640?wx_fmt=gif

@eth-o-licious2:我很疑惑用户往信标链中质押32个ETH是否会被永久性地销毁,或者质押是单向性的从ETH转变成BETH?


据我所知,将质押的资金取回来所需的时间,已经从最初的4个月减少到了可能只需18个小时。但如果质押时单向的,那我怎么取回我质押的资金呢?


如果质押的32个ETH被永久性的销毁了,那么投资方面就会产生巨大的差异。同样地,如果当信标链被推出时,有关如何以及何时能够将质押的资金取回还没有完全地被具体化,那依旧是一个巨大的额外风险因素,这将使得质押进来成为验证者对于用户来说更不具有吸引力。


@Justin Drake: 在阶段2 (预计2021年到来)之前,信标链中质押的ETH将是不可转移的。


@Kevkillerke:如果质押的时候到来了,我能使用我的树莓派(一种只有信用卡大小的单板机电脑)来参与质押吗?


@Justin Drake:Nimbus客户端针对的就是资源受限的验证者 :)


@revealertv:关于当前的ETH通胀情况,你们确定了什么最终计划了吗?


@Justin Drake: 还没有最终的决定。最终,社区将必须在低通胀和高安全性之间进行权衡。详细参见:

https://github.com/ethereum/eth2.0-specs/issues/251


640?wx_fmt=gif

@Pandemonii:所有研究者做的工作都太棒了!是否能从外行人的角度来阐述一下从以太坊1.0过渡到以太坊2.0的路线图?要实现真正的去中心化,必须让更多的人了解整个流程并参与进来。


@Danny Ryan:广义上来说,以太坊2.0可以分为三个阶段--阶段0,1和2。


阶段0:信标链

  • 此阶段将推出全新的PoS链(即信标链)的核心系统级别功能;

  • 验证者可以提交抵押资金,加入验证者行列,参与搭建/敲定这条核心的链;

  • 此阶段中,信标链将使用Casper FFG来运行权益证明,一个RNG (随机数生成器),随机对验证者进行分配,同时模拟当前还不存在的分片链的交联(crosslinking).


阶段1:分片链(数据)

  • 此阶段将推出分片链,但只是作为数据区块链(执行和状态要在阶段2实现)

  • 此时验证者还将构建这些数据链,并通过“交联”来对每个分片在信标链上进行敲定,同时验证数据的有效性。

  • 对于需要存储大量数据的应用程序来说,此时的分片数据链开始具有了一些实用性。


阶段2:分片链(状态和执行)

  • 此阶段将在分片链中实现状态和状态执行 (eWASM).

  • 此时用户和应用将开始迁移至Serenity链上,并发挥其最大潜能。

  • 跨分片交易将在这个阶段实现,用户可以开始开发任意数量的“第2层”执行引擎。


以上的阶段(尤其是阶段2)还可以进一步分成更小的阶段,且在阶段2期间/之后将会有一次分叉,目的是在合约中引入以太坊1.0链上的状态/EVM。

640?wx_fmt=gif

@never_giveup:你之前说当前在Serenity阶段0中,即便是没有未解决的问题了。那阶段1和阶段2还有很忙未解决的问题吗?


@Justin Drake: 这三个阶段都没有重大的未解决问题。具体来说,在阶段0,我们需要本地可计算的验证者打乱操作;在阶段1,我们需要一个针对去中心化质押池的友好型托管机制;在阶段2,我们需要在可持续性存储方面进行研究。


@upscaleHipster:你们对以太坊3.0的愿景是什么?


@Vitalik Buterin: STARKs,大量的STARKs。希望能够实现2秒的出块时间;实现非常高效的跨分片通信,不管是在基本层还是通过各种易于使用的第二层系统。


@Justin Drake: 以太坊3.0涉及到一系列想法,超出了可预见的以太坊2.0路线图(阶段0,阶段1和阶段2)。我想说的是,以太坊3.0包括了Casper CBC,超二次分片(super-quadratic sharding),数据有效性证明(data availability proofs),STARKs (签名聚合、见证压缩(witness compression)、可验证延迟函数(VDFs)、状态根).


640?wx_fmt=gif

@Kike328:如果我在某个时间锁定合约中锁定了一些ETH,那在过渡到以太坊2.0之后还可用吗?


@Justin Drake: 以太坊1.0将会继续存在,即便当以太坊2.0已经完全部署了。详见:

https://www.reddit.com/r/ethereum/comments/ajc9ip/ama_we_are_the_eth_20_research_team/eeub9sp/


@beerchicken8:如果以太坊1.0链发生了一次有争议的硬分叉(产生两条链),那信标链会发生什么情况呢?是否会形成两条信标链?如果不会,那信标链会使用什么机制来决定哪条以太坊1.0链才是主链?这将对以太坊1.0链过渡到以太坊2.0产生怎样的影响?


@Vitalik Buterin: 默认情况下,根据以太坊2.0规范,信标链的验证者会仅仅通过投票机制来决定哪条是主链。无论大多数验证者支持的是哪条链作为主链,信标链都将使用这条链。


@inukaeth:以太坊2.0会带来任何zk-snarks相关的提升吗?


@Justin Drake: 我们希望能够在以太坊2.0时期实现SNARK和STARK友好型的哈希函数,但不幸的是这些在阶段0是无法实现的。


在应用层,理想情况下WASM将意味着不需要特定于SNARK的预编译。

640?wx_fmt=gif

@Honor_Lt:对于智能合约的形式化验证,你们有什么想法?在以太坊2.0时期会实现吗?


@Danny Ryan: 在我看来,智能合约的形式化验证是非常棒的。形式化验证将有可能在以太坊2.0实现。


@AnkrGAY:ERC20/721 标准的设计真的很糟糕。是否有任何想法或计划将当前的代币转变成ERC-1155之类的更高效的格式?(代码真的不是法律)


@Justin Drake: 我希望以太坊2.0的标准 (比如代币标准) 将从以太坊1.0的错误中学习并进行演化。


@thojest:如果我在以太坊2.0中部署一个智能合约,那这个合约会随机地被分配到某个分片中吗?


@Justin Drake: 不会随机分配的,你可以指定分片。你的选择将基于与利息合约和gas价格最接近的分片。(每个分片都将拥有一个独立的gas市场)


@Vitalik Buterin: 当然你最初的选择并不是不可撤销的;合约可以被设计成能够从一个分片中拖拽(yank)到另一个分片中,我预计很多的应用程序都将利用这个功能。

640?wx_fmt=gif

@trustnodes:信标链将需要其自身的节点吗?信标链与以太坊的联系是什么?


@Danny Ryan:信标链是一条全新的系统级别的链,管理者所有验证者以及他们的责任和奖励/处罚。


未来节点能够同时PoW链和/或信标链。如果节点运行信标链,则可以同步任何他们想要同步的分片链。


@sassal当前激励用户运行信标节点的激励是什么?


@Danny Ryan:这与运行以太坊1.0节点的激励措施有些类似 -- 挖矿、运行应用程序(区块浏览器、钱包服务、dapp门户等)、向直接连接到以太坊的业余爱好者等等。


  • 如果你是一名验证者,你将会通过运行节点和签署共识信息而获得奖励。

  • 如果你运行某种应用程序,可以通过运行信标链直接同步你想要同步的分片,这也是可以获得奖励的。

  • 你也可以将轻客户端和应用程序作为业务提供服务。我非常期望一些实体将试验这种模式。

  • 如果你是一名业余爱好者,你可能只是想通过运行协议来获得自主权 :)

640?wx_fmt=gif

@sassal:Serenity 阶段2中的跨分片交易将是怎样的?


@Vitalik Buterin: 可参见我之前发布的文章:

https://github.com/ethereum/wiki/wiki/Sharding-FAQs#how-can-we-facilitate-cross-shard-communication


@Harmony_One:如何阻止单个分片受到贿赂的攻击?


@Justin Drake: 通过随机打乱验证者来分配到所有分片链中。

640?wx_fmt=gif

@sky__s:我是一名新的开发者,正在考虑加入以太坊,你能否给我推荐一下在哪个领域的开发具有前景呢?


@Justin Drake: 可以考虑开发与以太坊2.0的可持续性存储相关的合约代码,即所谓的“存储租金(storage rent)”和“存储维护费(storage maintenance fees)”。


@foyamoon:如果我允许验证者客户端,那我质押的32个ETH将被锁定多久?如果在锁定期间,我的机器被损坏了或者被盗了,那我该怎么办?我可以换一台机器吗?


@Justin Drake: 只要你还是一名验证者,你质押的ETH就会一直被锁定。如果你想取出,则将需要等待几天/几周/几个月的时间,这取决于有多少其他的验证者也正在尝试取出他们质押的ETH。


你可以换一台机器的。你需要备份你的私钥,以防止机器被损坏或被盗。


还有就是提款密钥只能用于提款。最好还是已冷存储的方式来保护你的提款密钥。

640?wx_fmt=gif

@burrrata:通过eWASM,除了Solidity之外,我们将能够使用Rust 和/或任何编译为WASM的语言编写只能合约吗?哪里可以找到有关这方面的资料呢?谢谢:)


@Danny Ryan:是的,你可以使用任何编译到WASM的语言编写智能合约 :)


我预计将出现一些特定的工具包/框架将支持人们非常感兴趣的语言(如Rust、Go、typescript等),以帮助用这些语言编写合约。


https://github.com/ewasm/design 是一个开始了解这方面信息的好地方。eWASM团队已经将大量的信息编译进这里面,可以从更高的层次了解这个项目。


https://gitter.im/ewasm/Lobby eWASM团队和更广泛的社区将在这个gitter房间聚集,我相信他们会很乐意为你提供更多的指导或是回答你的任何问题。

640?wx_fmt=gif

@singlefin12222:Vitalik说过当前已经没有遗留什么重大的问题为解决了。这只是针对阶段0吗?如果是,你对其他阶段有多大信心?


@Vitalik Buterin: 就我个人而言,我对迄今为止概述的所有阶段的所有基础技术(包括Casper FFG、Casper CBC、Sharding、消除编码数据有效性证明、托管证明、基于收据的异步交易、第2层扩展、存储租金、无状态客户端验证等)都是充满信心的。当然,肯定还有很大的优化空间。


@ssaarraahh1:以太坊基金会(EF)有多少资金?足够支撑到完成以太坊2.0吗?


@Justin Drake: EF有数千万美元的法币和大量的ETH。足以用来实现以太坊2.0 :)




【本文版权属于Unitimes,转载请保留版权信息。未经授权,不得以任何方式加以使用,包括转载、摘编、复制或建立镜像。Unitimes将追究侵权者的法律责任。合作或授权请联系[email protected] 或添加微信 unitimes2017】

640?wx_fmt=jpeg

你可能感兴趣的:(Eth 2.0 AMA | Vitalik: 我对以太坊2.0充满信心!)