文章目录

  • 前言
  • 什么是共识?
  • 什么是共识机制?
  • 共识机制的核心目标
  • 共识机制的类型
    • PoW(工作量证明)协议:(2015-2022)
    • PoS(权益证明)协议:(PoS,2022 年至今)
    • PoW与Pos差异
    • 权威证明 (PoA)
      • 与 PoW/PoS 的核心差异
  • 总结

前言

我们在之前的章节协议和节点与矿工中简单提及过共识机制。

以太坊的共识机制是网络中节点达成 “账本一致性” 的核心规则,决定了区块如何生成、交易如何验证以及全网如何同步状态。其发展经历了从工作量证明(PoW) 到权益证明(PoS) 的重大变革(2022 年 “合并” 完成),两种机制在安全性、能耗、效率等维度差异显著。


什么是共识?

我们所说的共识,是指达成了广泛的一致。 比如,一群人去看电影, 如果他们对于提议“看某部电影”没有任何异议,那么就可以说共识达成了。 如果存在异议,那么他们就必须通过某种方法决定看哪一部电影。 在极端情况下,这群人就会分开。

对于以太坊区块链来说,达成共识的过程是标准化的,达成共识意味着全网络中至少 66% 的节点就网络的全局状态达成一致。

什么是共识机制?

共识机制是一整套由协议、激励和想法构成的体系,使得整个网络的节点能够就区块链状态达成一致。

以太坊采用基于权益证明的共识机制,其加密经济的安全性来自于对质押人的锁定资本实施的一系列奖励和罚没措施。 这种激励体系鼓励各个质押人诚信运行验证者节点,并惩罚那些有不良行为的质押人,让攻击网络的行为付出极其高昂的代价。

还有一个协议,用于规范如何选择诚实的验证者,让它们提议或验证区块、处理交易并投票支持其链头部的视图。 极少数情况下,如果链头部附近的同一位置存在多个区块,就会利用一个分叉选择机制来选择区块组成“最重的”链。区块权重根据为相应区块投票的验证者数量进行计算,并由验证者质押的以太币余额进行加权。

这些部分共同组成了共识机制。

共识机制的核心目标

无论 PoW 还是 PoS,共识机制的核心是解决 “去中心化环境下的信任问题”,需同时满足三个关键目标:

  • 一致性(Consistency):全网节点最终存储相同的账本数据;
  • 活性(Liveness):网络能持续生成新块,不陷入停滞;
  • 抗攻击(Security):抵御恶意节点(如 51% 攻击、双花攻击),确保账本不可篡改。

共识机制的类型

PoW(工作量证明)协议:(2015-2022)

以太坊最初采用与比特币类似的 PoW 机制,通过 “算力竞争” 验证交易和生成区块,是网络早期去中心化和安全性的基础。

  1. 核心原理:算力即权力
    中本聪共识采用工作量证明,一度允许去中心化的以太坊网络对帐户余额和交易顺序等达成共识(即所有节点都同意)。 这种机制防止用户“重复支付”他们的货币,同时确保极难攻击或操作以太坊区块链。 这些安全特性现在由权益证明提供,后者采用称为 Gasper 的共识机制。

  2. 优缺点:算力驱动的双刃剑

  • 优点:
    • 去中心化门槛低:任何人只需购买矿机即可参与,初期节点分布广泛;
    • 安全性经过长期验证:比特币、以太坊 PoW 均未被成功实施 51% 攻击(仅小众币种发生过)。
  • 缺点:
    • 能耗极高:2022 年合并前,以太坊年耗电量≈整个瑞士(约 110 TWh),与 “绿色区块链” 目标相悖;
    • 效率低下:出块时间不稳定(10-20 秒),TPS 仅约 15,无法支撑大规模应用;
    • 算力集中:矿机(如 ASIC)和电力资源向专业矿场集中,去中心化程度下降。

PoS(权益证明)协议:(PoS,2022 年至今)

