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

news/2025/1/3 8:57:14/

在以前的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是拜占庭节点数量。


http://www.ppmy.cn/news/1261946.html

相关文章

学习Java第64天,请求转发和响应重定向

请求转发和响应重定向 概述 什么是请求转发和响应重定向 请求转发和响应重定向是web应用中间接访问项目资源的两种手段,也是Servlet控制页面跳转的两种手段 请求转发通过HttpServletRequest实现,响应重定向通过HttpServletResponse实现 请求转发生活举例: 张三找李四借钱,李四…

harmony开发之Text组件的使用

TextInput、TextArea是输入框组件,通常用于响应用户的输入操作,比如评论区的输入、聊天框的输入、表格的输入等,也可以结合其它组件构建功能页面,例如登录注册页面。 图片来源黑马程序员 Text组件的使用: 文本显示组…

python pandas dataframe常用数据处理总结

最近一直在做数据处理相关的工作,有几点经常遇到的情况总结如下: 数据中存在为空数据如何处理 处理方式1:丢弃数据行 # 实现方式1 data data.dropna(subset[id]) # 若id列中某行数值为空,丢弃整行数据 # 实现方式2 data df[df…

STM32-OLED显示屏

*本文采用的OLED显示屏为4针脚IIC显示屏,4针脚分别为GND,VCC,SCL,SDA OLED.C #include "stm32f10x.h" #include "OLED_Font.h"/*引脚配置*/ #define OLED_W_SCL(x) GPIO_WriteBit(GPIOB, GPIO_Pin_8, (BitAc…

基于jsonrpc4j实现JSON-RPC over HTTP(服务端集成Spring Boot)

1.JSON-RPC说明 JSON-RPC是一个无状态且轻量级的远程过程调用(RPC)协议。 它主要定义了一些数据结构及其相关的处理规则。 它运行时可以基于tcp(socket),http等不同的消息传输方式, 即它不关心底层传输方式的细节。 它使用JSON(RFC 4627)作为…

Echarts地图案例及常见问题

前言 ECharts 是一个使用 JavaScript 实现的开源可视化库,它可以帮助用户以简单的方式创建复杂的时间序列、条形图、饼图、地图等图形。 Echarts绘制地图的案例 展示了中国各省份的人口数量 var myChart = echarts.init(document.getElementById(main)); var option = {t…

圣诞树网页效果代码详解

以下是一个简单的HTML和CSS代码&#xff0c;可以创建一个类似于圣诞树的网页效果&#xff1a; <!DOCTYPE html> <html> <head><title>圣诞树网页</title><style>.tree {font-family: monospace;white-space: pre;font-size: 20px;margin:…

力扣150题 |80.删除有序数组中的重复项II

力扣150题 &#xff5c;80.删除有序数组中的重复项II 题目描述解题思路代码实现 题目描述 80.删除有序数组汇总的重复项II 给你一个有序数组 nums &#xff0c;请你 原地 删除重复出现的元素&#xff0c;使得出现次数超过两次的元素只出现两次 &#xff0c;返回删除后数组的新…