当前位置: 首页 > article >正文

平行链协议深度拆解 | 一个区块如何穿越六道关卡获得最终确认

原文作者PaperMoon 团队一个平行链区块要想获得 Polkadot 网络的最终安全背书需要经历候选、附议、可背书、已背书、待可用、已包含六个状态——任何一步失败都会被丢弃。这套机制的名字听起来很学术但它解决的问题极其现实几百个验证人怎么在不运行所有平行链全节点的情况下保证每一条链上的每一个区块都是合法的答案藏在一个关键的设计哲学里Polkadot 不验证状态只验证状态转换。理解了这一点你就理解了整套协议为什么可以做到少数人验证所有人安全。一、三类参与者谁来做什么验证人Validator验证人负责验证区块、维护网络安全的节点需要质押 DOT 作为抵押。验证人的核心职责是检查**平行链**Parachain连接到中继链的独立区块链共享中继链的安全性提交的区块候选的有效性证明Proof-of-Validity, PoV并确保 PoV 在指定时间内保持可用。他们持有的保证金可在发现不当行为时被罚没。在平行链协议中部分验证人会被分配为平行链验证人para-validator专门负责特定平行链的验证工作。收集人Collator收集人Collator平行链节点负责收集用户交易、打包区块候选然后提交给中继链验证人审核。收集人需要熟悉特定平行链的交易格式和出块规则并拥有该链的完整状态访问权限。他们构建出 PoV交由验证人进行验证。渔夫Fishermen——已废弃渔夫最初被设想为平行链的全节点角色用于发现作弊行为但该概念已不再计划正式实现。当前协议中的二次背书检查者secondary backing checkers承担了类似功能。二、包含管道从候选到包含的六步跃迁包含管道Inclusion Pipeline是平行链区块从创建到被纳入中继链尚未最终确认的路径。一个区块在这条管道中经历六个状态序号状态含义1候选Candidate收集人将区块及其 PoV 提交给平行链验证人2附议Seconded平行链验证人 V1 将区块转发给其他平行链验证人3可背书Backable超过半数平行链验证人签署了有效性声明4已背书Backed区块被中继链出块者记录在中继链的某个分叉上5待可用Pending Availability区块已背书但尚未被认定为可用6已包含Included区块已背书且被认定为可用正式成为平行链的一部分关键时间参数在标准流程下背书和包含需要 12 秒完成——背书占一个中继链区块6 秒包含占另一个中继链区块额外 6 秒。引入**异步背书Async Backing**后背书和包含可以在一个中继链区块内完成。异步背书Async BackingPolkadot 2.0 引入的出块机制改进允许平行链在上一个区块还未被中继链最终确认时就开始打包下一个区块形成流水线大幅提升出块效率。平行链阶段平行链验证人由验证人分配程序Validator Assignment Routine指定到各平行链。他们通过收集人分发子系统Collator Distribution Subsystem与收集人建立连接接收候选区块和 PoV。验证过程需要三样东西1. 区块候选状态转换列表2. 区块修改的平行链数据库中的值3. Merkle 树中未受影响节点的哈希收集超过半数签名有效性声明的候选被视为可背书其背书就是这组签名声明的集合。这里有一个关键设计理念Polkadot 保证的是有效的状态转换而不是有效的状态。验证人不检查平行链状态中的每一个值只检查被修改的值。这是整个协议能够扩展到数百条平行链的根本原因。中继链提交阶段可背书区块的收据被添加到中继链的交易队列中。**中继链**Relay ChainPolkadot 的核心链负责协调各平行链之间的共识与通信的出块者每个区块最多可以为每条平行链记录 1 个可背书候选。一旦被记录在中继链的某个分叉上候选状态变为已背书进入待可用状态。它只有在被证明可用之后才能被视为平行链的一部分。数据可用性阶段此阶段中验证人通过可用性分发子系统Availability Distribution Subsystem确保候选数据的可用性。他们在网络中传播擦除编码的数据片段。**至少 ⅓ 1 的验证人必须报告拥有自己的编码片段**候选才会被视为可用。出块者的可用性检查确保中继链只包含已分发擦除编码片段的区块但不保证其有效性——有效性由后续的审批流程负责。数据存储细节重建平行链区块及其 PoV 所需的擦除编码片段存储在中继链验证人的本地硬盘上保持可用时间最长 **24 小时**。这些数据既不存储在中继链区块中也不存储在链上状态中——只有这些片段的 Merkle 根被嵌入候选收据并存储在中继链区块中。包含失败的四种情况一个候选可能在以下任何环节失败1. 收集人无法将区块传播给任何指定的验证人2. 候选未获得候选背书子系统中验证人的背书3. 中继链出块者未选择该候选4. 候选的 PoV 在超时时间内未被认定为可用区块被从中继链丢弃三、审批流程随机抽检的二次防线为什么需要审批区块被包含后状态变为待审批pending approval。此时区块已暂时成为平行链的一部分但仍需进一步确认。这里的设计逻辑很精妙平行链验证人是从整个验证人集合中抽样的而协议假设最坏情况下有 ⅓ 的验证人是不诚实的。如果恰好被分配的验证人中恶意节点占多数仅靠背书阶段的检查是不够的。审批流程通过事后检测机制弥补这一风险而不是增加平行链验证人数量那会降低系统吞吐量。**重要**一个平行链区块在可用之后可以接受子区块。如果该区块在审批流程中失败它和所有后代区块都将被作废。但只有背书该区块的验证人会被**惩罚slash**——惩罚是指当验证人出现恶意行为或严重失误时其**质押**锁定在网络中以参与共识的代币会被没收一部分——而背书后代区块的验证人不受影响。审批的五个步骤1. 被包含管道纳入的区块在二次检查窗口secondary checking window期间处于待审批状态2. 在此窗口内验证人二次检查者通过 VRF 彩票机制随机自选对每个平行链区块执行二次检查3. 二次检查者获取带有 PoV 的平行链区块通过擦除编码重建 PoV重新执行验证函数4. 二次检查者传播检查结果。如果出现矛盾结果会触发升级——所有验证人必须检查该区块输的一方将被罚没5. 流程结束后区块要么被批准要么被拒绝两类密钥审批消息使用专门的审批密钥签署这些密钥是验证人会话密钥的一部分- **审批分配密钥**sr25519 密钥仅用于分配标准的 VRF 计算- **审批投票密钥**ed25519 密钥仅用于签署候选区块的有效性投票链选择与最终确认当一个区块内的所有候选收据都通过了足够的二次检查后验证人可以在 **GRANDPA**Polkadot 的**最终确认**机制——区块被永久写入链上、不可逆转的状态中为该区块投票。获得超过 **⅔ 的正面投票**后区块在链上被最终确认。链选择需要在所有节点间保持一致并能抵御最大比例的恶意节点。Polkadot 主机使用区块生产系统BABE和最终确认工具GRANDPA协同工作。四、候选收据常量大小的区块摘要PoV 的大小通常在 **1 MB 到 10 MB** 之间不可能直接放入中继链区块。为了让 Polkadot 扩展到数百条平行链PoV 需要在中继链上用更小的东西来表示——这就是候选收据。平行链验证人通过签署以下信息构建收据1. 平行链 ID2. 收集人的 ID 和签名3. 父区块候选收据的哈希4. 区块擦除编码片段的 Merkle 根5. 所有出站消息的 Merkle 根6. 区块哈希7. 区块执行前的平行链状态根8. 区块执行后的平行链状态根这些信息的大小是常量级的而平行链的实际 PoV 区块是变长的。任何人只要获得完整的 PoV 区块就可以通过这些信息验证其中包含的状态转换。五、擦除码⅓ 1 的可用性保障工作原理平行链验证人在将候选收据发送到中继链交易队列之前必须先对平行链区块构建擦除编码。擦除编码的原理是将一条消息这里是平行链区块和 PoV分割成一组更小的消息只需获得其中一部分就能重建原始消息。在 Polkadot 中**小消息的总数等于验证人总数重建所需的最小比例为 ⅓**。具体流程平行链验证人创建擦除编码片段将它们构建为 Merkle 树然后将每个片段连同候选收据发送给中继链上对应的验证人。Reed-Solomon 编码Polkadot 使用的擦除码类型是 **Reed-Solomon 编码**——一种在区块链之外已经久经考验的技术。最典型的例子是光盘CD行业CD 使用 Reed-Solomon 编码来纠正因盘面灰尘或划痕造成的数据缺失。在 Polkadot 中擦除码的作用是让平行链状态对整个系统保持可用而不需要所有验证人都跟踪所有平行链。验证人只需各自保存一小块数据在需要时只要 **⅓ 1** 的验证人能提供自己的片段就可以重建完整数据。**⅓ 1 的阈值直接对应 Polkadot 对拜占庭节点的安全假设**——即假设最多 ⅓ 的验证人可能是恶意的只要超过 ⅓ 的诚实验证人能响应数据就可以被恢复。六、争议机制最后的安全兜底什么时候会触发争议所有在已最终确认的中继链上的平行链区块都应该是有效的。为确保没有无效区块进入最终确认状态除了上述审批检查外还有**争议**Disputes机制作为兜底。争议源于两个或更多验证人之间的分歧。要触发争议需要一个恶意行为者将无效区块分发给诚实验证人。按重要性排序的三种场景1. 中继链某分支上已包含的平行链区块是无效的2. 中继链某分支上已背书的平行链区块是无效的3. 一个被附议但未在任何分支上被背书的平行链区块是无效的争议的三个阶段**争议发起**任何发现自己对某平行链区块的有效性判断与其他已发布声明相矛盾的验证人都可以发起争议。发起过程在链下开始由感知到区块有问题的节点触发。**争议参与**一旦获知争议的存在所有验证人必须参与。**争议结论**当任一方获得 **⅔ 超级多数**时争议结束。如果多数验证人由于某种原因无法投票争议也可能在超时后结束。链上与链下组件争议同时具有链下和链上组件。**惩罚slash** 在链上处理因此双方验证人的投票必须上链。此外某条分支上的争议必须被转置到所有活跃分支以确保不当行为在所有可能的历史中都受到惩罚。链上组件通过提供任意两张矛盾投票来发起同样等待 ⅔ 超级多数。该组件还跟踪哪些平行链区块已经被争议过确保同一区块在中继链的任何分支上只能被争议一次。**在争议解决之前该平行链的包含流程将被暂停。****关于区块的一个重要区分**中继链区块不包含平行链区块本身只包含平行链区块头。平行链区块存在于平行链自己的网络中。七、网络异步性现实世界的复杂性上述流程在理想情况下是线性的但现实中网络是异步的。中继链的出块者由 BABE 算法选择而 BABE 是一个允许分叉的算法——这意味着不同的出块者可能在同一时刻被选中且它们可能基于不同的父区块构建。这导致了一个关键现象部分验证人收到了区块 C而另一部分没有收到他们可能在区块 B 之上构建另一个区块 C。之后一些验证人可能同时知道 C 和 C需要在两个链头上都参与工作。两个分叉可能因网络异步性而并行增长一段时间但最终 GRANDPA 会选择其中一个分叉进行最终确认。在没有对抗性网络的情况下两个分叉长期共存的可能性很低因为总会有验证人同时知道两个链头的存在。小结- **六步状态跃迁**平行链区块从候选到包含经历六个精确定义的状态任何一步失败都会被丢弃确保只有合格区块进入中继链- **验证状态转换而非状态**验证人只检查被修改的值这是协议能扩展到数百条平行链的根本原因- **⅓ 1 擦除码**Reed-Solomon 编码让数据可用性不依赖所有验证人在线只需超过 ⅓ 响应即可重建完整数据- **VRF 随机抽检**审批流程通过事后随机检测而非增加验证人数量来保证安全在安全性和吞吐量之间取得平衡- **三阶段争议兜底**争议机制作为最终安全网确保已最终确认的区块一定是有效的作恶者无处遁逃整套协议的精髓在于一个反直觉的洞察安全不需要每个人都验证每一笔交易而是需要一套机制确保任何人的作恶都会被发现并惩罚。Polkadot 用概率抽检替代全量验证用经济惩罚替代信任假设——这不只是一个工程方案而是对去中心化系统如何在有限资源下实现无限安全覆盖这个根本问题的一次范式回答。