2022 年 9 月 “合并”(The Merge)后,以太坊彻底废弃 PoW,转为 PoS 机制,核心是 “用 ETH 质押量替代算力”,通过经济激励确保验证者诚实参与共识。

  1. 核心架构:信标链与执行层协同
    PoS 以太坊由共识层(信标链,Beacon Chain) 和执行层(原 PoW 链) 组成,通过Engine API交互:
  • 信标链:管理验证者、共识投票、区块确认,是 PoS 的核心协调层;
  • 执行层:处理交易、运行 EVM(以太坊虚拟机)、维护账户状态,与信标链同步区块数据。
  1. 验证者:PoS 的核心参与者
    成为验证者需满足两个条件:
  • 质押 32 ETH:通过智能合约存入共识层,作为 “诚实参与” 的抵押品;
  • 运行节点:部署 “共识层客户端”(如 Lighthouse、Prysm)和 “执行层客户端”(如 Geth、Besu),保持 99.9% 在线率。
    验证者的核心职责:
  • 提议区块:被随机选中时,从执行层交易池选择交易,生成候选区块;
  • 共识投票(Attestation):对其他验证者提议的区块进行投票,确认其合法性。
  1. 区块生成与确认流程(PoS 核心)
    PoS 通过 “时间槽(Slot)” 和 “周期(Epoch)” 管理共识节奏,核心流程如下:
  • 时间单位定义:
    • 1 个 Slot(槽)= 12 秒(理论出块时间);
    • 1 个 Epoch(周期)= 32 个 Slot = 6.4 分钟(验证者状态更新的基本单位)。
  • 区块提议:
    信标链通过 “RANDAO 随机数” 在每个 Slot 中随机选择 1 名验证者作为 “区块提议者”。提议者从执行层获取交易,生成包含 “执行结果(状态根、Gas 消耗)” 的区块,广播至全网。
  • 共识投票:
    每个 Slot 中,约 128 名验证者组成 “委员会”,对提议的区块进行投票(“支持” 或 “反对”)。投票需满足两个条件:
    • 区块在时间上合法(未超时);
    • 区块执行结果正确(状态根与执行层一致)。
  • 区块确认:
    当某区块获得超 2/3 验证者的投票(“超级多数”),即被永久确认(“最终确定性”),加入区块链。未被确认的区块(如提议者离线)会被跳过,进入下一个 Slot。
  1. 经济激励:奖励与惩罚机制
    PoS 通过 “利益绑定” 确保验证者诚实,核心是 “奖励合规行为,惩罚恶意行为”:
  • 奖励:
    • 出块奖励:成功提议区块的验证者获得约 2 ETH / 块(含区块内交易的 “优先费”);
    • 投票奖励:参与共识投票的验证者按投票次数和有效性获得少量 ETH(约 0.01-0.1 ETH/epoch)。
  • 惩罚(Slashing):
    • 轻微违规:节点离线超过 4 个 Epoch(约 25.6 分钟),扣除少量奖励(约 0.01 ETH),临时禁止参与共识;
    • 严重违规:
    • 双签区块(同一 Slot 提议两个不同区块);
    • 投票支持无效区块(如状态根错误);
      惩罚:罚没部分或全部质押 ETH(最高 32 ETH),永久禁止成为验证者,且质押资金需锁定 90 天才能解锁。

优缺点:权益驱动的革新

  • 优点:
    • 能耗骤降:较 PoW 降低 99.9% 以上(仅需维持节点运行,无需矿机算力);
    • 效率提升:出块时间稳定(12 秒 / 块),支持通过 Layer 2(如 Rollup)扩容至数万 TPS;
    • 去中心化门槛优化:无需专业矿机,普通服务器即可参与,验证者分布更广泛(2025 年超 10 万验证者);
    • 抗攻击成本更高:51% 攻击需控制超 1600 万 ETH(按 2025 年价格约 240 亿美元),远超 PoW 时期的算力成本。
  • 缺点:
    • 质押门槛:32 ETH(约 4.5 万美元)对普通用户较高(可通过 “联合质押” 降低门槛);
    • 客户端多样性依赖:需避免单一客户端占比过高(如某客户端占比超 70% 可能引发全网风险);
    • 长期锁定风险:质押的 ETH 需等待 “退出队列”(约 27 天)才能解锁,流动性受限。

