区块链实验室(28) - 拜占庭节点劫持区块链仿真

在以前的FISCO环境中仿真拜占庭节点攻击区块链网络。该环境共有100个节点,采用PBFT作为共识机制,节点编号分别为:Node0,Node,… ,Node99。这100个节点的前2010区块完全相同,自区块2011开始分叉。

(1)1个拜占庭节点:Node0

Node0 区块长度2020,Node1 - Node99区块长度2030。

在Node0上发起交易,Node0区块同步失败。

在这里插入图片描述

在其他节点上交易成功,区块同步成功。

在这里插入图片描述

这说明:100个节点中Node0被抛弃,99个节点仍能PBFT共识成功。

反过来,在Node99节点上发起同样的交易,成功。

在这里插入图片描述

但Node0节点的区块未更新,节点被抛弃。

在这里插入图片描述

(2)33个拜占庭节点:Node0 – Node32

Node0 – Node32 区块长度2020,Node33 - Node99区块长度2030

在Node0上发起交易,交易失败,区块长度未变。

在这里插入图片描述

Node99节点的区块长度也未变,说明交易失败。

在这里插入图片描述

反过来,在Node99节点上发起同样的交易,同样失败。

在这里插入图片描述

Node0节点的区块长度也未变,交易彻底失败。

在这里插入图片描述

此时,整个区块链失去共识能力。

(3)32个拜占庭节点:Node0 – Node31

Node0 – Node31 区块长度2020,Node32 - Node99区块长度2030

在Node0上发起交易,Node0的区块长度未变。

在这里插入图片描述

但在Node99上区块长度加1,说明交易成功。

在这里插入图片描述

相同地,在Node99上发起交易,交易成功,区块长度加1.

在这里插入图片描述

然而,Node0节点的区块长度未变。

在这里插入图片描述

此时,整个区块链还具有共识能力。结论:在FISCO环境中,PBFT共识的条件是N>3f+1,其中N是节点总数,f是拜占庭节点数量。

相关推荐

  1. 3、漫谈分布式系统、拜占庭将军问题与区块

    2023-12-07 14:44:04       29 阅读
  2. 2024-04-29 区块-项目-记录

    2023-12-07 14:44:04       14 阅读
  3. 4-区块基础

    2023-12-07 14:44:04       42 阅读
  4. [AIGC] 区块简介

    2023-12-07 14:44:04       44 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-07 14:44:04       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-07 14:44:04       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-07 14:44:04       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-07 14:44:04       20 阅读

热门阅读

  1. C语言语义缺陷(一)

    2023-12-07 14:44:04       37 阅读
  2. python 实现 excle读取时间序列数据并画图显示

    2023-12-07 14:44:04       49 阅读
  3. WordPress定时发布文章失败的原因及解决办法

    2023-12-07 14:44:04       37 阅读
  4. 程序员养生指南-八段锦

    2023-12-07 14:44:04       36 阅读
  5. 【recrutment / Hiring / Job / Application】

    2023-12-07 14:44:04       26 阅读
  6. 项目中使用AI功能

    2023-12-07 14:44:04       42 阅读
  7. Springboot项目启动成功后可通过五种方式继续执行

    2023-12-07 14:44:04       41 阅读
  8. Android四大组件之- ContentProvider的创建与应用

    2023-12-07 14:44:04       39 阅读