相关文章:

平行链协议深度拆解 | 一个区块如何穿越六道关卡获得最终确认

原文作者:PaperMoon 团队一个平行链区块要想获得 Polkadot 网络的最终安全背书,需要经历候选、附议、可背书、已背书、待可用、已包含六个状态——任何一步失败都会被丢弃。这套机制的名字听起来很学术,但它解决的问题极其现实:几…...

全文 - Quantum error correction below the surface code threshold

低于表面码阈值的量子纠错 谷歌量子人工智能团队及合作者(2024 年 8 月 24 日) 摘要 量子纠错 [1,2,3,4] 通过将多个物理量子比特整合为一个逻辑量子比特,为实现实用化量子计算提供了路径:随着量子比特数量的增加,逻…...

aspnet_counters.dll文件彻底修复方法 附免费的下载解决办法

在使用电脑系统时经常会出现丢失找不到某些文件的情况,由于很多常用软件都是采用 Microsoft Visual Studio 编写的,所以这类软件的运行需要依赖微软Visual C运行库,比如像 QQ、迅雷、Adobe 软件等等,如果没有安装VC运行库或者安装…...

Burp Suite Professional 2026.3 for Windows x64 - 领先的 Web 渗透测试软件

Burp Suite Professional 2026.3 for Windows x64 - 领先的 Web 渗透测试软件 世界排名第一的 Web 渗透测试工具包 请访问原文链接:https://sysin.org/blog/burp-suite-pro-win/ 查看最新版。原创作品,转载请保留出处。 作者主页:sysin.or…...