PoW与Pos差异

维度PoW(合并前)PoS(合并后)
核心资源算力(显卡 / ASIC 矿机)ETH 质押量(32 ETH / 验证者)
出块时间不稳定(10-20 秒)稳定(12 秒 / 块)
安全性基础算力分散(51% 攻击需控制超 50% 算力)权益分散(51% 攻击需控制超 50% 质押 ETH)
能耗极高(年耗电≈瑞士)极低(仅节点运行能耗)
参与门槛高(需专业矿机、电力资源)中(32 ETH + 基础服务器,支持联合质押)
奖励机制出块奖励(5 ETH / 块,逐步减半)出块奖励 + 投票奖励 + 优先费分成
最终确定性弱(需等待 6 个区块确认,约 10 分钟)强(超 2/3 投票即确认,约 1-2 个 Epoch)

联盟链共识协议:如 Hyperledger Fabric 的 PBFT(实用拜占庭容错),规定节点通过 “预准备 - 准备 - 提交” 三轮投票达成共识,适合节点数量少、可信任的联盟场景,延迟低(毫秒级)。

权威证明 (PoA)

权威证明 (PoA) 是一种基于信誉的共识算法,它是权益证明的一个修改版本。 主要应用于私有链、测试网以及本地开发网络。 权威证明是一种基于信誉的共识算法,它与权益证明中基于质押的机制不同,要求信任一组经授权的签名者来生成区块。因为它不像工作量证明那样需要高质量的资源,还通过让一小部分节点存储区块链数据并生成区块,克服了权益证明存在的可扩展性问题。

它通过预先选定的验证者(通常是可信实体或机构)来生成和验证区块

  1. Clique 算法(官方主流实现)
  • 核心特性:
    • 动态验证者集:支持通过投票添加 / 移除验证者,验证者列表每 1024 个区块(Checkpoint)更新一次;
    • 容错机制:可容忍至多 50% 的验证者离线或作恶,确保网络活性;
    • 低延迟:出块时间可配置(如 5 秒 / 块),适合高频交易场景。
  • 应用场景:
    • 测试网络:如 Kovan 测试网(已迁移至 PoS)、Rinkeby 测试网(已弃用);
    • 私有链:企业内部供应链管理、金融结算系统等需快速确认的场景。
  1. 私有链与联盟链
  • 企业级需求:
    • 数据隐私:仅限授权节点参与,敏感数据(如医疗记录、金融交易)不上链公开;
    • 高效协作:验证者身份已知,可快速达成共识,适合跨组织协作(如供应链溯源)。
  • 案例:
    • 微软 Azure 区块链服务:支持基于 PoA 的私有链部署,企业可自定义 验证者集;
    • 腾讯云私有链:通过 Clique 算法实现低延迟交易确认,满足金融级业务需求。

与 PoW/PoS 的核心差异

维度PoWPoSPoA
共识基础算力竞争质押权益身份信任
去中心化高(依赖矿机分布)中(依赖质押分散度)低(依赖验证者数量)
能耗极高极低极低
出块速度不稳定(10-20 秒)稳定(12 秒 / 块)极快(5-15 秒 / 块)
抗攻击成本高(需控制 50% 算力)极高(需控制 50% 质押)低(需控制多数验证者)

总结

以太坊初期选择 PoW 是技术可行性与去中心化目标的权衡:

  • 短期成功:PoW 帮助以太坊在 2015-2022 年间建立了全球最大的去中心化应用生态,支持 DeFi、NFT 等创新场景的早期探索。
  • 长期局限:高能耗和低扩展性迫使以太坊转向 PoS,但 PoW 的技术遗产(如 Ethash 的内存限制设计)仍为后续共识机制提供了重要参考。

