ETH共识升级之路

2024-03-15 13:52
文章标签 升级 共识 eth

本文主要是介绍ETH共识升级之路,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

简介

根据我们之前的介绍,了解到ETH网络的共识方式,已经从 PoW 切换到了 PoS,今天我们就回顾下升级之路,以及升级带来的影响

upgrade

最早的共识机制 PoW

以太坊创建之初采用了类似比特币的工作量证明机制,即矿工通过计算哈希函数的输出值来尝试找到符合特定条件的解,从而创建新的区块并获得相应的奖励。

早期使用PoW的原因 :

  1. 安全性:工作量证明机制被认为是一种安全性较高的共识机制。在PoW中,要攻击网络并篡改交易历史,攻击者需要掌控网络上一定数量的算力,这使得攻击变得非常昂贵和困难。因此,PoW可以提供一定程度的网络安全性。
  2. 可信度和去中心化:PoW确保了区块链网络的去中心化特性,因为任何人都可以参与挖矿,而且没有单一的控制者。这增加了网络的可信度,因为没有单一的实体能够控制整个网络。
  3. 激励机制:PoW为矿工提供了经济激励,他们通过挖矿获得奖励。这种激励机制鼓励了更多的人参与网络维护,增加了网络的安全性和稳定性。
  4. 经过验证的历史记录:PoW确保了区块链中的每个区块都是经过工作量证明的,这意味着每个区块都经过了验证,并且在网络上有广泛的共识。这样可以确保交易的不可逆性和网络的可靠性。

问题:高能耗、低效率和中心化倾向

ETH权益证明升级之路

升级时间描述事件区块/Epoch
部署质押存款合约2020年10月14日 09:22:52部署质押存款合约Block:11,052,984
信标链创世块2020年12月01日 12:00:35 UTC信标链需要 16384 个存储了 32 个质押以太币的帐户Epoch:1
天鹰座升级2021年10月27日 10:56:23 UTC增加对 同步委员会的支持,以及增加怠惰和罚没的惩罚规则Epoch:74,240
箭形冰川升级2021年12月09日 07:55:23 UTC难度炸弹推迟数月Block:13,773,000
灰色冰川升级2022年06月30日 10:54:04 UTC难度炸弹推迟三个月Block:15,050,000
Bellatrix 升级2022年09月06日 11:34:47 UTC第二次信标链升级,为合并做准备Epoch:144,896
巴黎升级(合并)2022年09月15日 06:42:42 UTC结束 PoW,启用 PoSBlock:15,537,394
卡佩拉升级2023年04月12日 22:27:35 UTC实现了质押提款Epoch:194,048,Block:6,209,536
上海升级2023年04月12日 22:27:35 UTC质押提款引入执行层,和卡佩拉升级同时进行Epoch:194,048,Block:6,209,536

信标链

信标链 是 2020 年推出的原始权益证明区块链的名称。 它的创立是为了在以太坊主网上运行权益证明共识逻辑之前确保该逻辑是可靠且可持续的

  1. 它与原有的工作量证明以太坊一起运行。
  2. 信标链是一个由 区块组成的链,但在以太坊上停止工作量证明并启动权益证明,需要指示信标链接受来自执行客户端的交易数据,将它们打包到区块,再将区块组织到一条运行权益证明共识机制的区块链上。与此同时,原有的以太坊客户端停止挖矿、区块传播及旧的共识逻辑,并将这一切转交给信标链。 这一事件称为合并。