IsaacSim 安装与使用记录(8)

IsaacSim 安装与使用记录(8) 基于ROS2 Python自定义OmniGraph Node 打开Isaac Sim VS Code Edition(VS Code extension) 配置生成的OmniGraph Node 编辑extension.toml 编辑OmniGraph定义文件 CategoryDefinition.json 编辑OmniGraph Python源码 自定义控制器 使用自定义的…...

Ubuntu18.04 for Xilinx19.2 环境安装

Ubuntu18.04 for Xilinx19.2 ✉️ 安装目标: Ubuntu 18.04 虚拟机Vivado 19.2MATLAB 2018bSynopsys (VCS-MX Verdi)VCS Test Code 材料准备: Ubuntu 18.04 镜像Vivado 19.2 安装包MATLAB 2018b 安装包Synopsys 2018.09 安装包VMware16 Pro物理机一台 …...

MIT突破:多智能体系统破解PFAS替代材料发现难题

这项由麻省理工学院土木环境工程系、机械工程系以及Schwarzman计算学院联合开展的研究,发表于2026年《计算机科学与人工智能》领域的arXiv预印本平台(论文编号:arXiv:2602.07491v1),有兴趣深入了解的读者可以通过该编号…...

重庆团建企业选哪家

在当前的商业环境中,团队建设活动已经成为提升企业凝聚力和员工士气的重要手段。对于重庆的企业来说,选择一家合适的团建服务提供商至关重要。本文将对重庆的几家知名团建企业进行分析,并重点推荐重庆领军者文化传播有限公司。引言随着市场竞…...

