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

基于时隙的多重冗余流指纹模型

文章信息

论文题目:基于时隙的多重冗余流指纹模型
期刊(会议):网络与信息安全学报
时间:2023
级别:CCF C

概述

为确保内生网络流量安全可信,本文在研究流水印及其扩展的流指纹机制的基础上,提出了一种改进型的基于时隙的多重冗余流指纹模型,设计实现了一个基于内核的流指纹原型系统,并阐述了该流指纹模型的应用场景。

相关工作

根据流标记的嵌入位置(或称载 波特征),流水印或流指纹机制可划分为三大类: 基于数据包内容、基于流速率、基于时间。典型 流水印/流指纹载波特征如表1所示。
image.png

指纹模型设计与实现

模型设计

冗余编码:每一比特的指纹都连续重复n次,如当n为3时,0重复为 000,1重复为111,由于数据流在传输过程会遭受自然的抖动或恶意的攻击,所以在接收端提取指纹时,认为连续的两个相同的比特即最终结果,如001、100、000都解码为0,110、011、 111都解码为1。
除了考虑每一比特的冗余外,为了防止重复比特之间的干扰,还可以考虑将整个比特重复r次,如指纹比特若为1001,当r为3时,则编码为1001 1001 1001。

流指纹嵌入过程如图1所示。
image.png

在嵌入端,用随机函数生成指纹序列后,对每一位指纹比特进行处理。在流的时间偏移量起始处,将流的一部分划分为连续的多个相同的时间间隔,依次每3个连续的时间间隔T对应一位指纹比特,操作每3个时间间隔的前两个,实现比特嵌入,如指纹比特为“0”时,只需将第一个时间间隔内的数据包延迟到第二个时间间隔内发送;指纹比特为“1”时,需将第二个时间间隔内的数据包延迟到第3个时间间隔发送。值得注意的是,由于网络中自然的抖动等影响,引入冗余编码r来提高指纹的健壮性。

在提取端,遵循流指纹嵌入方案,按照与发送端相同的时间偏移以及时间间隔划分接收到的流,再比较第一个时间间隔和第二个时间间隔内的数据包数量,如果第一个间隔内的数据包数量大于第二个时间间隔内的数据包,则解码为1,反之应解码为0。