合并后的ETH网路

  • 执行层:处理 交易和`执行智能合约``
  • 共识层:处理 权益证明共识

合并后影响

  1. 能源消耗减少了约 99.95%
  2. 为 分片,提高TPS,降低Gas Fee 打下基础
  3. 分裂出一个 EthereumPow(ETHW) 链,继续使用 PoW的共识方式

PoW算力图

这篇关于ETH共识升级之路的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

怎么关闭Ubuntu无人值守升级? Ubuntu禁止自动更新的技巧

《怎么关闭Ubuntu无人值守升级?Ubuntu禁止自动更新的技巧》UbuntuLinux系统禁止自动更新的时候,提示“无人值守升级在关机期间,请不要关闭计算机进程”,该怎么解决这个问题?详细请看... 本教程教你如何处理无人值守的升级,即 Ubuntu linux 的自动系统更新。来源:https://

你的华为手机升级了吗? 鸿蒙NEXT多连推5.0.123版本变化颇多

《你的华为手机升级了吗?鸿蒙NEXT多连推5.0.123版本变化颇多》现在的手机系统更新可不仅仅是修修补补那么简单了,华为手机的鸿蒙系统最近可是动作频频,给用户们带来了不少惊喜... 为了让用户的使用体验变得很好,华为手机不仅发布了一系列给力的新机,还在操作系统方面进行了疯狂的发力。尤其是近期,不仅鸿蒙O

macOS升级后SVN升级

问题 svn: error: The subversion command line tools are no longer provided by Xcode. 解决 sudo chown -R $(whoami) /usr/local/Cellar brew install svn

Golang支持平滑升级的HTTP服务

前段时间用Golang在做一个HTTP的接口,因编译型语言的特性,修改了代码需要重新编译可执行文件,关闭正在运行的老程序,并启动新程序。对于访问量较大的面向用户的产品,关闭、重启的过程中势必会出现无法访问的情况,从而影响用户体验。 使用Golang的系统包开发HTTP服务,是无法支持平滑升级(优雅重启)的,本文将探讨如何解决该问题。 一、平滑升级(优雅重启)的一般思路 一般情况下,要实现平滑

JeecgBoot 升级springboot版本到2.6.0

1. 环境描述 Jeecgboot 3.0,他所依赖的springboot版本为2.3.5Release,将springboot版本升级为2.6.0。过程全纪录,从2开始描述。 2. 修改springboot版本号 <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-pare

欧拉系统 kernel 升级、降级

系统版本  cat  /etc/os-release  NAME="openEuler"VERSION="22.03 (LTS-SP1)"ID="openEuler"VERSION_ID="22.03"PRETTY_NAME="openEuler 22.03 (LTS-SP1)"ANSI_COLOR="0;31" 系统初始 kernel 版本 5.10.0-136.12.0.

Zookeeper集群是如何升级到新版本的

方案1:复用老数据方案 这是经过实践的升级方案,该方案是复用旧版本的数据,zk集群拓扑,配置文件都不变,只是启动的程序为最新的版本。 参考文章: Zookeeper集群是如何升级到新版本的 方案2:重新建立数据方案 该方案的思路是:先停掉一台follower的机器上的服务,然后加入一个新版本的zk(zk的数据目录是空的),然后启动新zk,之后新zk会把旧集群中的数据同步过来。之后再操作另

mysql数据库8.0小版本原地升级

mysql数据库8.0小版本原地升级 准备工作升级工作停库使用新版本软件启动数据库更新环境变量重启数据库 升级日志 OS release: CentOS 7.9升级前DB version: MySQL 8.0.30数据库升级安装包:mysql-8.0.36-linux-glibc2.12-x86_64.tar.xzMySQL Shell安装包:mysql-shell-8.0.36

面试官:synchronized的锁升级过程是怎样的?

大家好,我是大明哥,一个专注「死磕 Java」系列创作的硬核程序员。 回答 在 JDK 1.6之前,synchronized 是一个重量级、效率比较低下的锁,但是在JDK 1.6后,JVM 为了提高锁的获取与释放效,,对 synchronized 进行了优化,引入了偏向锁和轻量级锁,至此,锁的状态有四种,级别由低到高依次为:无锁、偏向锁、轻量级锁、重量级锁。 锁升级就是无锁 —>

自动升级系统OAUS续

一.缘起       自从 自动升级系统的设计与实现(源码) 发布以后,收到了很多使用者的反馈,其中最多的要求就是希望OAUS服务端增加自动检测文件变更的功能,这样每次部署版本升级时,可以节省很多时间,而且可以避免手动修改带来的错误。   现在,我就简单介绍一下最新版本的OAUS中关于这个功能的实现。在上一个版本中,我们是这样操作的:           每次有版本更新时,我们需