大模型落地实战:技术选型到部署全解析

大模型落地实践指南:技术路径与关键挑战 企业级大模型应用需从技术选型开始。主流技术路径包括基于开源框架(如LLaMA、Falcon)的微调、使用API服务(如GPT-4、Claude)的快速接入,以及混合部署模式。技术选型…...

FLYNOTE App Tech Support

FLYNOTE - 一款让航线观察与安全讲评更轻松的App记录难?回忆糊?讲评没重点?FLYNOTE 助您一臂之力。作为一款专注于 TEM(威胁与差错管理)的观测辅助工具,FLYNOTE 能帮助观测员在忙碌的飞行环境中快速、客观地…...

科研党狂喜:Zotero 7 8 完美同步插件!解决一切“请求频繁”

兄弟们,Zotero 8 也能用了!坚果云这波更新直接封神,告别 WebDAV 报错!家人们,正在肝论文的特种兵们,还有为了文献管理头发日渐稀疏的科研卷王们!👋今天必须给大伙按头安利一个重磅更…...

改进北方苍鹰优化算法(INGO):提升收敛速度与精度的探索

改进北方苍鹰优化算法(INGO) 名字随意取的可随意更换 最大迭代次数:500 独立运行次数:30 初始种群数量:30 对比算法:NGO对比效果和测试函数形状均给出,该算法具有较高的收敛速度与精度在算法优化的广阔领域中,不断寻求更高效、更精…...

