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

数据科学每日总结--Day17--区块链

区块链

活跃性(Liveness)
  • 定义:指的是区块链网络中节点能够持续、有效地参与共识过程,确保新的区块能够被不断添加到区块链上。这反映了区块链网络的活跃度和生命力。

  • 特点:

    • 即使只有单个诚实的矿工,只要其哈希算力虽小但持续存在,也有可能通过不断尝试挖掘新区块来延长最长的区块链。这体现了区块链网络中节点(矿工)的活跃性和参与度。

    • Liveness强调了区块链网络的持续性和可扩展性,确保网络能够不断向前发展。

安全性(Safety)

  • 定义:指的是区块链网络中已确认的交易和区块不会被篡改或撤销。这保证了区块链的不可篡改性和数据的完整性

  • 特点:

    • 当诚实节点的哈希算力超过50%时,区块链网络的安全性可以得到保证。这是因为在工作量证明(PoW)等共识机制下,攻击者需要拥有超过50%的哈希算力才能对区块链进行双花攻击或51%攻击。

    • 然而,这种安全性保证并非绝对,而是基于概率的。即使诚实节点的哈希算力超过50%,也存在被攻击者利用短暂算力优势进行攻击的可能性。因此,Safety是一种概率性的保证。

    • 此外,网络安全性的保证还依赖于网络的同步性。如果网络不同步,攻击者可能利用网络延迟或分区攻击来破坏区块链的完整性。因此,网络必须保持同步以确保安全性。

Liveness和Safety是区块链技术中的两个核心概念,它们共同构成了区块链网络的基本安全框架。Liveness强调了网络的活跃性和参与度,而Safety则保证了已确认的交易和区块的不可篡改性。虽然Safety是一种概率性的保证,并且依赖于网络的同步性,但这两个概念共同确保了区块链网络的稳定性和安全性

Streamlet

  • 定义:是一种新型的区块链协议,它融合了传统BFT协议和区块链的设计精髓。Streamlet协议遵循BFT协议的容错规则,即在节点数目为n的网络中,可以容忍最多f个拜占庭节点,需要满足n>3f。

  • 特点:

    1. Streamlet协议依赖于半异步(partially synchronous)网络假设,即网络在大部分情况下都是好的,消息可以在一个能够预测的延迟内传播。但在某些情况下,网络可能会经历一段波动期(Global Stabilization Time, GST),并最终会恢复。在GST期间,网络延迟无法预测。

    2. Streamlet协议保证了在异步网络下的安全性(safety),即不存在两个同样高度的不同区块被确认。当网络回归同步时,协议可以进一步保证活性(liveness),即客户端发送的交易最终会在区块链上被确认。

    3. Streamlet协议的运行被划分为一个个同步的epoch,每个epoch都由哈希算法随机分配一个leader。leader在属于自己的epoch中发布(propose)一个区块给其他节点投票(vote)。已证区块并不一定最终会被确认,但在一个已证链中,当存在三个连续的已证区块时,其中前两个区块以及同一链上之前的所有区块都被确认。

Hotstuff
  • 定义:HotStuff是一种基于BFT的共识协议,它提出了一个三阶段投票的过程来实现安全性(safety)、活性(liveness)和响应性。HotStuff协议是基于View的共识协议,每个View表示一个共识单元,由一个确定的Leader来主导共识协议。

  • 消息类型:

    • Prepare消息用于启动共识过程

    • Precommit消息用于确认Prepare消息的结果

    • Commit消息则用于最终确认区块

BFT协议设置

