一种基于输入数据压缩表示关联分析的数据融合防篡改方法转让专利

申请号 : CN201910388263.7

文献号 : CN110135196B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张丽霞李文越刘利民王慧

申请人 : 内蒙古工业大学

摘要 :

本发明提供一种基于输入数据压缩表示关联分析的数据融合防篡改方法,该方法包括一种网络节点数据特征压缩机制,对原始输入数据输入进行压缩表示数据特征,保证数据表示精度,屏蔽不同数据类型的差异性;该方法包括一种基于Boost原则的子数据集收集方法,该方法将数据集进行有放回等概率的合理划分,构成训练子分类器的输入数据向量;该方法包括基于Adaboost的子分类器及篡改检测模型构建方法,利用划分的子数据集训练子分类器,最后组合子分类器搭建AdaBoost分类器对相关网络节点数据向量类型进行预测,应用多是投票原理作出最终预测结果,并利用这一机制快速识别篡改数据融合结果,防范恶意数据融合操作。

权利要求 :

1.一种基于输入数据压缩表示关联分析的数据融合防篡改方法,其特征在于,包括如下步骤:步骤1),网络节点数据特征压缩:对网络节点原始输入数据进行压缩表示数据特征,以保证数据表示精度,屏蔽不同数据类型的差异性;

步骤2),基于Boost原则进行子数据集收集:将网络节点原始输入数据的压缩表示结果与融合结果拼接为向量作为真实数据,并构建反例同真实数据一同构成数据集;将数据集进行有放回等概率划分为s个子数据集,构成训练子分类器的输入数据向量;

所述步骤1)具体包括:

步骤1.1),应用哈希函数将原始输入数据进行压缩映射入布隆过滤器中;

步骤1.2),组合不同时隙的多个布隆过滤器压缩数据的表示结果;

所述步骤2)具体包括:

步骤2.1),拼接向量并构建反例,同真实数据一同构成数据集;

步骤2.2),以相同概率有放回抽取数据向量以便构建子数据集;

所述步骤2.1)中,将网络节点原始输入数据的压缩表示结果与融合结果拼接为向量,拼接向量由网络节点对应的布隆过滤器中的比特数组和网络节点数据融合结果组合而成,作为正向数据向量并加入数据集中,同时,人为篡改融合结果,同网络节点原始输入数据的压缩表示结果拼接成向量,作为反向数据向量加入数据集;

所述步骤2.2)中,以相同概率有放回抽取数据集中的数据向量以便构建子数据集,数据集规模为x,以相同概率依次从数据集中抽取数据向量加入子数据集,直到子数据集规模达到x,完成该子数据集的构建,共s个子数据集;

所述融合结果是网络节点在收集到原始输入数据后,采用融合技术对数据进行融合得到,具体操作是对数据进行冗余,所述拼接是将压缩表示结果连在融合结果后面;

步骤3),基于Adaboost的子分类器及篡改检测模型构建:利用划分的s个子数据集训练子分类器,组合子分类器搭建AdaBoost分类器对相关网络节点数据向量类型进行预测,最后应用多数投票原理作出最终预测结果,并快速识别篡改数据融合结果,防范恶意数据融合操作;

所述步骤3)具体包括:

步骤3.1),对子数据集进行权值初始化;

步骤3.2),利用支持向量机搭建AdaBoost子分类器;

步骤3.3),应用多数投票原理构建预测结果形成机制。

2.根据权利要求1所述基于输入数据压缩表示关联分析的数据融合防篡改方法,其特征在于,所述步骤1.1)中,收集每个时隙h个感知实体接受的原始输入数据,定义h个比特数组,利用h个布隆过滤器组分别依次记录h个感知实体中数据,每个数组大小为m,构造k个哈希函数,依次利用k个哈希函数分别对记录在h个布隆过滤器中的感知实体数据进行映射,将感知实体数据中n个元素映射成比特数组(Bit array)中n个点,命中单元置1;

所述步骤1.2)中,将h个感知实体对应的h个布隆过滤器压缩表示结果进行组合,作为本时隙网络节点数据的压缩表示结果。

