2019年6月29日,由CSDN、灵钛科技主办,区块链大本营、Unitimes、ETHPLANET、以太坊爱好者社区、火星财经协办的“2019第二届以太坊技术及应用大会”在北京·长城饭店隆重举行。

本次大会围绕以太坊生态全景、以太坊未来发展、以太坊开发实战、优质项目案例等诸多方面展开,邀请以太坊创始人及核心技术开发者、海内外知名项目负责人、行业领军人物及以太坊生态精英专家齐聚于此,共同助力中国以太坊技术深度交流和社区发展。

作为本届大会的重要嘉宾之一,以太坊核心研究员Hsiao-Wei Wang在上午的会议中分享了题为《Ethereum 2.0 and Beacon Chain Validator》的主题演讲。

在演讲中,以太坊核心研究员Hsiao-Wei Wang希望新的一年,可以有稳定的版本去做stable testne;关于开发端的各自研究未来可以形成交互;构建新签章机制的标准化和audit可以顺利并成功。

以下为太坊核心研究员Hsiao-Wei Wang的演讲实录:


大家好!听了V神的精彩演讲后,我们把时间转移到近期的Beacon和以太坊2.0上。如今大家对以太坊领域还存在很多疑问,包括到底什么是以太坊领域?Beacon又是什么?成为Beacon的验证者需要做什么?此外大家还比较关心在Beacon,其机制与原本有何不同?在Beacon上的后续计划是如何进行的……我希望今天的分享能够尽可能涵盖这些问题并给予解答。

首先我先回答下“为什么以太坊 2.0需要信标链Beacon Chain”。以太坊有三个阶段,从开始的信标链,到上层的datachain分片链,之后还会增加更高级的功能,例如CBC在其中。

今天我的演讲集中在Beacon Chain上,它有几个主要的功能。例如第一,它取代原本早期的设计,现在使用Beacon Chain核心链,会选择使用Eth1指称目前的门类,抵押金会被转到Beacon Chain,因此Beacon Chain会作为整个系统中互动的核心。

我们要如何透过协议激励验证者乖乖做事,不要做恶,从而得到持续性稳定发展。首先要有奖励金在其中:proposer有点像Eth1上的maner,更高投票以及更高奖励金,将上面的投票称为attestations,是验证者的证明,过程中必须要对attestations签名 ,代表恨得验证过并负责。

其次,作为Whistleblower去举报恶意验证者,举报者不一定是proposer本人,但如果纳入更多Slashing Operation,就能够获得更高奖励。比如某个proposer出块时,他出了两个似乎矛盾的块,从他的签名就可以反推是恶意验证者,这样的恶意验证者余额有一定比例转移到举报者;另外我们为了鼓励投票给出奖励金,必须要投给正确的;还有一个是Crosslink Reward,通过投票代表是真正的券。

如何成为信标链的验证者?首先在Eth1这条主链部署一个特殊合约 deposit contract,同时合约接受使用者付出的抵押金。这个合约每收到一笔有效的deposit,放出event log。他们有一个重要工作是随时追踪Eth1上与这个合约有关的资料,可能会用技术追踪event log。

一旦拥有了所有的资料,就会有清单记录,把不同的验证者分在不同的群组中。当然我们也有一些机制预防计数的产生如何不被操纵 。每一个Committees都有一个指定的券,过程需要验证,每个bug会有部分的committees去验证。

当然,并不是马上加入到验证者中就被当作是有效的活跃的的验证者,还有一部分需要在链上做验证。在Eth1上付押金后,会确认它的余额是否足够并同时放在注列中,当条件满足才会放出来。目前设定在25分钟后,当时间到后才正式成为有效的验证者。

接下来聊聊验证者在Phase上的职责有哪些?关于这个方向,大致可以分为两类:一类是被选择poser,proposer的选择有多个committe,其中一个被选出。想给大家一个基本概念,beacon block是什么?它和Eht1有些不同。上面所有的交易中,类似的交易内容可以称为operations,非常多,负责执行不同的操作内容。

proposer的位置,里面有两个比较特别的,要用自己的key,所以这个结果的前一步是什么,只有自己知道。可以想象,如果只控制一个dators,就可以做到控制它是否有randao的能力。如果需要有操控网络上随机数产生的话,所需占领的要有一定数量级才能控制。

刚才提到很多不同的奖励,相对我们用了一些处罚方式使得使用者作恶会受到报应。当你的票投在大多数中,你会受到奖励;反之如果你没有加入其中的话,它会稍微扣一点点Balanced;如果你是被选中一个comeet,如果不佳或没被收到,这种情况下有一个「不活跃惩罚」机制,小小的金额会从你中被扣除;还有Casper FFG penalties刷券部分,如果你没在之中会被小小的处罚。

刚才讲的这三个情况,是你可能有意识的想要做好事,但是情况不佳,使得你没办法做出正确的选择或是无能为力。后面这个slasHing的状况非常严格,有证据表示你要做坏事,所以处罚比较严酷一点,比如proposer建立两个的时候,有可能被举报。

最后一个是Proof of Custody Game,那么我们在刷券上如何让这些证明真的有资料,这些一旦做出之后,会要求它做回应,这样的设计叫proof of custody game,如果没有一定时间完成挑战,就会被惩罚。

刚才看到处罚机制,Validator Churn,这是指新加入的和的数量变化,Validator被分散到不同的刷券中,如果刷券中有大量Validator退出或加入,有可能造成不太稳定。为了减少这个影响,我们设计了两个队列,根据目前所有Validator在这之中的数量,数量尽可能一致,有多少Validator就有多少个Beaconchain系统,以达到对稳定性的要求。

讲到退场机制,如果Validator自愿退出,要怎么做?需要在Send a Voluntary Exit operation,之后把自己的余额提出。到了Phase2的时候,才会让eaconchain的余额变得稍微有意义,做更多应用。除了刚才的情况还有两种,是余额不足或做事被处罚而离开,处罚会比较严格,必须要在36天之后才能做提款动作 。

我们在今年和明年初有什么可以期待的事情?第一,希望大家有稳定的版本去做stable testne;第二,目前关于开发端的各自研究,希望接下来可以形成交互。第三,我们也在构建新签章机制的标准化和audit另外,如果一切顺利,我们会在期间部署抵押合约并开放staking;同时phase也正在进行之中。如果大家关注GitHub,也欢迎加入,谢谢大家!