1. Account Safety

当网络出现分叉的 commit 信息时,Polkadot节点马上采取 Account Safety 的机制。
是一种“弱主观性”安全模式:通过惩罚参与者保障安全

  • 针对验证者的行为,事故后调查:如果恶意节点行为不端,将被追责。
  • 参与者必须经历相当长的撤回期(可能是几个月)才能解锁他们的股权和获得回报

步骤
step1. 让所有节点交出对分叉链的 pre-votes or pre-commits 投票
step2. 让节点交出它收到的第r轮的 pre-votes
step3. 找到恶意节点


2. Availability and Validity可用性和有效性

最终区块比最佳区块落后两个区块,在链tip后面保持几个区块的确定性。

eg.

Idle (24 peers), best: #664258 (0xee71…6321), finalized #664256 (0x809a…a5d8)
  • 让渔民验证区块是否正确,并挑战验证者的区块可用性
    渔夫节点:执行区块并报告任何验证者的不当行为,eg,监督提议将无效的平行链区块包含在中继链中
  • 验证者接收到collator收集人的区块后,有责任将完整的区块存储一段时间,以便任何平行链都可以查询求该区块
  • 什么时候开始一轮?eg. 每隔 x 个块进行新一轮

波卡链Substrate (7)Grandpa协议四“责任安全机制”相关推荐

  1. 波卡链Substrate (7)Grandpa协议一“概念说明”

    1. Grandpa协议 祖先递归继承共同前缀协议(GHOST-based Recursive Ancestor Deriving Prefix Agreement) 区块选择协议:配合出块协议 对链 ...

  2. 波卡链Substrate (7)Grandpa协议二“投票”

    1. 投票 1.1 复杂度O(n²) 如果节点数增加一倍,则必须发送四倍数量的消息. 绝对(非概率)安全性的共识协议需要为达成一致的所有内容传递大量消息,需要在参与者之间发送的消息数量与共识协议中的参 ...

  3. 波卡链Substrate (7)Grandpa协议三“2阶段同步”

    1. 预投票pre-vote+预执行pre-commit step0. 假设当前是第r轮,一个voter 在(r-1)轮完成后,并且收集完之前所有轮投票的情况下可以进行第r轮投票 step1. 如果v ...

  4. 波卡链Substrate (7)Babe协议四“出块签名和验证”

    1. 步骤 step1. slot leader更新本地链C使用新块,并发送新块B发送给其他节点 step2. 签名 slk:当前槽 H(l-1):sLk前一个区块的哈希 d:VRF输出 pi:val ...

  5. 波卡链Substrate (7)Grandpa + Babe

    1. BABE 必须建立在 GRANDPA 最终确定的链上. BABE 中最好的链就是由主节点创建的区块最多的链 Grandpa 多个块一次性进行确认 eg. 标有"1"的块是主要 ...

  6. 波卡链Substrate (6)Babe协议一“基本概念”

    1. 盲分配Babe协议(Blind Assignment for Blockchain Extension protocol ) 一种基于槽的算法. 将时间分解为多个纪元,每个纪元都被划分为多个槽s ...

  7. 波卡链Substrate (7)Babe协议五“Epoch纪元更新”

    1. 新的纪元更新时,validors需要更新新的纪元随机值,新纪元的当前有效validators 一个新的validator加入链后,至少要过2个纪元才能参与出块.eg. 第i个纪元的时候就确定了第 ...

  8. 波卡链Substrate (7)Babe协议六“Secondary slot leader”

    1. 问题 由于槽是随机分配,一个插槽可能是空的,有的却有多个.或者说刚才的n个Validators的output都小于阈值.谁来出块? 2. 解决方法 每个插槽可以有一个主要Primary lead ...

  9. 波卡链Substrate (6)Babe协议三“slot leader”

    1. 问题:一个槽有多个Validators,谁来出块? 2. 解决:每个Validator使用VRF(Verifiable Random Function)函数生成一个伪随机值,如果低于阈值,它就成 ...

最新文章

  1. hadoop生态搭建(3节点)-06.hbase配置
  2. 小白们应当知道的配置系统变量PATH 的小技巧。
  3. Springboot中使用Google 的Kaptcha工具实现验证码校验
  4. android 重置画布,android-自定义视图:重按视图画布
  5. SQL Server:Like 通配符特殊用法:Escape
  6. 实验室里人越来越少啊!
  7. java jndi tcp_spring配置下通过tomcat的jndi服务连接数据库
  8. django 1.8 官方文档翻译: 1-2-5 编写你的第一个Django应用,第5部分
  9. C/C++ 远程开发 - NetBeans IDE 教程 -转
  10. TCP和TCP/IP的区别
  11. win7录屏_录屏软件推荐用什么?绝地求生录屏游戏的工具分享
  12. qt里的pushButton中的clicked(bool);用法
  13. 201771010112罗松《面向对象程序设计(java)》第一周学习总结
  14. 玉米生吃好还是熟吃好 各种情况分析
  15. Java虚拟机面试问题
  16. 最优化学习 最速下降法(steepest Descent)
  17. linux的strip含义
  18. OSG三维渲染引擎编程学习之一:“第一章:OSG介绍” 之 “1.1 OSG简介”
  19. 计算机丢失dog.dll,dog.dll(解决找不到dog.dll文件问题)V1.0 正式版
  20. 内网穿透 NPS工具实现内网穿透

热门文章

  1. vue分页+spring boot +分页插件pagehelper
  2. css动画-animation各个属性详解(通俗易懂)
  3. 高校邦python程序设计基础篇_高校邦Python程序设计基础【实境编程】章节答案
  4. ubuntu19 安装git_如何在Ubuntu 20.04上安装Git
  5. 柴油发电机并机母线之间母联的设置分析
  6. 首个自贸港“跨境数据交互试点”!中国电信海南国际数据中心将助推5G、大数据等产业发展...
  7. 机房做隔断为什么要用防火玻璃?
  8. 长按发送语音_MIUI 11指尖通话功能,实现语音文字实时转换,米粉值得一试!...
  9. android https 简书,关于Android http改为https
  10. 成功解决_catboost.CatBoostError: Invalid cat_features[4] = 8 value: index must be < 8.