3.根据权利要求2所述基于输入数据压缩表示关联分析的数据融合防篡改方法,其特征在于,所述原始输入数据取值范围决定布隆过滤器单元数量,布隆过滤器单元数量、预期失误率和输入数据大小满足如下计算公式:其中,m表示布隆过滤器单元数量,n表示原始输入数据容量,p为预期失误率。

4.根据权利要求1所述基于输入数据压缩表示关联分析的数据融合防篡改方法,其特征在于,所述步骤3.1),依次统计篡改数据向量和正常数据个数,依次对子数据集进行权值初始化;

所述步骤3.2),构造第i个子分类器时,选用第i个子数据集,利用最大欧式距离从输入数据中确定输入数据间距离最大的两个输入数据向量,以这两个向量为支撑向量对其他数据向量进行聚簇,形成子分类器,依次计算子分类器和子数据集权重并存储到数据结构中,用于构建下一个子分类器,最后将构建的所有子分类器进行组合形成AdaBoost分类器;

所述步骤3.3),利用多数投票原理对子分类器的结果进行汇总,形成完整的分类器,实现对输入数据和融合结果关系的建模,以便完成对虚假数据融合结果的检测。

说明书 :

一种基于输入数据压缩表示关联分析的数据融合防篡改方法

技术领域

[0001] 本发明属于物联网数据安全技术领域,特别涉及一种基于输入数据压缩表示关联分析的数据融合防篡改方法。

背景技术

[0002] 作为互联网的延伸和扩展,物联网是信息技术领域又一重大变革。物联网的基本特征是信息全面感知、可靠传送和智能处理。物理信息通过传感设备获取,并通过网络传输到相关服务节点,实现人-物、物-物互联,实现物理世界实体智能化识别、定位、跟踪、监控和管理。
[0003] 物联网是由各种不同支撑技术组合而成的异构体系结构;异构网络在物联网中产生数量庞大冗余信息,占用大量网络资源,异构数据整合成为亟待解决的问题,而数据融合是解决这个问题的有效手段。数据融合又称作信息融合或多传感器数据融合,是对物联网多源异构数据进行综合处理获取确定性信息的过程。物联网的感知层和接入层,用来收集智能终端、传感器、RFID阅读器和标签数据,并进行整合,提交给应用层。
[0004] 在物联网感知网络中,对感知数据进行融合处理,只将少量有意义信息传输到汇聚节点,可以有效减少数据传输量,降低中间节点功耗,提升相关节点的在线时间。但是,由于下游节点在融合前没有保存数据,即使融合结果被篡改,这些节点也无法发现和定位对数据融合结果的篡改攻击。大量节点中其中一个被病毒攻击而导致信息更改,节点在进行融合时对正常信息和被篡改信息难以分辨。数据融合节点位于物联网进行信息感知的核心位置,一旦融合信息被破坏,使用物联网用户就会做出错误行为。
[0005] 在现阶段保证物联网安全数据融合主要通过以下方法:
[0006] 通过一些加密传输手段提高数据在传输过程中安全性。但这一途径存在明显缺点:在数据融合过程中相关节点需要根据特定加解密算法处理文本,数据融合及处理效率低下。若解密后数据被窃取后,整个网络安全性明显下降。一些安全融合机制来抵制一些恶意攻击,需要大量冗余数据处理和传输,效率低下。

发明内容