指纹的嵌入和提取步骤可概括为:嵌入端收到流 F i F_{i} Fi,根据该条流的信息用随机函数生成指纹序列 f i f_{i} fi,然后通过操作 F i F_{i} Fi中数据包的发送时间将指纹 f i f_{i} fi嵌入流中。指纹的提取端在收到数据流的第一个数据包开始,记录每个数据包到达的时间,从含有指纹的流 F i ′ F_{i}^{'} Fi中,解码出指纹信息 f i ′ f_{i}^{'} fi,从嵌入指纹 f i f_{i} fi所用的编码时隙中计算得到 Y ˉ r f i ′ \bar{Y}_{r}^{f_{i}^{'}} Yˉrfi的值,将其和0进行比较,得到 Y ˉ r f i ′ \bar{Y}_{r}^{f_{i}^{'}} Yˉrfi为正值表明指纹位是0,若得到负值表明指纹位是1。 Y ˉ r f i ′ \bar{Y}_{r}^{f_{i}^{'}} Yˉrfi表示第二个时隙中数据包数目和3个时间间隔总数据包均值之间的差值在冗余度为r时的均值。

后续通过一些计算表明,增加冗余度r能够提高检测率,以及对恶意干扰(时间延迟干扰、垃圾数据包干扰、丢包干扰)的抵抗能力。

系统实现

指纹系统实现包括应用层和内核层,应用层主要作为交互的界面,进行参数的增加、查询等以及相应流的指纹生成和指纹的冗余编码,内核与应用层之间利用ioctl函数进行交互。流指纹原型系统模块层次如图8所示,具体如下:

  1. 系统初始化:包括设定模块运行模式、初始化参数。
  2. 参数设置模块:流指纹的参数应该在嵌入端和提取端协商共享参数,本文设计时简化了双方的协商,在两端分别设定同样的参数。
  3. 指纹编解码模块:设定参数后,设定不同的运行模式,对流进行指纹的编码和解码。
  4. 数据包管理模块:按照指定的规则对数据包进行捕获,发送给指纹的嵌入/提取模块。
  5. 指纹的嵌入/提取模块:根据生成的指纹序列,更改数据包发送的时间。

image.png

模型评估与应用

模型评估

为对模型进行评估,本文搭建如图9所示的网络拓扑进行实验。用户1、用户2为两个实体笔记本终端,分别运行iperf3软件,从而在两端产生交互的流量以用于流指纹的嵌入和提取;其余路由器节点使用VMware搭建的虚拟节点;各个路由器节点之间运行OSPF路由协议。在接入网关1上实施指纹的嵌入,接入网关2、3上进行指纹的提取。中间路由器R322在实验中利用TC(traffic control)模拟网络中的延迟丢包等干扰行为。
在两个终端上使用iperf3进行TCP流量的传输,用户1是发送端,用户2和用户2’是接收端。iperf3通过不同端口发送10条流,带宽为60 Mbit/s。 在实验评估中,测试了两种场景。场景1中流指纹传递跨越一个路由器(不包含嵌入端和提取端,标记为 R=1),即只在图9中的区域1内传递。场景2中流指纹传递跨越4个路由器(标记为 R=4),即从区域1传递到区域 2。在两种场景下,启用与嵌入提取无关的背景流(用 bf 表示)验证,其中有6条VLC播放器的流,4条SSH流,图9中红色箭头表示背景流和iperf3测试流的混合流。
image.png
得到实验结果如下图所示:
image.pngimage.png

image.pngimage.png

image.pngimage.png

image.png

模型应用

用于检测中间人攻击,如下图所示:
image.png

总结

为了支持内生安全的数据可信,本文在基于流水印/指纹机制研究的基础上,设计了一种基于时隙的多重冗余流指纹模型,并对该模型进行了在网络典型干扰(如丢包、延迟等)环境下的评估,设计实现了一个流指纹原型系统,在系统的内核层进行了指纹的编解码、嵌入和提取,并对本文的流指纹模型系统的应用场景进行了阐述。

相关文章:

基于时隙的多重冗余流指纹模型

文章信息 论文题目:基于时隙的多重冗余流指纹模型 期刊(会议):网络与信息安全学报 时间:2023 级别:CCF C 概述 为确保内生网络流量安全可信,本文在研究流水印及其扩展的流指纹机制的基础上&a…...

Visual Studio 2019 C# System.BadImageFormatException 解决方法

文章目录 1.DLL文件缺失或不匹配原因解决方法 2.系统环境变量Path下内容过多原因解决方法 3.位数错误原因解决方法 分析几种可能因素 1.DLL文件缺失或不匹配 原因 检查对应Debug路径下的DLL文件是否有缺失 解决方法 将对应的DLL文件放到Debug文件夹里面,检查冗余…...

深度学习之基于YoloV5车辆和行人目标检测系统

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介YOLOv5 简介YOLOv5 特点 车辆和行人目标检测系统 二、功能三、系统四. 总结 一项目简介 # 深度学习之基于 YOLOv5 车辆和行人目标检测系统介绍 深度学习在…...

Django框架之中间件

目录 一、引入 二、Django中间件介绍 【1】什么是Django中间件 【2】Django中间件的作用 【3】示例 三、Django请求生命周期流程图 四、Django中间件是Django的门户 五、Django中间件详解 六、中间件必须要掌握的两个方法 (1) process_request (2) process_respon…...

BTC 复兴:Ordinals 带来创新活力,BitVM 与 BitStream 相继问世

除了备受瞩目的 ETF,今年 Bitcoin 生态迎来全新的发展活力和机遇。Ordinals 协议的横空出世,以此为基础诞生的 BRC20 协议给整个比特币生态带去了一波新的能量,迎来铭文热度高涨。而诸如 BitVM、BitStream 等新技术甫一问世,便引发…...

STM32 CAN协议讲解以及代码

STM32 CAN 文章目录 STM32 CAN前言一、CAN外设1.主控制寄存器CAN_MCR2.位时序寄存器CAN_BTR3.CAN的发送邮箱4.CAN的接收FIFO5.验收筛选器 二、代码配置1.初始化2.发送数据3.接收数据4.main.c 前言 前面学习了CAN的一些理论知识,他在我们的STM32里面是怎么用的呢 前…...

京东数据分析(京东大数据):2023年10月京东手机行业品牌销售排行榜

鲸参谋监测的京东平台10月份手机市场销售数据已出炉! 根据鲸参谋平台的数据显示,今年10月份,京东平台手机行业的销量约340万,环比增长约11%,同比则下滑约2%;销售额为108亿,环比增长约17%&#x…...

计算机毕业设计 基于Hadoop的物品租赁系统的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍:✌从事软件开发10年之余,专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ 🍅文末获取源码联系🍅 👇🏻 精…...

pop链反序列化 [MRCTF2020]Ezpop1

打开题目 网站源码为 Welcome to index.php <?php //flag is in flag.php //WTF IS THIS? //Learn From https://ctf.ieki.xyz/library/php.html#%E5%8F%8D%E5%BA%8F%E5%88%97%E5%8C%96%E9%AD%94%E6%9C%AF%E6%96%B9%E6%B3%95 //And Crack It! class Modifier {protected …...

yolov5从英伟达平台移植到华为昇腾开发板上的思路

作者&#xff1a;朱金灿 来源&#xff1a;clever101的专栏 为什么大多数人学不会人工智能编程&#xff1f;>>> 最近需要将yolov5代码从英伟达平台移植到华为昇腾开发板上。搜了一些代码和资料&#xff0c;大致明白了二者的差别。 1.二者使用的模型文件不一样 yolov…...

网络运维与网络安全 学习笔记2023.11.25

网络运维与网络安全 学习笔记 第二十六天 今日目标 ACL原理与类型、基本ACL配置、高级ACL配置 高级ACL之ICMP、高级ACL之telnet ACL原理与类型 项目背景 为了企业的业务安全&#xff0c;要求不同部门对服务器有不同的权限 PC1不能访问Server PC2允许访问Server 允许其他所…...

Trustzone/TEE/安全 面试100问

关键词:cache学习、mmu学习、cache资料、mmu资料、arm资料、armv8资料、armv9资料、 trustzone视频、tee视频、ATF视频、secureboot视频、安全启动视频、selinux视频,cache视频、mmu视频,armv8视频、armv9视频、FF-A视频、密码学视频、RME/CCA视频、学习资料下载、免费学习资…...

【数据结构】D : 图的顶点可达闭包

D : 图的顶点可达闭包 Description 给定有向图的邻接矩阵A&#xff0c;其元素定义为&#xff1a;若存在顶点i到顶点j的有向边则A[i,j]1&#xff0c;若没有有向边则A[i,j] 0。试求A的可达闭包矩阵A*&#xff0c;其元素定义为&#xff1a;若存在顶点i到顶点j的有向路径则A*[i,j…...

链表?细!详细知识点总结!

链表 定义&#xff1a;链表是一种递归的数据结构&#xff0c;它或者为空&#xff08;null)&#xff0c;或者是指向一个结点&#xff08;node&#xff09;的引用&#xff0c;该结点含有一个泛型的元素和一个指向另一条链表的引用。 ​ 其实链表就是有序的列表&#xff0c;它在内…...

【数据结构实验】排序(三)快速排序算法的改进(三者取中法)

文章目录 1. 引言2. 快速排序算法2.1 传统快速排序2.2 三者取中法 3. 实验内容3.1 实验题目&#xff08;一&#xff09;输入要求&#xff08;二&#xff09;输出要求 3.2 算法实现 4. 实验结果 1. 引言 快速排序是一种经典的排序算法&#xff0c;其核心思想是通过选择一个基准元…...

【数据结构/C++】栈和队列_顺序栈

#include<iostream> using namespace std; #define MaxSize 10 // 1. 顺序栈 typedef int ElemType; struct Stack {ElemType data[MaxSize];int top; } SqStack; // 初始化栈 void init(Stack &s) {// 初始化栈顶指针s.top -1; } // 入栈 bool push(Stack &s, …...

【数据结构实验】图(一)Warshall算法(求解有向图的可达矩阵)

文章目录 1. 引言2. Warshall算法原理2.0 图的基础知识a. 类型b. 表示 2.1 初始化可及矩阵2.2 迭代更新可及矩阵 3. 实验内容3.1 实验题目&#xff08;一&#xff09;输入要求&#xff08;二&#xff09;输出要求 3.2 算法实现 4. 实验结果 1. 引言 Warshall算法是一种用于求解…...

java协同过滤算法 springboot+vue游戏推荐系统

随着人们生活质量的不断提高以及个人电脑和网络的普及&#xff0c;人们的业余生活质量要求也在不断提高&#xff0c;选择一款好玩&#xff0c;精美&#xff0c;画面和音质&#xff0c;品质优良的休闲游戏已经成为一种流行的休闲方式。可以说在人们的日常生活中&#xff0c;除了…...

Android设计模式--适配器模式

至诚之道&#xff0c;可以前知 一&#xff0c;定义 适配器模式把一个类的接口变换成客户端所期待的另一种接口&#xff0c;从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。 适配器模式在我们的开发中使用率极高&#xff0c;ListView&#xff0c;GridView&am…...

jQuery_06 基本过滤器的使用

什么是过滤器&#xff1f; 过滤器就是用来筛选dom对象的&#xff0c;过滤器是和选择器一起使用的。在选择了dom对象后在进行过滤筛选。 jQuery对象中存储的dom对象顺序与页面标签声明有关系。 声明顺序就是dom中存放的顺序 1.基本过滤器 使用dom对象在数组中的位置来作为过滤条…...

大数据零基础学习day1之环境准备和大数据初步理解

学习大数据会使用到多台Linux服务器。 一、环境准备 1、VMware 基于VMware构建Linux虚拟机 是大数据从业者或者IT从业者的必备技能之一也是成本低廉的方案 所以VMware虚拟机方案是必须要学习的。 &#xff08;1&#xff09;设置网关 打开VMware虚拟机&#xff0c;点击编辑…...

【CSS position 属性】static、relative、fixed、absolute 、sticky详细介绍,多层嵌套定位示例

文章目录 ★ position 的五种类型及基本用法 ★ 一、position 属性概述 二、position 的五种类型详解(初学者版) 1. static(默认值) 2. relative(相对定位) 3. absolute(绝对定位) 4. fixed(固定定位) 5. sticky(粘性定位) 三、定位元素的层级关系(z-i…...

Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持续更新中&#xff01;&#xff08;长期更新&#xff09; 目前2025年06月05日更新到&#xff1a; AI炼丹日志-28 - Aud…...

【git】把本地更改提交远程新分支feature_g

创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...

leetcodeSQL解题:3564. 季节性销售分析

leetcodeSQL解题&#xff1a;3564. 季节性销售分析 题目&#xff1a; 表&#xff1a;sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据 Power Query 具有大量专门帮助您清理和准备数据以供分析的功能。 您将了解如何简化复杂模型、更改数据类型、重命名对象和透视数据。 您还将了解如何分析列&#xff0c;以便知晓哪些列包含有价值的数据&#xff0c;…...

重启Eureka集群中的节点,对已经注册的服务有什么影响

先看答案&#xff0c;如果正确地操作&#xff0c;重启Eureka集群中的节点&#xff0c;对已经注册的服务影响非常小&#xff0c;甚至可以做到无感知。 但如果操作不当&#xff0c;可能会引发短暂的服务发现问题。 下面我们从Eureka的核心工作原理来详细分析这个问题。 Eureka的…...

九天毕昇深度学习平台 | 如何安装库?

pip install 库名 -i https://pypi.tuna.tsinghua.edu.cn/simple --user 举个例子&#xff1a; 报错 ModuleNotFoundError: No module named torch 那么我需要安装 torch pip install torch -i https://pypi.tuna.tsinghua.edu.cn/simple --user pip install 库名&#x…...

[免费]微信小程序问卷调查系统(SpringBoot后端+Vue管理端)【论文+源码+SQL脚本】

大家好&#xff0c;我是java1234_小锋老师&#xff0c;看到一个不错的微信小程序问卷调查系统(SpringBoot后端Vue管理端)【论文源码SQL脚本】&#xff0c;分享下哈。 项目视频演示 【免费】微信小程序问卷调查系统(SpringBoot后端Vue管理端) Java毕业设计_哔哩哔哩_bilibili 项…...

比较数据迁移后MySQL数据库和OceanBase数据仓库中的表

设计一个MySQL数据库和OceanBase数据仓库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较…...