以太坊核心研究员:关于以太坊2.0信标链验证者 你需要知道这些

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,也欢迎加入,谢谢大家!