[0007] 为了克服上述现有技术的缺点,更好地维护物联网的安全,通过对传感器网络安全机制和以往安全数据融合方案分析研究,本发明的目的在于提供一种基于输入数据压缩表示关联分析的数据融合防篡改方法,能够有效保障物联网数据融合结果的安全。
[0008] 为了实现上述目的,本发明采用的技术方案是:
[0009] 一种基于输入数据压缩表示关联分析的数据融合防篡改方法,其特征在于,包括如下步骤:
[0010] 步骤1),网络节点数据特征压缩:对网络节点原始输入数据进行压缩表示数据特征,以保证数据表示精度,屏蔽不同数据类型的差异性;
[0011] 步骤2),基于Boost原则进行子数据集收集:将网络节点原始输入数据的压缩表示结果与融合结果拼接为向量作为真实数据,并构建反例同真实数据一同构成数据集;将数据集进行有放回等概率划分为s个子数据集,构成训练子分类器的输入数据向量;
[0012] 步骤3),基于Adaboost的子分类器及篡改检测模型构建:利用划分的s个子数据集训练子分类器,组合子分类器搭建AdaBoost分类器对相关网络节点数据向量类型进行预测,最后应用多数投票原理作出最终预测结果,并快速识别篡改数据融合结果,防范恶意数据融合操作。
[0013] 所述步骤1)具体包括:
[0014] 步骤1.1),应用哈希函数将原始输入数据进行压缩映射入布隆过滤器中;
[0015] 步骤1.2),组合不同时隙的多个布隆过滤器压缩数据的表示结果。
[0016] 所述步骤1.1)中,收集每个时隙h个感知实体接受的原始输入数据,定义h个比特数组,利用h个布隆过滤器组分别依次记录h个感知实体中数据,每个数组大小为m,构造k个哈希函数,依次利用k个哈希函数分别对记录在h个布隆过滤器中的感知实体数据进行映射,将感知实体数据中n个元素映射成比特数组(Bit array)中n个点,命中单元置1;
[0017] 所述步骤1.2)中,将h个感知实体对应的h个布隆过滤器压缩表示结果进行组合,作为本时隙网络节点数据的压缩表示结果。
[0018] 所述原始输入数据取值范围决定布隆过滤器单元数量,布隆过滤器单元数量、预期失误率和输入数据大小满足如下计算公式:
[0019]
[0020] 其中,m表示布隆过滤器单元数量,n表示原始输入数据容量,p为预期失误率。
[0021] 所述步骤2)具体包括:
[0022] 步骤2.1),拼接向量并构建反例,同真实数据一同构成数据集;
[0023] 步骤2.2),以相同概率有放回抽取数据向量以便构建子数据集。
[0024] 所述步骤2.1)中,将网络节点原始输入数据的压缩表示结果与融合结果拼接为向量,拼接向量由网络节点对应的布隆过滤器中的比特数组和网络节点数据融合结果组合而成,作为正向数据向量(即前述真实数据)并加入数据集中,同时,人为篡改融合结果,同网络节点原始输入数据的压缩表示结果拼接成向量,作为反向数据向量加入数据集;
[0025] 所述步骤2.2)中,以相同概率有放回抽取数据集中的数据向量以便构建子数据集,数据集规模为x,以相同概率依次从数据集中抽取数据向量加入子数据集,直到子数据集规模达到x,完成该子数据集的构建,共s个子数据集。
[0026] 所述融合结果是网络节点在收集到原始输入数据后,采用融合技术对数据进行融合得到,具体操作主要是对数据进行冗余,所述拼接是将压缩表示结果连在融合结果后面。
[0027] 所述步骤3)具体包括:
[0028] 步骤3.1),对子数据集进行权值初始化;
[0029] 步骤3.2),利用支持向量机搭建AdaBoost子分类器;
[0030] 步骤3.3),应用多数投票原理构建预测结果形成机制。
[0031] 所述步骤3.1),依次统计篡改数据向量和正常数据个数,依次对子数据集进行权值初始化;
[0032] 所述步骤3.2),构造第i个子分类器时,选用第i个子数据集,利用最大欧式距离从输入数据中确定输入数据间距离最大的两个输入数据向量,以这两个向量为支撑向量对其他数据向量进行聚簇,形成子分类器,依次计算子分类器和子数据集权重并存储到数据结构中,用于构建下一个子分类器,最后将构建的所有子分类器进行组合形成AdaBoost分类器;
[0033] 所述步骤3.3),利用多数投票原理对子分类器的结果进行汇总,形成完整的分类器,实现对输入数据和融合结果关系的建模,以便完成对虚假数据融合结果的检测。
[0034] 与现有技术相比,本发明克服了物联网网络数据融合潜在不确定性,利用基于布隆过滤器压缩表示机制处理输入数据,屏蔽不同数据类型差异性。由此搭建的基于输入数据压缩表示结果分析的数据融合防篡改机制对虚假信息区分度更高。采用该方法可以更客观、更准确地防止数据发生篡改,为物联网数据融合提供安全机制,有效维护物联网的网络安全和良好性能的运转。

附图说明

[0035] 图1为基于输入数据压缩表示关联分析数据融合防篡改机制示意图。

具体实施方式