理解 PoW 在以太坊中的历史地位,是把握其从 “数字货币” 向 “全球计算机” 演进的关键。正如 Vitalik Buterin 所言:“PoW 是以太坊的童年,而 PoS 将是它的成年”。

PoA 在以太坊生态中是效率与中心化的权衡,其价值体现在对速度、可控性和低能耗的极致追求。对于企业级应用(如跨境支付、供应链溯源)和开发者测试环境,PoA 是理想选择;但对于公共链或需高度去中心化的场景,PoS 仍是更优解。理解 PoA 的技术边界,有助于在不同场景中做出合理的共识机制选型。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/94519.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/94519.shtml
英文地址,请注明出处:http://en.pswp.cn/web/94519.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java基础(十五)计算机网络

网络模型概述 为了使得多种设备能通过网络相互通信,并解决各种不同设备在网络互联中的兼容性问题,国际标准化组织(ISO)制定了开放式系统互联通信参考模型(OSI模型)。与此同时,TCP/IP模型作为实际…

idea将服务封装为一个jar包

你使用的是 IntelliJ IDEA 2018,这个版本虽然不是最新的,但完全支持通过 图形化界面 打 JAR 包(无需命令行),非常适合你在公司内部将 Snowflake 模块打包成通用组件。下面我将 手把手、一步一步、图文流程式地教你&…

ZYNQ [Petalinux的运行]

一、下载ubuntu 下载地址很多,这里提供了一个:http://mirrors.aliyun.com/ubuntu-releases/14.04/ 推荐开始浏览器下载之后复制下载链接使用迅雷下载。 二、虚拟机安装Ubuntu vmware中安装Ubutun–这部分不展示 安装ssh sudo apt install openssh-s…

excel 破解工作表密码

破解Excel工作表密码可通过易用宝工具、VBA脚本或修改文件格式实现,具体方法需根据文件类型和密码保护类型选择。 ‌使用易用宝工具(推荐)‌ 适用于Excel 2007及以上版本,操作简便且无需编程基础: 下载安装Excel易用…

Deepseek + RAGFlow 搭建本地知识库问答系统

Deepseek RAGFlow 搭建本地知识库问答系统原因为什么要本地部署RAG模型和微调模型区别本地部署流程1. 下载 ollama ,通过ollama把Deepseek模型下载到本地运行。2. 下载RAGFlow 源代码和 Docker ,通过Docker部署RAGFlow。3. 在RAGFlow中构建个人知识库并…

elementui附件上传自定义文件列表,实现传完即可预览、下载、删除,二次封装el-upload

背景当前 elementui 的文件上传组件在上传完文件之后只支持删除,用户希望可以看到附件信息,还可以预览自己刚刚上传但未提交的文件,还希望可以下载,因为公司的下载功能当前是通过 OnlyOffice 实现了文件格式转换,所以我…

linux的conda配置与应用阶段的简单指令备注

1.新建某虚拟环境 conda create -n 虚拟环境名 pythonPython版本号 (-y)2.退出当前虚拟环境 conda deactivate3.查看当前conda环境下所有的虚拟环境 conda info --envs4.查看conda版本和位置 conda --versionwhich conda5.激活某个conda虚拟环境 conda activate 虚拟环境名

虚拟化技术 ——KVM

一、KVM 技术简介 KVM(Kernel-based Virtual Machine,基于内核的虚拟机)是 Linux 内核原生支持的全虚拟化解决方案,依托 CPU 的硬件虚拟化技术(Intel VT-x/AMD-V)实现高效的虚拟机运行。它将 Linux 内核转…

线程间Bug检测工具Canary

Canary1.Introduction2.Approach2.1.数据依赖分析2.2.线程间依赖分析3.Bug检测4.Evaluation参考文献1.Introduction 主要做跨线程value-flow bug检查,下面代码中两个函数中存在指向关系:1. x→o1x \rightarrow o_1x→o1​, b→o2b \rightarrow o_2b→o2…

AEB 强制来临,东软睿驰Next-Cube-Lite有望成为汽车安全普惠“破局器”

