V神 Devcon4 演讲内容双语分享(附视频)

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


unitimes.io

640?wx_fmt=png

全球视角,独到见解



[备注:视频仅为知识分享,版权归主办方所有, 视频链接:

https://v.qq.com/x/page/v07911ymk3z.html]


Okay. Hello everyone. How are you?

Okay, 大家好!

 

Happy anniversary of the Satoshi’s White paper. Ten years!

中本聪的白皮书发布已经10年了,10周年快乐!

 

Yeah. They are 10 in binary counting.

没错,就是二进制里面的10(看V神手势)。

 

Okay. So today I’m going to basically talk about Ethereum theory 2.0, but not just from a technical point of view, but more from the point of view of why Ethereum 2.0, what is Ethereum 2.0, and kind of how we got here.

今天我将主要谈论以太坊2.0的概况,但不仅仅是从技术角度来讲述,更多的是讲述为何需要升级至以太坊2.0,什么是以太坊2.0,以及我们是如何一路披荆斩棘地走过来的。

 

Right, so what is Ethereum 2.0? First of all, Ethereum 2.0 is this kind of combination of a bunch of different features that we’ve been talking about for several years, researching for several years, actively building for several years that are finally going to come together into this one coherent whole, and these features include:

那么,什么是以太坊2.0?首先,以太坊2.0整合了我们经过好几年的讨论、研究和建树的许多成果,这些成果最终结合在一起形成一个连贯的整体,这些成果包括:

 

  • Proof of stake (Casper),

    权益证明(Casper);

  • Scalability (Sharding),

    扩展性(Sharding);

  • Virtual Machine improvements (eWASM),

    虚拟机的升级(eWASMA) ;

  • Improvements to cross-channel contract logic,

    跨通道合约逻辑的提升;

  • Improvements to protocol economics,

    协议经济学的提升;

 

And like really the list goes on and on and there is some parallel distribution. So lots of great stuff.

这个列表还在不断增加。很棒的东西真的很多。


Now, how did we get here?

那我们是如何走过来的呢?


Right. So the road to proof of stake actually started way back in 2014 with this blog post that I published in January describing this algorithm called Slasher, which is, introduced kind of the really most basic concept in a lot of proof of stake algorithms which is this idea that if you get caught doing something wrong then this can be proven and you can be penalized for it, and how this can be used to increase security.

其实概念证明可以追溯到2014年1月,当时我发布的了一篇博客文章描述了一种称为 Slasher 的算法,引入了许多的权益证明算法最基本的概念,即如果你做了违反协议的事情并且被抓住了,那你将受到处罚,且这一概念可以用来增加网络的安全。

 

But at the time as you can see from this slide, I believe that quote Slasher is a useful construct to have in our war chest in case proof of stake mining becomes substantially more popular or a compelling reason is provided to switch, but we’re not doing that yet. So at the time it was not even clear yet that proof of stake is even the direction that we’re going, but as we know now over time that changed quite a lot.

但当时的情况是,正如你可以从幻灯片中看到的,我认为假如权益证明(PoS)挖矿变得非常受欢迎,或者当理由足够充分来进行权益证明转换时,Slasher 是一个很有用的概念,但当前我们还没有到达这一步。当时权益证明是否是我们将要前往的方向,这一点是不太明确的。但随着时间的推进,我们已经明确下来了。

 

So what happened in 2014? So first of all we went through a bunch of kind interesting and aborted ideas:

那么,2014年发生了什么?首先我们研究了一些有趣但之后被废弃的想法:

 

“proof of proof of work” was this kind of suggestion to try to improve scalability, and “Hub-and-spoke chains” so basically you kind of have one chain in the middle and a bunch of chains on the edges. This was a kind of very early scalability and sharding proposal that tried to improve scalability for local transactions, but not for transactions that are global, so not for transactions that jump from one shard to another.

“工作量证明的证明”是一种用于改善扩展性的建议;“轮辐式链(Hub-and-spoke chains)”实质上就是有一条链在中心,一些链在边缘。这是一种早期的、用于提升本地交易的扩展性的扩展性解决方案和 Sharding 提案,但并不是针对全球交易,因此也不是针对跨分片的交易。

 

Hypercubes. So basically except the cube should have 12 dimensions instead of 3, so we can get more scale even more scalability with hubs and spokes by going with Hypercubes. Now unfortunately for various reasons this idea ended up getting abandoned, but someone has a big ICO to make it work, so happy someone’s trying it out.

Hypercubes(超级立方体):实质上每个立方体有12个维度,而非三维,因此Hypercubes甚至可以使轮辐式链获得更多的扩展性。不幸的是,由于很多原因,这个想法最终被废弃了,但有人想通过 ICO 来实现这个想法,我很高兴有人愿意去尝试这个想法。

 

So in 2014, there were still some progress, right? So there was this concept of weak subjectivity that we came up with which was this kind of semi-formal security model that tries to capture this idea of kind of under what conditions are proof of stake deposits and slashing and all of these concepts actually secure.

但2014年我们依旧取得了不小的进展,是吧?我们提出了 Weak Subjectivity(弱主观性)这一概念,它是一种半形式化的安全模型,探讨 PoS 中的保证金的罚没条件,以及这些概念在什么条件下能够保证安全。

 

Also I know we’ve got more and more certain that algorithms which much with much stronger properties than the proof of stake algorithms that existed at the time, so things like pure coin and all of its derivatives were actually possible, and kind of growing understanding that there was some kind of proof of stake scalability strategy that you could somehow do is through random sampling but we had no idea how, and we had a roadmap.

同时,我知道我们已经越来越确定有些算法要比当时的PoS 算法拥有更强劲的属性。因此,pure coin(纯粹的币)及其所有的衍生物实际上是可行的。并且我们逐渐了解到,PoS 扩展性可以通过随机抽样的方式来实现,但我们当时并不知道怎么实践,虽然当时我们制定了一个路线图。

 

So there was this nice blog post from Vinay Gupta in March 2015 where he outlined the four big stages of Ethereum’s roadmap at the time.

之后在2015年3月 Vinay Gupta 在其发表的一篇博客文章中概括了当时以太坊路线图的四个重要阶段:

 

Stage 1, Frontier, Ethereum launching, yeah!

阶段1,Frontier,即以太坊启动阶段,耶!

 

Stage 2, Homestead, which is kind of going from alpha to beta.

阶段2:Homestead,即从 alpha 走向 beta 版;

 

Stage 3, Metropolis, which at the time was supposed to be about Mist and user interfaces and improving user experience. But since then, the focus has kind of switched more to kind of enabling stronger cryptocurrency, but interface is still going forward in parallel.

阶段3,Metropolis,那时候的预期是开发 Mist 和用户界面并提升用户体验。但自那以来,我们将重心转移至实现更强劲的加密货币,尽管用户界面依旧是处于并行发展中。

 

And stage 4, Serenity, proof of stake. Right. So from now on we’re not gonna call it Ethereum 2.0. I will also refuse to use the word Shasper because I find it insanely and we’ll call it Serenity.

阶段4:Serenity,权益证明。是的,从现在起,我们将称之为 Ethereum 2.0(以太坊2.0)。同时我将不再使用“Shasper(Sharding+Casper)”这个术语,因为我觉得这个术语很不合适,我们将称之为“Serenity”。

 

So after this came a bit of a winter, we had a bunch of different kind of abortive attempts at solving some of the core problems in proof of stake, some of the core problems with scalability, research on Casper quietly Vlad kind of quietly began to hang all of his work on Casper CBC.

之后,我们经历了一个低谷期。在解决权益证明中的一些关键问题(其中有些是关于扩展性的问题)的过程中,我们的很多尝试都遭遇了失败,Vlad 也悄然暂停了他对Casper CBC 的研究。

 

One of the first interesting ideas was this kind of idea of Consensus by Bet where people would kind of bet on which block becomes finalized next and then once more people bet on a block that itself becomes information that gets fed into other people’s bets, and so the idea is that you would have this kind of recursive formula where more and more people would bet more and more strongly on a block over time, and after a logarithmic number of rounds everyone would be betting their entire money on a block and that would be called finality.

早期,其中一个非常有意思的想法是“通过投注达成共识”,即人们可以通过对下一个被确定的区块进行押注,一旦更多的人对某个区块进行押注,这将成为其他人对该区块进行押注的考量因素。这其中的想法是,这种方式将形成一种递归公式,即随着时间的推移,越来越多的人会对某个区块进行押注,在对数轮之后,每个人都会将自己全部的资金用于押注那个区块,这样一来该区块就被确定下来了。

 

This we actually took this idea really far. We created an entire proof of concept for it and you could see it finalizing, and you can see here is a signature function, I mean it burns most of our time on this, but then that in whole idea kind of ended up going away basically once we realized how to make kind of proper BFT inspired consensus actually works sanely.

这个想法带领我们走了很远。我们还为之创建了整个概念证明(PoC),你可以看到区块被确定的过程,你可以看到这里有一个签名函数。这在当时消耗了我们大部分的时间,但之后这整个想法就停滞不前了,因为我们意识到如何将受到 BFT(拜占庭容错)启发的共识机制更好的运行。

 

Um, Rent, so this is the idea that instead of charging a big one-time fee for filling storage we would kind of charge fees over time, so basically for every day or every block or whatever that some storage slot is filled you would have to kind of pay some amount of Ether for it.

Rent涉及的想法是,我们可以逐步对文件存储进行收费,而不是一次性地收取一大笔费用。因此,以每天、每个区块或其它方式为计,一旦特定的存储空间被占满,你就需要为此支付一定的以太币。

 

There was this one EIP number 35 that I tried to call EIP 103. But really it was EIP number 35 because that was the issue number that takes precedence. And this was one of the really early ideas trying to kind of formalize this concept and we’ve had many iterations on the idea of how to implement can rent maximally nicely since then.

我在上面(至幻灯片中)写的是 EIP 103,但其实应该是EIP 35。35才是这个EIP(以太坊改进提案)的发布编码。这是最早的一个想法,用于形成一个正式的概念,从那时开始,我们在如何才能最好地利用 Rent(租金)这一点上迭代了很多想法。

 

There was also this scalability paper that we tried to do back in 2015. And this tried to kind of formalize the idea of kind of quadratic sharding, super quadratic sharding, but it was very complicated. It had these kind of very complicated escalation games. It had a lot of them were kind of inspired by the ideas of how escalation works in court systems, an analogy that I know Joseph with philosopher really loves to use. But we tried to use it for the base layer, deep layer reversions, so basically if something goes wrong, then potentially large portions of the state could and if get reverted even fairly into the future. So there was a bunch of complexity, right?

之后在2015年我发表了这个扩展性论文。其中我试图将二次方分片和超二次方分片的概念正式化,但这非常复杂。它涉及一些非常复杂的“上升游戏(escalation games)”,其中的很多想法都是受到法院系统的启发的,这是Joseph和哲学家们都非常喜欢用的类比方式。但我试图将它用于基础层和深层回滚。就是说,如果出现什么问题了,那么状态的很大一部分可以在将来进行深度回滚。这真的非常复杂,不是吗?

 

Now one of the fundamental problems that we couldn’t quite capture but we kind of invent slowly inching towards was this idea of the fisherman’s dilemma and this is a fundamentally and very fundamental concept in Sharding research that basically describes the difference between scaling execution of state and scaling execution of programs versus availability of data. And the problem basically is that with an execution of programs you can have people commit to what the answer is and you can later kind of play a game and try to kind of binary search your way to who actually made a mistake, and you can penalize everyone who made a mistake after the fact.

有一个我们无法完全把握、但在逐步接近的根本问题,即所谓的“渔夫的困境(Fisherman's Dilemma)”。这是分片技术研究中的根本概念,其实质上描述了状态执行的扩展、程序执行的扩展与数据的可用性之间的区别。基本的问题是,在程序执行中,你可以让他人提交答案,之后你可以玩一个游戏,通过二分搜索的方式来查找谁的答案是错误的,并对他们进行惩罚。

 

The problem with data availability is whatever the game is, you can cheat the game because you can just not publish any data at all until the mechanism tries to check if you published it and only then do you publish just the data that the mechanism checked for. And this turns out to be a fairly large flaw in a fairly large class of scalability algorithms.

数据可用性的问题在于,不管游戏的方式是怎样的,你都可以作弊,因为你可以完全不公开任何数据,当知道机制试图查看你是否公布了数据,直到那时,你才公开机制想要查看的数据。这是许多扩展性算法中的一个相当大的缺陷。

 

And I wrote this a blog post if you want to search for it you can call it. It’s called A Note on Erasure Coding and Data Availability that describes some of the issues and more details. But still this was one of the things that delayed us. But even still we were happily making progress. Ethereum was moving forward. We were on our way.

为此,我还写了这篇文章,即A Note on Erasure Coding and Data Availability。文章描述了其中的一些问题和其他细节。这也是拖慢我们进度的一件事情。尽管如此,我们依旧很高兴继续前行。以太坊在继续发展,我们依然在路上。

 

Wait, then this happened (referring to the DAO attack). Okay, no more problems. Oh, wait, then this happened (referring to the Shanghai DOS Attacks). So the DAO hacked, the DOS attacks, all of that ended up delaying a lot people’s time and attention by potentially up to six months.

等等,之后这件事情发生了(指The DAO攻击事件)。好吧,没其他问题了。慢着,之后又发生了这件事情(指上海DOS攻击事件)。DAO攻击事件、DOS攻击事件,所有这些事情耽误了很多人的时间和精力,长达6个月之久。

 

But even still work move forward, eWASM moved forward, the work on virtual machine moved forward, and work on kind of alternatives things like EVM 1.5 moved forward, and people were still continuing to kind of get a better and better idea of look basically what a more optimal blockchain algorithms would look like from many different angles.

但尽管如此,工作依旧继续,eWASM工作继续前行,以太坊虚拟机的相关工作也在继续开展,还有一些诸如EVM 1.5 等替代方案也在向前推进。在更优化的区块链算法方面,人们也继续从不同的角度来获取更好的想法。

 

So after this that we started making huge progress and very quickly. Right, so during all of this time there were these different strands of research that we’re going on. Some of them were around prof of stake, and trying to do base layer consensus more efficiently. Some of them were around scalability and trying to shard base layer consensus. Some of them were around improving the efficiency of virtual machine. Some of them were around things like abstraction that would allow people to use whatever signature algorithms they wanted for their accounts which could provide post-quantum security. It would make it easier to make privacy solutions, among a bunch of other benefits and protocol economic improvements. And really all these things were still happening all the way through.

之后,我们开始迅速取得了非常大的进展。在那段时间,我们开展了很多不同的研究领域。有些研究围绕着权益证明,试图让基础层的共识变得更加高效;有些研究围绕着扩展性,试图通对基础层共识实现分片;有些研究围绕着改善虚拟机的效率;有些研究围绕着抽象化(abstraction),让用户可以在自己的账户中使用任何他们想要使用的签名算法,这样可以提供后量子安全性。这将使得更容易制定隐私保护方案,还有其他方面的好处以及协议经济层的提升。所有这些研究都还在继续进行。

 

So at some point around the beginning of 2017, we finally came up with this protocol that we gave this very kind of unambitious name of Minimal Slashing Conditions. And Minimal Slashing Conditions was basically a kind of translation of PBFT style traditional Byzantine consensus. So the same sort of stuff that was great done by Lamport or Shostak, and all those wonderful people back in the 1980s. But Simplifying it and kind of carrying it forward into more of a blockchain context.

在2017年年初时,我们最终开发出了一个协议,我们给这个协议起了个不是很霸气的名字:Minimal Slashing Conditions(最小罚没条件)。它其实是一种由PBFT(实用拜占庭容错算法)转化而来的传统拜占庭容错共识算法。早在20世纪80年代,Lamport、Shostak 等伟人便创建了同类的算法,但我们将之进行了简化和改进,使之更适用于区块链领域。

 

So the idea basically is that in a blockchain you just keep on having these new blocks appear over time and you can gain these kind of nice pipelining efficiencies by merging sequence numbers and viewers. Every time a new round starts you would add new data into the round. You can also have the second kind of round of confirmation for one piece of data be the first round of confirmation for the next piece of data, and you can really kind of get a huge amount of efficiency gained out of all of that.

其中的想法就是,在区块链中会不断产生新的区块,你可以通过将序号和观察者进行合并来获取流水线般的效率。每当新的一轮开始时,你就可以为本轮添加新的数据。而在下一轮中你可以确认这些数据中的一部分;你可以从中获得巨大的效率提升。

 

So the first step was Minimal Slashing Conditions which had six slashing conditions. Then it went down to four, and finally about half a year later we ended up merging prepares and comments. And this gave us Casper the Friendly Finality Gadget (Casper FFG).

一开始,最小罚没小件包含了6个罚没条件,之后减少至4个条件。再过了半年之后,我们合并了之前的准备事项和其他人的评论,最终形成了 Casper FFG

 

So last year at Devcon I presented this new Sharding design that basically kept the main chain and then created sharding as a kind of layer two system on top of the existing main chain that would then kind of get upgraded to being the layer one once it gets solid enough.

在去年的 Devcon 会议上,我讲述了这种新的分片设计,实际就是保留主链,然后创建分片来作为现有主链的第二层系统,在确认足够稳固时升级成为第一层。

 

From Vlad, the Casper CBC paper. The Casper FFG Concept, so December 31st, 2017, 23:40, Bangkok time, because we happen to be Thailand at the time.

之后Vlad发表了 Casper CBC 论文。Casper FFG 这一概念在泰国时间2017年12月31日23:40横空出世,当时我们恰好在泰国。

 

Basically what happened here is we pretty much to nail down what the spec of a version of a hybrid proof of stake would look like, and this version of hybrid proof of stake would basically use the ideas from Casper FFG, use this kind of traditional Byzantine fault tolerant consensus inspired ideas of how to do proof of stake on top of the existing proof of work chain. So this would be a mechanism that would allow us to get to hybrid proof of stake fairly quickly with actually a fairly minimal level of disruption to the existing blockchain. And then the theory is that we would be able to upgrade to full proof of stake over time. And we got really far along this direction, and there was a test that there were Python clients, there were messages going between like different VPSs and different servers, and different computers. And it got very far.

那时候我们很想知道,一种混合PoW和PoS的共识算法会是怎样的。这种混合共识算法实质上使用了Casper FFG 中的理念,以及受传统拜占庭容错共识算法启发,实现在现有 PoW 链上使用混合 PoW 和 PoS 算法。这是一种将允许我们快速地转向混合共识的机制,同时对现有区块链造成最小的干扰。之后我们将可能升级为完全的权益证明机制。我们沿着这个方向走了很远,我们还做了一个 Python 测试客户端,通过在不同的 VPS、服务器和计算机之间传递消息来进行测试。这个想法走了很远。

 

And at the same time, we were making a lot of progress on Sharding. So we continued working on the Sharding spec. Eventually we had this retreat in Taipei in March, and around here a lot of the ideas around how to implement a sharded blockchain seems to solidify, seemed to solidify. So in June we made this kind of very difficult but I think in the long term really beneficial and valuable decision which is that we said that hey, over here we have a bunch of teams that are trying to implement hybrid proof of stake and they’re trying to do the Casper FFG thing, build the Casper FFG implementation as a smart contract inside of the existing blockchain, make a few tweaks to the fork choice rule.

同时,我们在分片技术上也取得了很多的进展。因此我们继续致力于对分片进行技术规范。最终我们在今年3月份汇聚于台北。在这里,许多围绕如何实现一个载有分片的区块链的想法似乎稳固了下来。因此,在6月份,我们做了一个尽管困难,但从长远来看却非常有益且有价值的决定。由于我们发现:嘿,这里有一些团队在尝试实现混合权益证明,他们试图做一些 Casper FFG 的事情,试图将 Casper FFG 开发为一个现有区块链中的智能合约,对分叉选择规则作出一些调整。

 

Then over here we had a completely separate group that was trying to make a sharding system, that was trying to make a validator or manager contract so that was later renamed into a sharding manager contract on the main chain, and that was trying to build a sharding system on top of that. These groups were kind of not talking to each other too much.

而在另一边,有一个完全独立的团队正在试图搭建一个分片系统。他们试图通过搭建一个验证者或管理者合约(后来在主链上被重命名为分片管理者合约),并在此基础上搭建一个分片系统。而这些团队之间的交流甚少。

 

Then on the sharding side, it eventually became clear that we would get much efficiency by making the kind of core of the sharding system not be a contract on the proof of work chain, but instead be its own proof of stake chain.

在分片方面,最终这一点变得非常清晰,即我们通过将分片系统的核心合约放在权益证明链上,而不是放在工作量证明链上,从而为我们带来更高的效率。

 

And because that way we could make validation much more efficient. We did not have to deal with EVM overhead. We did not have to deal with gas. We would not have to deal with unpredictable proof of work block times. We can make block times faster, along with a whole bunch of other efficiencies.

且通过这种方式,我们能够使验证变得更加高效。我们不必应对EVM,以无需花费gas,更不用应付不可预测的工作量证明区块创建时间。我们可以是区块创建时间变得更快,此外还有很多其他效率方面的好处。

 

And we realized hey, we’re working on proof of stake here, we’re working proof of stake here. Why we doing two separate proof of stake things again? And so we decided to just merge the two together.

我们意识到,嘿,这边有一个团队致力于 PoS 开发,那边也有一个团队致力于 PoS 开发。为何我们要做重复工作呢?因此我们决定把这两边的工作合并起来。

 

This did end up nullifying a lot of work that came before. But what it meant is that instead of having it working on these two separate implementations we have working together on this one spec, this one protocol that would gets us the benefits of Casper proof of stake and Sharding essentially at the same time.

这个决定最终让之前的很多工作都作废了。但其意义在于,我们会在一起工作,开发同一份技术规范、同一份协议,让我们同时获得 Casper权益证明和 Sharding 所带来的好处。

 

Right so basically instead of trying to go to one destination, then go to another destination, and later on have this massive work of figuring out how to merge the two, we would just take a path which would take a little longer at the beginning, but the place it gets to actually is a proof of stake and sharded blockchain with the properties that we’re looking for.

这实际上就是,我们将不再像过去那样试着先去达成某个目标,之后又去达成另一个目标,再之后又进行大量的工作来将这两个目标合并在一起,而是选择一条尽管前期可能花费的时间有点长,但可以将我们带向载有我们一直寻求的属性、包含权益证明和分片的区块链的道路。

 

So in the meantime, we spent a lot of time arguing about fork choice rules. We ended up kind of getting closer and closer and deeper into realizing that fork choice rules based on GHOST, the agreed and heaviest observed sub-tree algorithm that was originally intended to proof of work, but repurposed by us for proof of stake, made a huge amount of sense.

同时,我们花了大量时间来讨论分叉选择规则。最终我们越来越意识到,基于 GHOST 的分叉选择规则是非常有意义的,虽然这个算法最初是针对工作量证明的,但之后我们又将之用于权益证明中。

 

We were just in the start of doing research on Verifiable Delay Functions. We had this workshop at Stanford, and we made a lot of progress on Verifiable Delay Functions there and just is still collaborating with a lot of researchers there. More ideas on how to do abstraction, how to do this idea where individual users can choose their own signature algorithms for their accounts. More ideas on Rent which we decided to rename to “storage maintenance fees” for political reasons.

对于可验证延迟函数(VDF)的演讲也才刚刚开始。我们在斯坦福大学有个工作室,在那里对VDF取得了很多的进展,并和许多的研究者一起协作研究。我们获得了更多有关如何进行abstraction、如何让个体用户为自己的账户选择签名算法、以及有关Rent(由于政治原因,我们决定将之重命名为“存储维护费”)的想法。

 

And research. So there’s a lot of work on Cross-shard transactions. So for example, there is this suppose I made on cross-shard contract yanking which kind of generalizes the traditional distributed system’s concept of locking into something that makes sense in this kind of asynchronous for cross-shard context.

研究方面,我们在跨分片交易方面进行了大量的工作。比如,我在csoss-shard-yanking这篇文章中将传统分布式系统中有关锁定的概念推广到异步的跨分片情境中。

 

Also I wrote this paper on Resource Pricing which includes ideas, ability kind of optimized and my ends up much more efficient fee market along with storage, how to do storage maintenance fees and why, and the different trade-offs between different ways of setting them. And in a case here Cdetrio wrote this post on doing Synchronous cross-shard transactions.

我还写了一篇有关资源定价(Resource Pricing)的文章,包括一些有关有效的存储费用市场、如何以及为何要实践存储维护费用、不同的设置方式所涉及到的折衷性等想法。Cdetrio 还写了一篇有关进行同步跨分片交易的博客文章。

 

So of course in the meantime, Casper CBC research also expanded into kind of Casper CBC’s own brand of Sharding which is totally not called Vlading, because Vlad absolutely hates that term.

当然,同时有关Casper CBC的研究扩大到了“Casper CBC领域的分片”,但不要称之为Vlading,因为Vlad真的很讨厌这个词。

 

So development right. 

在开发方面。


So there’s one of the kind of key strategies that we really tried to push forward in the Ethereum 2.0 path is the idea of creative multi-client decentralized development. And this wasn’t just a kind of because we have an ideological belief in decentralization, this is also a kind of very pragmatic strategy to like basically hedge your bet, first of all hedge your bets against the possibility that anyone software development team would not perform well.

在以太坊2.0道路上,我们有一个非常想要推进的关键策略,即创造性多客户端去中心化的开发。这不仅是因为我们的意识形态的信念是去中心化,还因为这是一个非常实用的策略,就是打赌别的团队都不会有你干得漂亮。

 

Second we already have plenty of experience from the Shanghai DOS attacks, of how you know there are plenty of cases where if one client has a bug, having other clients being available allows the network to continue running better, also wanting to kind of make the development ecosystem less dependent on the Foundation itself.

此外,我们已经从上海 DOS 攻击事件中获得了很多经验,包括如何才能知晓当某个客户端存在漏洞,而其他客户端没有漏洞可以使整个网络继续运行良好,同时也让整个生态系统的开发更少地依赖于以太坊基金会。

 

So the client the Ethereum Foundation works on is actually the Python client and so it has plenty of use cases, but in Python, just as a language has inherent performance limitations, and so there’s always going to be an incentive to try running the stuff built by the wonderful folks at Prysmatic and Lighthouse, Status and Pegasus and all the other teams that are popping up seemingly every month.

以太坊发基金会开发的客户端实际上是 Python 客户端,因此它由很多的用例。但 Python 作为一种开发语言,存在其固有的性能限制,因此,Prysmatic、Lighthouse、Status、Pegasus等项目以及众多不断涌现的其他团队,总是会提供激励机制来让用户运行他们搭建的东西。

 

So soon something which is totally not going to be called Shasper. Serenity begins. Yeah!

很快Serenity就会开始了,我们将不再称之为Shasper。耶!


What is Serenity?

什么是Serenity?


So first of all, it’s the fourth stage after frontier and homestead and metropolis, and where metropolis is broken down into Byzantium and Constantinople with Constantinople coming very soon as well.

首先,它是以太坊依次经历过 Frontier、Homestead和Metropolis 阶段发展的第四个阶段。其中 Metropolis 阶段分成两个部分:君士坦丁堡和拜占庭。而君士坦丁堡升级很快就会与大家见面。

 

And some realization of all of these different strands of research that we have been spending all of our time on for the last four years. So this includes Casper (not just hybrid Casper, 100% organic genuine pure Casper), sharding, EWASM and all of these other form of protocol research ideas.

它是我们在过去四年中,把所有的时间花费在以下这些研究方向所取得的成绩,这些成绩包括:Casper(不仅仅研究混合Casper,更注重研究100%纯原生Casper协议)、分片、EWASM 以及所有其他形式的协议研究思路。

 

This is a new blockchain for in the sense of being a data structure, but it has this kind of link to the existing proof-of-work chain, so the proof of stake chain would be aware of the block hashes of the proof-of-work chain, you would be able to move ether from the proof-of-work chain into the proof-of-stake chain, so it’s a new system, but it’s a connected system, and the kind of long long term goal is that once this new system is stable enough, then basically all of the applications on the existing blockchain can be folded into a contract on one shard of the new system that would kind of be an EVM interpreter written in EWASM. And (it’s) not finalized but this seems to kind of roughly be where the road map is going at this point.

从数据结构来说,这是一个全新的区块链,但它与现有的PoW 链有保持着一定的联系。因此,PoS 链能够读取PoW 链的区块哈希,这也将使得用户能够将以太币从 PoW 链上转移到 PoS 链上。它是一个新系统,但它与旧系统相联系。我们希望这个系统能达到的最长远目标是:当这个系统足够稳定的时候,所有在现有以太坊区块链上的应用,都将可以通过一个用 EWASM 写成的 EVM 解释器,存入新链某一个分片上的合约中

 

Serenity is also the world computer at it’s really meant to be, not a smartphone from 1999 that can process 15 transactions per second and maybe potentially play snake.

Serenity 也将成为一台真正意义上的世界计算机,而不是1999年那种每秒只能处理15笔交易、玩玩贪吃蛇的智能手机。

 

And it’s still decentralized and we hope that in many metrics that can be even more decentralized than today. So for example, as a beacon chain validator, your storage requirements at this point seem like they’ll be under one gigabyte as compared to something like 8 gigabytes of state storage today and the 1.8 terabytes that trolls on the internet seems to think the ethereum blockchain require for some stupid reason.

最后,Serenity 也是一个去中心化系统。我们希望,它能在许多维度比现有的区块链系统更加去中心化。举个例子,如果今天你的储存需求是8G的话,那么作为一个信标链验证者,那时你的储存需求会变成小于1G。而这将比网络上传得沸沸扬扬的以太坊因为一些愚蠢的因素将要求1.8TB的储存空间要好得太多太多了。

 

Expected phases.

我们希望Serenity的升级将顺着以下阶段进行:

 

So phase 0 beacon chain proof-of-stake. 

阶段0: PoS 信标链


And beacon chain proof-of-stake is actually kind of the blockchain is not, kind of hold any information, it’s kind of like a dummy chain, so all that you have is you have validators and these validators are executing and they’re running the proof-of-stake algorithm.

从某种角度讲,PoS 信标链实际上不会存储任何信息。它像是一条假链,而在这条链上有的只是一些验证者,这些验证者运行的是 PoS 算法。

 

So this is kind of like halfway between a testnet and the mainnet. It’s not quite a testnet because you would be able to actually stake a real ether and earn real rewards on it. But it’s also not quite a mainnet, because it doesn’t have applications, so if it breaks, people are hopefully not going to cry too badly as they did when the Shanghai DOS attacks made everyone’s ICO go slowly.

它就像是一个介于测试网和主网之间的网络。不能说它是一个测试网,因为你真的可以抵押以太币进去并获得真实的收益。但也不能说它是一个主网,因为这上面一个应用都没有,因此当它崩溃的时候,人们不会像当初以太坊被上海 DOS 攻击时那样痛哭流涕。

 

Phase 1: shards as data chains. 

阶段1:起到数据链作用的分片


So basically the idea here is that this is where the kind of sharding part turns on. Here it’s just a kind of simplified version that doesn’t do sharding of state. It does sharding of data, so you can throw data on the chain, you could try to make just do a state execution engine yourself, but really the simplest thing to use it for is data. So if you want to do decentralized whatever on a blockchain you’ll now have the scalability to do this. But you won’t really have the kind of all of state execution capability to build smart contract applications and all of the really fancy complex stuff.

其实,分片的作用就是,它就是一个简化版的以太坊,不会对状态进行分片,但它会对数据起到分片作用。因此,你可以讲你的数据仍到这条链上,你也可以尝试自己做一个状态执行引擎,但其实,最容易分片的就是数据了。所以,如果你想在一条区块链上做任何去中心化应用,那么此时这条链就具备了相应的扩展性。但你并没有因此具备了在这条链上搭建任何能够实现状态执行功能的智能合约应用的能力,也没有创建其他复杂机制的能力。

 

Phase 2: enable state transitions. 

阶段2: 实现状态转移。


This includes enabling the virtual machine, enabling accounts, contract, ether-ether moving between shards, all of this cool stuff.

包括实现虚拟机、账户、合约,在分片上转移以太币,以及其他很酷的东西。

 

Phase 3 and beyond: iterate, improve, add technology.

阶段三以及之后:不断迭代,加入新技术

 

So excepted features: pure proof-of-stake, faster time to synchronous confirmation (about 8-16 seconds). Now notice that, because of how the fork choice rule and the signing mechanism works in the beacon chain, one confirmation in the beacon chain involves messages from hundreds of validators, so for all probabilistic point of view, it’s actually equivalent to hundreds of confirmations of the Ethereum proof-of-work chain. So under a synchronous model you should be able to treat one block as being closed to final.

我们希望Serenity有这些特征:纯粹的 PoS 共识以及更快的同步确认时间(大概8-16秒完成确认)。请注意,由于信标链上的分叉选择规则和签名机制,在信标链上的一次确认将涉及到来自成百上千验证者的验证信息。因此,从概率学角度来说,这跟 PoW 链上成百上千的确认是一样的。因此,在这种同步模型之下,你可以将一个区块当作已敲定的区块。

 

Economic finality and safety under a synchrony comes after 10 to 20 minutes, and fast virtual machine execution via EWASM and hopefully a thousand times higher scalability. We will see.

10-20分钟之后,同步完成,达到经济确定性和安全性,EWASM使虚拟机的工作速度更快,在理想状态下,或许能达到1000倍的速度。到时候看吧。

 

Post-Serenity innovation, 

Serenity 后期的创新


Improvements in privacy,

增强隐私方面的保护


So there’s already been a lot of work done. For example, in Byzatium we activated the pre-compiles for elliptic curve operation and elliptic curve pairings and Barry White has been doing great work on building layer 2 solutions to preserve privacy of coin transfers, voting, reputation systems, and all of these work could be carried over.

我们对此已做了大量工作。例如,在拜占庭阶段中,我们激活了椭圆曲线运算以及与椭圆曲线匹配的预编译。Barry White 在搭建 Layer-2 方面做得非常好,Layer-2 是用来保护代币交易、投票、信誉系统等涉及的隐私内容。这些工作对以太坊今后的发展都有很大的借鉴意义。

 

Cross-shard transactions. 

跨分片交易。


Semi-private chains. So the idea here is that if you want to build some application where the data is kept private between a few users, you could still dump all the data on the public chain, but you would just dump it in an encrypted form, or you can dump hashes of it then use your zero knowledge proof, so it’s your choice.

半私有链。其观念是,如果你想要搭建某个应用,其中的数据只有少部分用户可以获取,你依旧可以将该应用中的所有数据放至公有链中,但需要通过加密的方式进行,或者通过使用零知识证明来将数据的哈希值放至公链上,选择权在你手上。

 

Proof of Stake improvements. 

对PoS机制做一些改进


There is definitely a place in our heart and at the roadmap’s heart for Casper CBC, when it becomes clear that there is a kind of a version that makes sense from an overhead point of view.

从全局角度来看,当 Casper CBC 存在一个更加合理的版本是,那么在我们心中,以及在整个路线图的中心,一定留有Casper CBC 的位置。

 

Post-Serenity innovation. 

Serenity后期的创新


At some point we have all what we want to and we do have a door open to kind of upgrade everything that STARKs. So using STARKs for signature aggregation, for verifying erasure codes, for data availability checks, maybe eventually for checking correctness of state execution, maybe stronger forms of cross-shard transactions, faster single-confirmations getting the confirmation time down from 8 seconds to even lower.

从某种意义来讲,我们确实想要也计划要将所有的东西都升级到 STARK。例如,将  STARK 用于聚合签名、用语验证纠删码、用语检查数据是否可用、或许最后能用它来检查状态执行是否正确、最后实现更强的跨分片交易形式、更短的单次确认时间(把确认时间从8秒降到更低)。

 

Medium-term goals.

中期目标。

 

Eventually stabilize at least the kind of functionality of layer 1, think about issuance, think about fees, agree more and more over time on kind of what specific guarantees people expect from the protocol and things that people expect as features for the protocols to have for a long time, think about governance.

我们将最终至少稳定第一层的功能,我们将考虑 Serenity 的发布、费用,并随着时间的推移,在人们期望从协议层获得的具体保证和从长远来看协议应具备的属性方面达成越来越多的共识,我们还会考虑治理问题。

 

Now what’s next immediately? What happens before kind of the big launch?

紧接着是什么了呢?在Serenity正式发布之前会发生什么呢?

 

Well, first of all, stabilizing the protocol spec. So for those who have been watching github.com/ethereum/, if -2.0, or sorry if 2.0- backslash dream master specs, beacon chain, md something like that, this spec has been kind of moving fairly quickly, but you know it will stabilize fairly soon. Continue development and testing. There is something like 8 implementations of the Ethereum 2.0 protocol happening now.

嗯,首先,确定协议规范。对于一直关注github.com/ethereum/和2.0规范、信标链等内容的人来说,协议规范的发展是相当迅速的,但我们很快就会将这些规范确定下来。我们将继续开发和测试。现在以太坊2.0协议中,已经有8个实现(implementations)正在开发中了。

 

Cross-client testnets. 

跨客户端测试网。


So I believe Alfred made a statement that he hopes to see a cross-client work like really picking up in Q1 next year. I mean, we’ll see. That would be definitely nice to see a kind of testnet working between two implementations.

Alfred曾表示希望在明年第一季度实现跨客户端的运行,我们到时候见分晓把。看到两个实现(implementations)之间的测试网能够运行将是一件非常高兴的事情。

 

In earnest, we’re gonna be nice to see a testnet working between one implementation. As as a kind of quick historian aside, the ethereum 1.0 development, time between the conception of white paper and launch, 19 months. Part of the reason why it took so long is because we tried to get kind of cross-client compatibility way before the spec even finished, and so we had to agree test, release testnet or wait protocol changes, agree test, release testnet, or wait more protocol changes. And we had about five cycles of this.

老实说,我们将很高兴地见证测试网能够运行。在这里快速回顾一下以太坊1.0的发展历程,从以太坊白皮书提出概念到正式发布,中间隔了19个月。为何需要如此长的时间?一部分原因是我们试图在技术规范完成之前,获得一种实现跨客户端兼容性的方式,因此我们经历了同意测试、发布测试网、等待协议变更、同意新一轮测试、发布新测试网、然后等待更多的协议变更...这样有循环往复了5次。

 

This time around we have the luxury of kind of learning from that lesson, and we don’t really need to kind of focus on cross-client compatibility, until we have something close to a release candidate of the spec. But I think we're actually not that far from a release candidate of the spec at least for kind of limited portions that don’t include a state execution, so we’ll see.

我们已经从中学到了教训,这一次我们不再需要专注于跨客户端兼容性,可以等到接近技术规范定稿发布是再说。但我认为我们实际已经离技术规范的发布不远了,至少不包含状态执行的那部分已经快完成了。我们拭目以待吧。

 

Security audits. 

安全审计。


Who thinks security audits are important? Who here thinks security audits are not important? Who here thinks the world is a literally controlled by Lizardmen? Okay, so more people for the third of the second, that’s good to hear. And once we’re done that launch. Who here thinks that launching is not important? Okay. Who here fix that your favorite political candidate is literally a Lizardman?

在座的有谁认为安全审计很重要?有谁认为不重要?谁认为我们的世界实际上是被蜥蜴人(Lizardmen)所控制?好吧,认同第三个问题的人要比认同第二个问题的人更多,很高兴是这样的。那当我们发布了 Serenity 之后,有人会认为发布并不重要吗?好吧,在座的有谁知道自己最喜欢的政治候选人实际上是个蜥蜴人呢?

 

Okay. So launch, there we go. I mean that’s basically the milestone that we’ve all been waiting for that we’ve been working toward for the last four to five years, and a milestone which is really no longer so far away. Thank you.

之后就是发布阶段啦。这实质上是我们一直翘首以盼的里程碑,也是我们在过去4-5年中一直努力的方向。这个里程碑已经离我们不远了。感谢各位聆听我的演讲!


最后,为大家分享V神在现场的演唱视频 :)


歌词:

B-U-I-D-L

Casper's coming

Serenity

New ways to govern

Radical markets

Are calling to you

Don't ICO

When there's work to do



编辑&翻译:Jhonny, Echo

腾讯视频链接:

https://v.qq.com/x/page/v07911ymk3z.html


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

640?wx_fmt=jpeg
阅读更多

没有更多推荐了,返回首页