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

2024-02-04 01:59

本文主要是介绍以太坊核心研究员:关于以太坊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天之后才能做提款动作 。

这篇关于以太坊核心研究员:关于以太坊2.0信标链验证者 你需要知道这些的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/676073

相关文章

详解MySQL中DISTINCT去重的核心注意事项

《详解MySQL中DISTINCT去重的核心注意事项》为了实现查询不重复的数据,MySQL提供了DISTINCT关键字,它的主要作用就是对数据表中一个或多个字段重复的数据进行过滤,只返回其中的一条数据... 目录DISTINCT 六大注意事项1. 作用范围:所有 SELECT 字段2. NULL 值的特殊处

Python包管理工具核心指令uvx举例详细解析

《Python包管理工具核心指令uvx举例详细解析》:本文主要介绍Python包管理工具核心指令uvx的相关资料,uvx是uv工具链中用于临时运行Python命令行工具的高效执行器,依托Rust实... 目录一、uvx 的定位与核心功能二、uvx 的典型应用场景三、uvx 与传统工具对比四、uvx 的技术实

java中Optional的核心用法和最佳实践

《java中Optional的核心用法和最佳实践》Java8中Optional用于处理可能为null的值,减少空指针异常,:本文主要介绍java中Optional核心用法和最佳实践的相关资料,文中... 目录前言1. 创建 Optional 对象1.1 常规创建方式2. 访问 Optional 中的值2.1

Java Jackson核心注解使用详解

《JavaJackson核心注解使用详解》:本文主要介绍JavaJackson核心注解的使用,​​Jackson核心注解​​用于控制Java对象与JSON之间的序列化、反序列化行为,简化字段映射... 目录前言一、@jsonProperty-指定JSON字段名二、@JsonIgnore-忽略字段三、@Jso

使用easy connect之后,maven无法使用,原来需要配置-Djava.net.preferIPv4Stack=true问题

《使用easyconnect之后,maven无法使用,原来需要配置-Djava.net.preferIPv4Stack=true问题》:本文主要介绍使用easyconnect之后,maven无法... 目录使用easGWowCy connect之后,maven无法使用,原来需要配置-DJava.net.pr

Linux内核参数配置与验证详细指南

《Linux内核参数配置与验证详细指南》在Linux系统运维和性能优化中,内核参数(sysctl)的配置至关重要,本文主要来聊聊如何配置与验证这些Linux内核参数,希望对大家有一定的帮助... 目录1. 引言2. 内核参数的作用3. 如何设置内核参数3.1 临时设置(重启失效)3.2 永久设置(重启仍生效

Python列表去重的4种核心方法与实战指南详解

《Python列表去重的4种核心方法与实战指南详解》在Python开发中,处理列表数据时经常需要去除重复元素,本文将详细介绍4种最实用的列表去重方法,有需要的小伙伴可以根据自己的需要进行选择... 目录方法1:集合(set)去重法(最快速)方法2:顺序遍历法(保持顺序)方法3:副本删除法(原地修改)方法4:

SpringQuartz定时任务核心组件JobDetail与Trigger配置

《SpringQuartz定时任务核心组件JobDetail与Trigger配置》Spring框架与Quartz调度器的集成提供了强大而灵活的定时任务解决方案,本文主要介绍了SpringQuartz定... 目录引言一、Spring Quartz基础架构1.1 核心组件概述1.2 Spring集成优势二、J

opencv图像处理之指纹验证的实现

《opencv图像处理之指纹验证的实现》本文主要介绍了opencv图像处理之指纹验证的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录一、简介二、具体案例实现1. 图像显示函数2. 指纹验证函数3. 主函数4、运行结果三、总结一、

Linux find 命令完全指南及核心用法

《Linuxfind命令完全指南及核心用法》find是Linux系统最强大的文件搜索工具,支持嵌套遍历、条件筛选、执行动作,下面给大家介绍Linuxfind命令完全指南,感兴趣的朋友一起看看吧... 目录一、基础搜索模式1. 按文件名搜索(精确/模糊匹配)2. 排除指定目录/文件二、根据文件类型筛选三、时间