[0036] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图对本发明作进一步详细说明。应当理解,此处所作详细说明仅仅用以解释本发明,并不用于限定本发明。
[0037] 图1给出了根据本发明一个实施例的数据融合防篡改机制流程图,概括来讲,该方法包括:
[0038] 步骤1),网络节点数据特征压缩:对网络节点原始输入数据进行压缩以表示数据特征,从而保证数据表示精度,屏蔽不同数据类型的差异性,具体包括:
[0039] 步骤1.1),应用哈希函数将原始输入数据进行压缩映射入布隆过滤器中。
[0040] 首先,t1时隙收集h个感知实体接受的原始输入数据{input11,t1,...inputi1,t1,inputh1,t1},并分别依次记录在h个布隆过滤器中,利用h个布隆过滤器组分别依次记录h个感知实体中数据。定义h个比特数组,每个数组大小为m,每个数组中的比特位初始化为0。其次,构造k个Hash函数,依次利用k个哈希函数分别对记录在h个布隆过滤器中的感知实体中n个数据进行映射,用k个哈希函数计算出n个映射值并寻找比特数组(Bit array)中对应的单元将其置1。
[0041] 在图1中,原始输入数据取值范围决定布隆过滤器单元数量,布隆过滤器单元数量、预期失误率和输入数据大小满足如下计算公式:
[0042]
[0043] 其中,m表示布隆过滤器单元数量,n表示原始输入数据容量,p为预期失误率。
[0044] 步骤1.2),组合不同时隙的多个布隆过滤器压缩数据的表示结果,将h个感知实体对应的h个布隆过滤器压缩表示结果进行组合,作为本时隙网络节点数据的压缩表示结果。
[0045] 具体地,将上一个数据融合的输出与下一个数据融合输出之前经过的t1到t3时隙作为一个检测周期p,其中检测周期p的设置根据网络节点{a,b...n}的数据融合结果F的平均生成时隙确定。将t1到t3时隙对应的一个周期p中的h个布隆过滤器压缩表示结果和网络节点{a,b...n}的数据融合结果F进行组合,完成网络节点原始输入数据特征的压缩表示。
[0046] 步骤2),基于Boost原则的子数据集收集:将网络节点原始输入数据的压缩表示结果与融合结果F拼接为向量作为真实数据,并构建反例同真实数据一同构成数据集;将数据集进行有放回等概率划分为s个子数据集,构成训练子分类器的输入数据向量,具体包括:
[0047] 步骤2.1),拼接向量并构建反例,同真实数据一同构成数据集。
[0048] 将网络节点原始输入数据的压缩表示结果与融合结果F拼接为向量,拼接向量由网络节点对应的布隆过滤器中的比特数组和网络节点数据融合结果F组合而成,作为正向数据向量并加入数据集中,同时,对融合结果F加入人为篡改后和压缩表示结果拼接为向量,作为反向数据向量,并加入数据集中,数据集的数据规模为x。本发明中采用的人为篡改方法是:应用高斯正态分布对融合结果F加入gauss噪声,其中,gauss噪声的均值和方差为mu=0;sigma=0.12;
[0049] 其中,融合结果是网络节点在收集到原始输入数据后,采用融合技术对数据进行融合得到,具体操作主要是对数据进行冗余,所述拼接是将压缩表示结果连在融合结果后面。
[0050] 步骤2.2),以相同概率有放回抽取数据向量以便构建子数据集。
[0051] 以相同概率有放回抽取数据集中的数据向量,依次加入到s个子数据集{d1,d2...ds}中,直到每个子数据集的规模达到x,完成该子数据集的构建,共s个子数据集,利用构建的s个子数据集{d1,d2...ds}作为训练对应子分类器的输入数据。
[0052] 步骤3),基于Adaboost的子分类器及篡改检测模型构建:利用划分的s个子数据集训练子分类器,组合子分类器搭建AdaBoost分类器对相关网络节点数据向量类型进行预测,最后应用多数投票原理作出最终预测结果,并快速识别篡改数据融合结果,防范恶意数据融合操作,具体包括:
[0053] 步骤3.1),依次统计篡改数据向量和正常数据个数,依次对子数据集进行权值初始化。
[0054] 对上述步骤2)的s个子数据集{d1,d2...ds}的权值进行初始化。训练子分类器对应的输入子数据集中被篡改数据向量的个数记为bn,正常数据向量的个数为gn,初始化子数据集权值计算公式如下:
[0055]
[0056] 其中,Di[0]表示子数据集的初始权值。
[0057] 步骤3.2),利用支持向量机搭建s个AdaBoost子分类器。
[0058] 构造第i个子分类器时,选用第i个子数据集,应用最大欧式距离从输入数据向量中确定数据间距离最大的两个数据向量,以这两个向量为支撑对其他数据向量进行聚簇,最终形成子分类器后计算子分类器的错误率,其计算公式如下:
[0059]
[0060] 其中,Errorrate表示子分类器的错误率,h(di)是第i个子分类器的预测函数,type(di)表示第i个数据向量类型标记。
[0061] 根据上述子分类器的错误率,计算子分类器的权重,其计算公式如下:
[0062]
[0063] 其中,Weighti表示第i个子分类器权重。利用子分类器权重依次计算子数据集的新权值,并用于构建下一个子分类器,其计算公式如下:
[0064]
[0065] 其中,Di[j+1]表示第i个子数据集的新权值,Z是归一化因子。假设数据向量i的类型和分类器对数据向量预测的类型相同,则type(di)*h(di)等于1,否则等于-1。然后将得到的s个子分类器进行组合,并搭建AdaBoost分类器,其计算公式如下:
[0066]
[0067] 步骤3.3),应用多数投票原理构建预测结果形成机制。
[0068] 利用多数投票原理对子分类器的结果进行汇总,形成完整的分类器,实现对输入数据和融合结果关系的建模,以便完成对虚假数据融合结果的检测。使用时调用AdaBoost分类器函数对输入的数据向量进行预测,计算公式如下:
[0069]
[0070] 其中N(H)表示数据向量发生篡改的个数;T(H)表示正常数据的个数;R是篡改检测模型的最终预测结果。
[0071] 在本发明的一个具体实施例中,包括了如下步骤:
[0072] 步骤1)首先,应用h个布隆过滤器依次记录一个周期p中(t1到t3时隙)网络节点原始输入数据,其中,原始输入数据来源于多个城市和家庭的设备信息,主要包括热水器、空调和居家机器人三类设备的水温、湿度和耗电量等数据,数据最大收集间隔为10秒钟。提取并采用200个实体(70台空调,70台热水器和60台家居机器人)为期10分钟的原始输入数据,每项原始输入数据都包括设备报告的水温、湿度、和现有电量数据同相关决策状态(融合结果)的组合。采用构造的k个Hash函数分别对记录在h个布隆过滤器中的输入数据进行映射,包括构造hash冲突,依次存储在h个比特数组中,寻找数组中对应的比特单元并将其置1,完成实体水温、湿度、和现有电量数据的压缩表示。
[0073] 步骤2)将上述水温、湿度和耗电量等原始输入数据的压缩表示结果与网络节点的相关决策状态F(融合结果)拼接为向量构成正向数据,同时对融合结果F加入人为篡改后,与压缩结果拼接为向量构成反向数据,共同构成数据集,数据集的规模为10000。
[0074] 步骤3)应用等概率有放回抽取方式将数据集划分为6个子数据集,子数据集具体信息如下:
[0075] 表1子数据集信息
[0076] Datasets Time period SizeDS_10 10minutes 10000
DS_20 20minutes 10000
DS_30 30minutes 10000
DS_40 40minutes 10000
DS_50 50minutes 10000
DS_60 60minutes 10000
[0077] 利用这六个子数据集构建相应的子分类器。首先,对上述步骤2)划分的6个子数据集进行权值初始化。然后,利用支持向量机算法构建6个子分类器,其中,用表1中DS_10子数据集完成训练第一个子分类器后,采用上述公式(4)(5)(6)依次计算该子分类器的权重并得到子数据集DS_20的权值,用于构建下一个子分类器,相应的子分类器构建完成后,继续计算DS_30的权值,以此类推。采用上述公式(7)将构建的6个子分类器进行组合,搭建AdaBoost分类器,最后,利用公式(8)检测特定时间周期内实体对应数据向量关联的融合结果的真假。