Streamlet和HotStuff是与BFT紧密相关的两种协议,而设置通常涉及到一个固定数量的参与者,这些参与者的身份对于所有节点来说都是已知的,并且它们之间通过签名进行身份验证。这种设置通常被称为“许可制”(permissioned),意味着只有经过授权的节点才能参与共识过程。

  • 固定数量的参与者:在BFT协议中,参与者的数量是固定的。这意味着在协议开始之前,就已经确定了哪些节点将参与共识过程。这种设置有助于协议的设计和分析,因为可以假设参与者的数量是已知的,并且不会发生变化

  • 身份已知的节点:所有节点的身份在BFT协议中都是已知的。这通常通过数字签名或公钥基础设施(PKI)来实现。每个节点都有一个唯一的身份标识,并且可以通过签名来验证其身份。这种设置有助于防止恶意节点的加入,因为未经授权的节点无法伪造有效的签名

  • 许可制:由于BFT协议中的节点身份已知且数量固定,因此这种设置通常被称为“许可制”。与“无许可制”(permissionless)的区块链协议(如比特币和以太坊)相比,许可制区块链的节点加入需要经过授权和验证。这有助于确保网络的安全性和可靠性,因为只有经过验证的节点才能参与共识过程

BFT协议一轮共识步骤
  • 提议新块:

    1. 在每一轮的开始,一个被选中的节点(通常称为Leader或提议者)会提议一个新的区块。这个区块可能包含了一系列的交易或其他需要被共识的数据

    2. 提议者会将新块的信息广播给网络中的所有其他节点

  • 投票:

    1. 收到提议的新块后,每个节点都会对这个新块进行验证。验证过程可能包括检查区块的合法性、交易的签名等。

    2. 如果节点验证通过了这个新块,它会向网络中的其他节点广播一个投票消息,表明它支持这个新块。

    3. 这个过程会持续一段时间,允许网络中的所有节点都有机会对新块进行验证和投票

  • 公证

    1. 当一个新块获得了足够的投票(即达到了某个预定的阈值,这个阈值通常是根据网络中节点的总数和拜占庭容错能力来确定的),它就被认为是“公证”的或“确认”的。

    2. 一旦一个新块被公证,它就被添加到区块链上,成为不可篡改的一部分

http://www.dtcms.com/a/602960.html

相关文章:

  • ERP系统性价比厂家
  • 统计局网站群建设方案深圳趣网站建设
  • 西安免费做网站电话网业qq
  • 电影网站开发现状沂水网站开发
  • 用手机网站做app盘石网站做的怎么样
  • GWAS分析只能基于SNP做?
  • 禅道修改admin密码
  • 如何在open-vsx上发布插件
  • 优秀网站设计平台建筑网上招工平台哪个好
  • 2025-11-12 ZYZ28-NOIP-aoao round 2 hetao1733837的record
  • vite里带渐变的svg渲染失败
  • C语言编译器汉化安卓 | 提升开发效率,享受更流畅的编程体验
  • 双种群自适应差分进化算法 L-NTADE
  • 公司网站设计的公司兼职网站制作
  • 嵌入式Linux电源管理深度优化之系统休眠与唤醒机制实战解析
  • [QMT量化交易小白入门]-102、AI炒股项目如何迁移到a股市场全天候再平衡策略,5年历史回测中实现了62.15%
  • Python学习日记:从迷茫到灵光乍现
  • 【windows常见问题】无法以管理员身份运行
  • wordpress 音乐网站如何彻底清除网站的网页木马
  • try_lock_for 详细解析:如何使用及避免死锁
  • Elasticsearch 报错:index read-only / allow delete (api) 深度解析与解决方案
  • 敖汉旗住房和城乡建设局网站建站模板网站设计
  • 河北 石家庄 网站建设为什么建设网银网站打不开
  • 网站做任务哪些网站的网站怎么做的
  • MATLAB高阶谱分析工具箱(HOSA)解析
  • 公司网站制作需要找广告公司么中信建设有限责任公司湖南省人防建筑设计院
  • 郑州高端模板建站muiteer主题 wordpress
  • 网站策划书我与音乐wordpress评论模板怎么改
  • 网站头部代码江河建设集团有限公司网站
  • 东莞保安公司有哪些襄阳网站seo公司