避开渲染坑!有哪些靠谱的云渲染平台值得选?

随着三维设计、影视制作等行业的发展,云渲染成为提升效率的关键工具,但选择不当容易遭遇卡顿、数据泄露、兼容性差等问题。用户在挑选时最关心的核心问题集中在:是否安全稳定、渲染速度是否高效、兼容软件是否全面、部署操作是否便捷。结合市…...

【量化工具推荐】期货量化交易等待与驱动机制平台对比:8款平台深度分析

一、前言 量化策略需要“何时推进时间、何时处理行情”——即等待与驱动机制。有的平台是同步 wait_update,有的是事件驱动 on_tick。不同机制影响代码风格与调试难度。本文从期货量化实际需求出发,对比8款期货量化平台的等待与驱动机制,均为…...

StepFun团队首创图像生成模型的“虚拟GUI环境“评测基准

这项由StepFun领导、联合南华理工大学、北京大学、清华大学等多家机构的研究发表于2026年2月的arXiv预印本论文arXiv:2602.09007v1,为那些对这一前沿技术感兴趣的读者提供了完整的研究细节。当我们在手机上轻点一个应用图标,屏幕会立刻切换到相应的界面&…...

asp.net Core 使用Layui 框架,用 PartialView作为左侧菜单项,进行动态加载

用 PartialView作为左侧菜单项,进行动态加载 1. 作品展示 2. 定义菜单数据模型 // Models/MenuItem.cs public class MenuItem {public int Id { get; set; }public string Name { get; set; } // 菜单名称public string Icon { get; set; } …...

Cyanine 5 TSA,Cy5 酪胺,1431148-26-3:该试剂可实现荧光标记物的局部沉积和信号放大。

基础试剂介绍英文名称:Cyanine 5 TSA,Sulfo-Cyanine5 tyramide中文名称:水溶Cy5 tyramide,Cy5 酪胺CAS 号:1431148-26-3分子式:C41H49N3O8S2分子量:775.97纯度:>95%外观性状&…...

对比一圈后 8个AI论文平台测评:继续教育毕业论文写作必备工具推荐

在当前学术研究日益数字化的背景下,AI写作工具已成为科研工作者不可或缺的辅助手段。然而,面对市场上琳琅满目的AI论文平台,如何选择真正适合自己的工具成为一大难题。为此,笔者基于2026年的实测数据与真实用户反馈,围…...

MySQL慢查询优化实战教程:200万数据从3秒优化到50ms(EXPLAIN + 索引设计 + 延迟关联)

手把手带你用 EXPLAIN 索引优化 SQL 改写,把一条 3 秒的慢查询干到50ms 以内。背景 最近在做一个电商项目的订单列表查询,页面加载巨慢。打开 Chrome DevTools 一看,一个接口响应 3.2 秒。排查下来,罪魁祸首是一条 SQL。这篇文章…...

龙虾虽好,预算要守!OpenClaw实力出众,合理控费更关键

没点进这篇文章的你,可能还未接触智能体;而点进来的你,大概率已经体验过“养龙虾”的便捷——这里说的,就是当下风靡全球的开源智能体OpenClaw。这只被网友亲切称为“赛博龙虾”的开源智能体,确实凭借突出的实用性收获…...

