当前位置:网站首页>EOS的共识机制与区块生成
EOS的共识机制与区块生成
2022-08-05 11:08:00 【智慧浩海】
在《EOSIO 技术白皮书》中,对 EOS 的共识机制 BFT-DPOS(拜占庭容错算法+权益委托共识机制)进行了说明。其中拜占庭容错算法(Byzantin eFault Tolerance)的用途是:
所有的出块者都要对所有区块签名,以确保在同一时间戳或者同一区块高度上,没有区块生产者能够同时在两个区块上签名。一旦一个区块有了 15 个区块生产者的签名,该区块就被认为是不可逆的。任一区块生产者如果想在同一时间戳或者同一区块高度的两个区块上签名,就会留下密码学证据。在这一模式下,一秒之内就可以达成不可逆的共识。
在白皮书中,EOS 对其区块的出块机制进行了介绍,转摘如下:
根据这一算法,在使用 EOSIO 软件构建的区块链上持有通证的人,可以通过一个持续进行的投票系统来选择区块生产者。任何人都可以选择参加区块生产,只要能够说服通证持有人为其投票,就会有机会参与区块的生产。
EOSIO 软件可以让区块每 0.5 秒生成一个。在任何时刻,只有一个生产者被授权生产区块。如果在计划的某个时间内没有成功出块,则跳过该块。如果有一个或更多的区块被跳过,则在区块链上会有 0.5 秒或者更久的空白。
使用 EOSIO 软件,区块的产生以 126 个区块(每个出块者六个区块,乘以 21 个出块者)为一个周期。在每个出块周期开始时,软件会根据通证持有人所投票数选出 21 个区块生产者。被选中的区块生产者的出块顺序要获得 15 个及以上的区块生产者的同意。
如果出块者错过了一个块,并且在最近 24 小时内没有产生任何块,则这个出块者将被剔除在考虑范围之外,直到他们通知区块链可以重新开始产生区块。这确保了网络的顺利运行,把被证明为不可靠的区块生产者排除在出块排序之外,这一方式使得错过区块的数量最小化。
边栏推荐
- How to choose coins and determine the corresponding strategy research
- 脱光衣服待着就能减肥,当真有这好事?
- 大佬们 我是新手,我根据文档用flinksql 写个简单的用户访问量的count 但是执行一次就结束
- 012年通过修补_sss_提高扩散模型效率
- Discover the joy of C language
- Leetcode刷题——623. 在二叉树中增加一行
- OpenHarmony如何查询设备类型
- 七夕来袭!还要做CDH数据迁移怎么办?来看看DistCp
- STM32 entry development: write XPT2046 resistive touch screen driver (analog SPI)
- HDD杭州站•ArkUI让开发更灵活
猜你喜欢
【加密解密】明文加密解密-已实现【已应用】
数据可视化(一)
并非富人专属,一文让你对NFT改观
.NET in-depth analysis of the LINQ framework (6: LINQ execution expressions)
Http-Sumggling缓存漏洞分析
Support Vector Machine SVM
Letter from Silicon Valley: Act fast, Facebook, Quora and other successful "artifacts"!
RT - Thread record (a, RT, RT Thread version - Thread Studio development environment and cooperate CubeMX quick-and-dirty)
四、kubeadm单master
TiDB 6.0 Placement Rules In SQL 使用实践
随机推荐
5G NR 系统消息
STM32 entry development: write XPT2046 resistive touch screen driver (analog SPI)
L2-042 老板的作息表
How OpenHarmony Query Device Type
I'm going crazy.Again A few days can not be A problem
智源社区AI周刊No.92:“计算复杂度”理论奠基人Juris Hartmanis逝世;美国AI学生九年涨2倍,大学教师短缺;2022智源大会观点报告发布[附下载]
负载均衡应用场景
今天告诉你界面控件DevExpress WinForms为何弃用经典视觉样式
【加密解密】明文加密解密-已实现【已应用】
[Android] How to use RecycleView in Kotlin project
TiDB 6.0 Placement Rules In SQL 使用实践
CenOS MySQL入门及安装
结合“xPlus”探讨软件架构的创新与变革
PCB layout must know: teach you to correctly lay out the circuit board of the op amp
Android development with Kotlin programming language II Conditional control
例题 可达性统计+bitset的使用
Http-Sumggling缓存漏洞分析
SQL Outer Join Intersection, Union, Difference Query
R语言使用yardstick包的pr_curve函数评估多分类(Multiclass)模型的性能、查看模型在多分类每个分类上的ROC曲线(precision(精准率),R代表的是recall(召回率)
What are the standards for electrical engineering