AEB 强制时代正在悄然谱写“普惠安全”的行业底色。日前,备受关注的强制性国家标准《轻型汽车自动紧急制动系统技术要求及试验方法》(以下简称“新国标”)意见征求阶段已经结束。该标准将替代现行国标GB/T 39901-2021,计划于2028年…

css的white-space: pre

用户从别的地方复制的配置文件,粘贴到输入框内,需要保留原始格式发送给后端。核心步骤:### 1. 格式保持机制 - white-space: pre :这是最关键的CSS属性,确保所有空格、制表符、换行符都被保留 - wrap"off" &…

【AI解读源码系列】ant design mobile——Space间距

前言 笔者目前业务主要围绕ant design mobile组件库来交付H5前端工作。 故此出此专栏来解读每一个组件是如何实现的。 本文基于AI来解读Space组件。 文档链接: https://mobile.ant.design/zh/components/space 源码: https://github.com/ant-design/ant-…

《用餐》,午餐食堂即景小诗分享(手机/小视频/光盘/养生)

大妈食堂碎碎念,怪罪手机延工期。 笔记模板由python脚本于2025-08-21 19:34:46创建,本篇笔记适合喜欢友善生活和诗的coder翻阅。 学习的细节是欢悦的历程 博客的核心价值:在于输出思考与经验,而不仅仅是知识的简单复述。 Python官…

高通平台WIFI学习-- 基于WCN6750 Tri-Band 2x2 MIMO 802.11ax的讲解

一 前言: 官方资料显示WLAN支持如下的Key features ■ Compliant with IEEE 802.11a/b/g/n/ac/ax ■ Supports 2x2 multi-user multiple-input multiple-output (MU-MIMO) ■ Up to 2.9 Gbps data rate (2x2 160 MHz) ■ Tri-band 2.4 GHz/5 GHz/6 GHz support ■ 20 MHz…

javaweb开发笔记——XML_Tomcat10_HTTP

第四章 XML_Tomcat10_HTTP 一 XML XML是EXtensible Markup Language的缩写,翻译过来就是可扩展标记语言。所以很明显,XML和HTML一样都是标记语言,也就是说它们的基本语法都是标签。 可扩展 三个字表面上的意思是XML允许自定义格式。但这不代…

Python从入门到自动化运维

文章目录IPO编程方式、print、input函数print() -- 输出信息到屏幕input() -- 读取用户的输入基本数据类型int、float、bool、str常用 str 操作方法格式化字符串的三种方式数据验证方法字符串拼接字符串去重数据类型转换函数容器类型列表(list):可变、可重复、有序元…

【数据可视化-98】2025年上半年地方财政收入Top 20城市可视化分析:Python + Pyecharts打造炫酷暗黑主题大屏

🧑 博主简介:曾任某智慧城市类企业算法总监,目前在美国市场的物流公司从事高级算法工程师一职,深耕人工智能领域,精通python数据挖掘、可视化、机器学习等,发表过AI相关的专利并多次在AI类比赛中获奖。CSDN…

【基础-单选】向服务器提交表单数据,以下哪种请求方式比较合适

向服务器提交表单数据,以下哪种请求方式比较合适A.RequestMethod.GET B.RequestMethod.PUT C.RequestMethod.POST D.RequestMethod.DELETE 解释如下: 在HarmonyOS应用开发中,向服务器提交表单数据,C. RequestMethod.POST 是比较合…

论文阅读:Code as Policies: Language Model Programs for Embodied Control

地址:Code as Policies: Language Model Programs for Embodied Control 摘要 针对代码补全任务训练的大型语言模型(LLMs)已被证实能够从文档字符串(docstrings)中合成简单的 Python 程序。研究发现,这些…

Vue 3 customRef 完全指南:自定义响应式引用的终极教程

📖 概述 customRef() 是 Vue 3 中用于创建自定义响应式引用的组合式 API。它允许开发者完全控制响应式数据的读取和写入行为,为复杂的响应式逻辑提供了强大的灵活性。 🎯 基本概念 什么是 customRef? customRef() 是一个工厂函数…