区块链实验室(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是拜占庭节点数量。

相关推荐
带土11 天前
3. Ubuntu 14.04更换阿里云源,设置系统字体
linux·ubuntu
蛐蛐蛐1 天前
Win11上VS Code免输密码连接Ubuntu的正确设置方法
linux·运维·ubuntu
James.TCG1 天前
Avalonia桌面应用发布到Ubuntu22.04
linux·ubuntu·avalonia
唤醒手腕1 天前
唤醒手腕 2025 年最新 Remix ERC 详细教程(更新中)
microsoft·区块链
ding_zhikai1 天前
SD:在一个 Ubuntu 系统安装 stable diffusion Web UI
前端·ubuntu·stable diffusion
搬砖魁首2 天前
密码学系列 - 零知识证明(ZKP) - NTT运算
区块链·密码学·零知识证明·fft·ntt
diqiudq2 天前
用AMD显卡节省nVidia显卡显存占用
linux·深度学习·ubuntu·显存释放
小龙报2 天前
《KelpBar海带Linux智慧屏项目》
linux·c语言·vscode·单片机·物联网·ubuntu·学习方法
安当加密2 天前
基于PostgreSQL的TDE透明加密解决方案:构建数据全生命周期的国密合规安全体系
安全·postgresql·区块链
zhangrelay2 天前
蓝桥云课中支持的ROS1版本有哪些?-2025在线尝试ROS1全家福最方便的打开模式-
linux·笔记·学习·ubuntu