中国人民大学等顶尖高校联手破解大模型“懒惰“难题

这项由中国人民大学、澳门大学、中南大学、中国科学院大学、上海人工智能实验室、复旦大学、北京大学等多所顶尖院校联合开展的研究发表于2026年2月,论文编号为arXiv:2602.04935v2。有兴趣深入了解的读者可以通过这个编号查询完整论文。在人工智能助手日益普及的今天…...

鸿蒙真机调试

1、生成私钥和证书请求文件 打开DevEco Studio,点击【构建】->【生成私钥和证书请求文件】 以上步骤完成后,对应文件夹会出现三个文件: 2、证书文件 按步骤输入后会出现appid,如下图: 下一步需要添加设备&#xff…...

CSDN一亿技术人员的福音:专知智库OPC研究院发布“技术人一人公司赋能计划”

CSDN一亿技术人员的福音:专知智库OPC研究院发布“技术人一人公司赋能计划” CSDN有一亿技术人员。 这是一个惊人的数字。一亿个会写代码、懂逻辑、能解决问题的头脑,构成了中国数字经济的创造力底座。 但现实是,大多数技术人被困在这样一个…...

Openclaw玩转高德地图

🗺️ 通过本文可以满足类似如下需求 五一计划到昆明游玩,使用高德制作4天旅行攻略。同时将生成的旅行攻略发到钉钉群里,以满足行中探店、导航、打车、购票等出行需求。如下图所示: 用到了钉钉,Openclaw的对接可以参考前文https://blog.csdn.net/s060403072/article/deta…...

从金融OpenClaw热潮看企业架构如何落地“非侵入式”自动化

摘要 站在2026年3月13日这个时间节点回望,AI Agent(智能体)正经历着从“对话式玩具”向“生产力工具”的惊险一跳。近期,开源社区OpenClaw及其进阶版AlphaClaw在金融投研圈掀起的“龙虾热”,本质上是行业对自主执行AI的…...

Failed to create the npcap service: 0x8007007e

现象:安装wireshark报错“Failed to create the npcap service: 0x8007007e. Please try installing Npcap again, or use the latest official Npcap installer from https://npcap.com/” 原因: 未正确卸载而直接删除文件夹等原因所致 解决&#xff1…...

【多 Agent 协作系统】状态管理:共享记忆、分布式状态、一致性——构建可靠的多 Agent 状态系统!

【多 Agent 协作系统】状态管理:共享记忆、分布式状态、一致性——构建可靠的多 Agent 状态系统 状态管理是多 Agent 系统的核心挑战。本章将深入讲解共享记忆架构、分布式状态同步、一致性协议、状态持久化策略,以及状态管理的实战实现。 目录 前言:状态管理为什么重要 状态…...

ROS2 Topic 传输机制:板内 vs 跨板

ROS2 Topic 传输机制:板内 vs 跨板 1. 两种传输方式2. 传输决策逻辑场景传输方式是否反序列化同进程同节点Intra-Process (Zero-Copy)❌ 不需要同进程不同节点Intra-Process❌ 不需要不同进程DDS (UDP/TCP/Shared Memory)✅ 需要不同板块DDS (网络)✅ 需要3. Intra-…...

OpenClaw部署失败怎么办?云服务器常见问题汇总

很多开发者在部署OpenClaw时都会遇到各种问题,例如:安装失败、服务启动不了、端口无法访问等。OpenClaw部署失败到底该怎么解决?答案是:大部分部署问题其实都来自环境配置错误,例如Node.js版本不符合要求、服务器端口未…...

2026年丰县服务商TOP10榜单揭晓:谁才是口碑与效率双赢的行业标杆?

朋友们,最近丰县商家圈子里都在传一份榜单,说是2026年本地服务商TOP10。我特意去打听了一圈,发现这事儿挺有意思。有人说榜单是“虚名”,也有人说这是“风向标”。今天咱不吹不黑,就聊聊这份榜单背后,商家们…...