【Paper】2019_DoS/数据注入攻击下基于一致性的信息物理系统安全性研究_曹雄

news2024/12/26 5:57:40

2019_DoS/数据注入攻击下基于一致性的信息物理系统安全性研究_曹雄

文章目录

  • 第2章 拒绝服务攻击下多智能体系统安全性研究
    • 2.1 问题描述
      • 2.1.1 系统模型
      • 2.1.2 拒绝服务攻击模型
    • 2.2 安全估计与一致性分析
    • 2.4 数值仿真
      • 2.4.1 观测器网络受到攻击下的结果及分析
        • 2.4.1.1 线性多智能体系统
        • 程序 `main_NoAttack.m`
        • 程序 `main_UnderAttack.m`
  • Ref

第2章 拒绝服务攻击下多智能体系统安全性研究

2.1 问题描述

2.1.1 系统模型

考虑领导者-跟随者多智能体系统,其中包含一个领导者和 N N N 个跟随者。领导者编号为0,跟随者编号为 i = 1 , 2 , . . . , N i = 1,2,...,N i=1,2,...,N

跟随者的动态方程可以描述为

x ˙ i ( t ) = A x i ( t ) + B u i ( t ) + B f f ( x i ( t ) , t ) y i ( t ) = C x i ( t ) (2-1) \begin{aligned} \dot{x}_i(t) &= A x_i(t) + B u_i(t) + B_f f(x_i(t), t) \\ y_i(t) &= C x_i(t) \end{aligned} \tag{2-1} x˙i(t)yi(t)=Axi(t)+Bui(t)+Bff(xi(t),t)=Cxi(t)(2-1)

其中,
x i ( t ) ∈ R n \red{x_i(t)} \in \R^n xi(t)Rn 表示第 i i i 个智能体的状态,
y i ( t ) ∈ R m \red{y_i(t)} \in \R^m yi(t)Rm 表示第 i i i 个智能体的测量值,
u i ( t ) ∈ R q \red{u_i(t)} \in \R^q ui(t)Rq 表示第 i i i 个智能体的控制作用。

由于领导者没有入邻居节点,因此其动态方程为
x ˙ 0 ( t ) = A x 0 ( t ) + B f f ( x 0 ( t ) , t ) (2-2) \begin{aligned} \dot{x}_0(t) &= A x_0(t) + B_f f(x_0(t), t) \end{aligned} \tag{2-2} x˙0(t)=Ax0(t)+Bff(x0(t),t)(2-2)

由于智能体之间的信息交换是通过通信网络实现的,并且具有较强的开放性,因此容易受到外部恶意攻击。假设观测器通信网络以及控制器通信网络都可能被攻击者攻击。此外,假定智能体之间的信息传输是同步的,时间间隔为 t k t_k tk,且满足

t k + 1 − t k = δ , k ∈ N 0 t_{k+1} - t_k = \delta, \quad k \in \N_0 tk+1tk=δ,kN0

2.1.2 拒绝服务攻击模型

2.2 安全估计与一致性分析

考虑如下基于观测器的控制器

u i ( t ) = c K ∑ j ∈ N i + a i j ( x ^ j ( t ) − x ^ i ( t ) ) (2-3) \begin{aligned} u_i(t) &= c K \sum_{j \in N^+_i} a_{ij} (\hat{x}_j(t) - \hat{x}_i(t)) \end{aligned} \tag{2-3} ui(t)=cKjNi+aij(x^j(t)x^i(t))(2-3)

其中
x ^ i ( t ) ∈ R n \red{\hat{x}_i(t)} \in \R^n x^i(t)Rn 表示第 i i i 个跟随者的观测器状态,
c \red{c} c 是耦合系数,
K ∈ R q × n \red{K} \in \R^{q \times n} KRq×n 是控制增益。


设计观测器结构如下:

{ x ^ ˙ i ( t ) = A x ^ i ( t ) + B u i ( t ) + θ H ∑ j ∈ N i + a i j ( ω j ( t ) − ω i ( t ) ) + B f f ( x ^ i ( t ) , t ) t ≠ z r x ^ i ( t ) = ζ i ( t ) t = z r (2-4) \left\{\begin{aligned} \dot{\hat{x}}_i(t) &= A \hat{x}_i(t) + B u_i(t) + \theta H \sum_{j \in N^+_i} a_{ij} (\omega_j(t) - \omega_i(t)) + B_f f(\hat{x}_i(t), t) &\quad t\ne z_r \\ \hat{x}_i(t) &= \zeta_i(t) &\quad t = z_r \end{aligned}\right. \tag{2-4} x^˙i(t)x^i(t)=Ax^i(t)+Bui(t)+θHjNi+aij(ωj(t)ωi(t))+Bff(x^i(t),t)=ζi(t)t=zrt=zr(2-4)

其中
{ z r , r ∈ N 0 } \red{\{z_r, r \in \N_0\}} {zr,rN0} 表示 σ − 1 \sigma -1 σ1 个连续成功传输间隔后的紧邻的传输时刻所组成的序列,也就是状态重置时刻。
θ \red{\theta} θ 表示耦合强度,
H ∈ R n × m \red{H} \in \R^{n \times m} HRn×m 表示观测器增益。

ω i ( t ) = C x ^ i ( t ) − y i ( t ) \omega_i(t) = C \hat{x}_i(t) - y_i(t) ωi(t)=Cx^i(t)yi(t)
ζ i ( t ) \red{\zeta_i(t)} ζi(t) 表示第 i i i 个局部状态重置器。


对于线性多智能体系统,状态重置机制的形式如下

{ ζ ˙ i ( t ) = A ζ i ( t ) + B u i ( t ) t ≠ s m ζ i ( t ) = ζ i ( t − ) + R η i ( t − ) t = s m (2-5) \left\{\begin{aligned} \dot{\zeta}_i(t) &= A \zeta_i(t) + B u_i(t) &\quad t \ne s_m \\ \zeta_i(t) &= \zeta_i(t^-) + R \eta_i(t^-) &\quad t = s_m \end{aligned}\right. \tag{2-5} {ζ˙i(t)ζi(t)=Aζi(t)+Bui(t)=ζi(t)+Rηi(t)t=smt=sm(2-5)

η i ( t − ) = C ζ i ( t ) − y i ( t ) \eta_i(t^-) = C \zeta_i(t) - y_i(t) ηi(t)=Cζi(t)yi(t)

η ( t − ) \red{\eta(t^-)} η(t) 表示 η ( t ) \eta(t) η(t) 的左极限。


2.4 数值仿真

单连杆机械手可以建模为由式 (2-1) 和式 (2-2) 表示的多智能体系统,系统

在这里插入图片描述

2.4.1 观测器网络受到攻击下的结果及分析

2.4.1.1 线性多智能体系统

在这里插入图片描述
在这里插入图片描述

程序 main_NoAttack.m

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

程序 main_UnderAttack.m

攻击改成了周期攻击。

在原文给的重构器基础上,我加了一点观测器的东西,能将结果补偿上去

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

Ref


需要程序代码可加+V:Zhao-Jichao
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/484896.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

视频分享平台PeerTube的搭建

老苏下载了吴恩达的 Prompt for developer 课程,不管是否有兴趣,都可以看看,早晚我们都得学会使用 ChatGPT 虽然课程对话是英文,但有中文字幕,课程地址:https://www.aliyundrive.com/s/H3CpaapD87Z 这个软…

使用ChatGPT+Xmind一键生成思维导图,简直泰裤辣

📋 个人简介 💖 作者简介:大家好,我是阿牛,全栈领域优质创作者。😜📝 个人主页:馆主阿牛🔥🎉 支持我:点赞👍收藏⭐️留言&#x1f4d…

python 编写K210控制步进电机的程序示例

今天正好看到K210的脉冲章节,就顺便拿出步进电机做个小实验,也好巩固一下所学的知识。下面是K210关于脉冲的相关介绍: 构造函数 machine.PWM(tim, freq, duty, pin, enableTrue) PWM 对象在 machine 模块下 【tim】K210 的 PWM 依赖…

789. 数的范围(C++和Python3)——2023.5.3打卡

文章目录 QuestionIdeasCode Question 给定一个按照升序排列的长度为 n 的整数数组,以及 q 个查询。 对于每个查询,返回一个元素 k 的起始位置和终止位置(位置从 0 开始计数)。 如果数组中不存在该元素,则返回 -1 -…

【C++从0到王者】第二站:类和对象(上)

文章目录 一、面向过程与面向对象二、类的引入三、类的访问限定符四、类的定义五、封装六、类的作用域七、类的实例化八、类对象模型1.如何计算类对象的大小2.类对象存储方式猜测 九、this指针1.this指针的引出2.this指针的特性 一、面向过程与面向对象 C语言是面向过程的&…

Web2与Web3开发的不同之处

Web2是引入交互功能的第二代互联网,也是我们今天所熟悉的。随着Web的不断发展,第三代互联网,也被称为Web3,正处于积极开发中。Web3引入了在区块链上运行的去中心化和无需许可的系统。但是Web2和Web3开发之间有什么区别呢&#xff…

23.5.1总结

这几天都在写项目: 在实现页面,调用数据库的时候,总是把数据库的表改了又改,然后完善了下数据库的表。 存储的思路大概是: 一个课程下可以有多个班级,所以以课程id作为主键建一个表,内容包括…

在win11搭建ubuntu目标机器的QT开发环境的实践

环境: 笔记本电脑 16G内存 win11 尝试wsl的方案: wsl2 ubuntu gnome xrdp wsl安装ubuntu并设置gnome图形界面详细步骤(win11ubuntu18)_heusjh的博客-CSDN博客 wsl2 ubuntu gnome VcXsrv Windows中WSL2 配置运行GNOM…

Centos7快速安装Elasticsearch 7.17.7

从 Elasticsearch 7.x 版本开始,Elasticsearch 发行版包括了自己的 JDK。因此,您不需要单独安装 Java。以下是在 CentOS 7 上安装 Elasticsearch 7.17.7 的完整步骤:(数据默认保存在/var/lib/elasticsearch下,自行更改…

vmware安装arch linux

vmware安装arch linux 1、下载镜像2、安装2.1、VMware 系统版本选择 其他Linux 5.x 内核 64位2.2、进行磁盘分区 3、重启系统后登录进来发现没有地址 由于安装系统时没有安装任何软件 只安装了1个vim 无法动态获取地址4、安装必需的软件 最小化安装5、编辑/etc/ssh/sshd_config…

【Python】flask框架学习 flask框架的基本使用

flask框架是什么? Flask 是一个轻量级的 Web 框架,用于构建 Web 应用程序。它基于 Python 编程语言和 Werkzeug 工具包,提供了简单易用的 API,可以轻松地创建 RESTful API 和 Web 应用程序。 flask的特点 轻量级:Fl…

学会这些常用调试技巧,让你的C/C++代码调试起来如虎添翼

本篇博客主要讲解程序员最应该掌握的技能之一——调试。我个人认为,学习编程,有2件事情非常重要,一是画图,一是调试。下面我会以Visual Studio 2022为例(VS的其他版本大同小异),演示如何调试一个…

怎么体验gpt4-国内怎么使用chatGPT

gpt4api要等多久 目前,OpenAI尚未公布GPT-4 API的发布计划和时间表。GPT-4 将是前置还增加强大的自然语言处理能力和推理能力,OpenAI正在为其开发和研究,以使其更加流畅、准确和智能。因此,GPT-4 API的发布时间尚未确定。但是&am…

云原生Istio安装和使用

目录 1 Kubernetes集群环境2 安装Istio2.1 快速部署Istio2.2 回顾K8S组件以及使用2.2.1 Deployment2.2.2 Labels and Selectors2.2.3 Namespace2.2.4 Service2.2.5 Ingress 2.3 初步感受istio2.4 手动注入2.5 自动注入sidecar 1 Kubernetes集群环境 Istio支持在不同的平台下安装…

华为OD机试真题(Java),计算字符串的编辑距离(100%通过+复盘思路)

一、题目描述 Levenshtein 距离,又称编辑距离,指的是两个字符串之间,由一个转换成另一个所需的最少编辑操作次数。许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字符。编辑距离的算法是首先由…

STM32CubeMX时钟树配置详解(F103)

外部时钟配置 学习时使用的是stm32f103系列芯片,文档的时钟树属实不适合新手阅读,STM32cube的功能很强大,时钟树清晰明了: 首先我们要知道,芯片需要一个频率来进行工作,通常选用的是晶振来提供工作频率&a…

数据存储系统概要

可靠、可扩展与可维护性 现在有很多都属于数据密集型,而不是计算密集型。对于这些类型应用,CPU的处理能力往往不是第一限制性因素,关键在于数据量、数据的复杂度及数据的快速多边形。 数据密集型应用模块: 数据库:存…

不会JVM调优怎么进互联网大厂

📣📣📣📣📣📣📣 🎍大家好,我是慕枫 🎍前阿里巴巴高级工程师,InfoQ签约作者、阿里云专家博主,一直致力于用大白话讲解技术知识 &#x…

设计模式七大设计原则

文章目录 1、什么是设计模式2、单一职责原则3、开闭原则4、接口隔离原则5、依赖倒置原则6、迪米特法则(最少知道原则)7、里式替换原则8、组合优于继承 设计模式主要是为了满足一个字 变,这个字,可能是需求变更、可能是场景变更&a…

【VAR | 时间序列】以美国 GDP 和通货膨胀数据为例的VAR模型简单实战(含Python源代码)

以美国 GDP 和通货膨胀数据为例: 1. 数据集 下载数据我们需要从 FRED 数据库下载美国 GDP 和通货膨胀数据,并将它们存储在 CSV 文件中。可以在 FRED 网站(https://fred.stlouisfed.org/)搜索并下载需要的数据。在这里&#xff0…