利索能及
我要发布
收藏
专利号: 2018112500444
申请人: 中南民族大学
专利类型:发明专利
专利状态:已下证
更新日期:2026-07-01
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种基于网络轨迹的安全协议格式的挖掘方法,其特征在于,包括:消息划分步骤和分隔符分离步骤,其中,消息划分步骤具体包括:

步骤S1:基于消息轨迹采用最长公共子序列的文本比较算法获得协议关键词元组,基于所述协议关键词元组,采用滑动窗口方法输出关键词分布数组,并基于关键词分布数组获得关键词一阶分布;

步骤S2:根据所述关键词分布数组和关键词一阶分布,判断是否存在极值,如果存在则执行步骤S3,否则执行步骤S4;

步骤S3:根据所述协议关键词元组、关键词分布数组、关键词一阶分布,采用预设关键词统计方法,合并相似关键词,然后将相似关键词输入基于余弦相似度方法中,计算所有协议消息的相似度,选择平均相似度最高的消息作为中心消息,采用中心消息的关键词将消息划分为子消息,输出子消息、关键词的概率及相对位置,并将输出作为步骤S1的输入,直到步骤S2中不存在极值;

分隔符分离步骤具体包括:

步骤S4:采用基于树的字符串比对方法,比较每个关键词的首尾,通过寻找最多遍历路径分离出分隔符。

2.如权利要求1所述的方法,其特征在于,输入的安全协议消息为,Message为输入的安全协议消息数组,n为消息数组的最大个数,步骤S1具体包括:步骤S1.1:从n个消息中随机抽取m个消息,m为偶数,求MNum个消息的长度并按照从小到大排列,然后依次两两分组,获得m/2个分组;

步骤S1.2:采用最长公共子序列的文本比较算法对m/2个分组进行比对,得到公共序列,以公共序列中的连续字符为关键词Key,计算Key到消息头部的绝对位置Location、Key与绝对位置与消息总长度的比值PLocation,并获得协议关键词元组,其中,关键词元组为五元组,Num为公共字符串编号,Key为关键词,KNum为公共字符串中关键词Key的编号;

步骤S1.3:根据关键词五元组和滑动窗口法,获得关键词分布数组D[i],其中,D[i]表示相对位置分布落在[i-L,i+L]的Key的个数,i为相对位置,L为滑动窗口长度;

步骤S1.4:根据关键词分布数组D[i]和计算公式D[i+1]-D[i]=D1[i],获得一阶关键词分布D1[i]。

3.如权利要求2所述的方法,其特征在于,步骤S2具体包括:

步骤S2.1:将步骤S1获得的关键词分布数组和关键词一阶分布输入预设判别器,通过一阶分布和极值点判别方法寻找极值点;

步骤S2.2:判断极值点是否满足判别条件,如果不满足,判别器输出false且执行步骤S4,如果满足,判别器输出true,输出极值点分布M[i],并执行步骤S3,其中,M[i]表示相对位置i处存在的极值。

4.如权利要求3所述的方法,其特征在于,步骤S3具体包括:

步骤S3.1:输入关键词五元组和极值点分布M[i],通过预设关键词统计方法,统计[T-PL,T+PL]区间内关键词种类及其数量,合并相似的不同类的关键词,最终输出关键词分布五元组,其中,T为从PM[i]中取出的极值,PM[i]为从M[i]中取出极值点并转化成的关键词概率分布,PM[i]用以表征在极值点i处不同Key的出现概率,PL为以极值T为中心选取的预设长度区间,所述关键词分布五元组表示在区间[T-PL,T+PL]中关键词Key的出现次数为KNum,出现频率为KRate;

步骤S3.2:将关键词分布五元组输入到余弦相似度方法中,两两计算不同消息的相似度,并选择平均相似度最大的消息作为中心消息并输出,然后采用中心消息所包含的关键词对所有消息进行划分,输出子消息,子消息的格式为其中,SMNum为指向子消息所属的源消息,然后将SubMessage输入到步骤S1。

5.如权利要求1所述的方法,其特征在于,步骤S4具体包括:

步骤S4.1:分别从输入的关键词中抽取出关键字前缀和关键字后缀;

步骤S4.2:将抽取出的关键字前缀和关键字后缀输入基于树的字符串比对方法进行两两对比,将路径权值最大的字符串作为输出,将其作为分隔符。

6.如权利要求4所述的方法,其特征在于,步骤S3.2具体包括:

S3.2.1:输入消息message,关键词集Key以及Key对应的频率KRate;

S3.2.2:对于每一条message对应的四元组,在对应的四元组中搜索关键词集Key中的每一个关键词,对一条消息的每个Key输出四元组,如果Key不存在则KRate为空;

S3.2.3:对四元组采用TF-IDF加权法,TF表示词频,IDF表示词的权重,DF(w)表示含有词w的消息条数,N表示消息总条数,C为常数,值为loge(N+0.01),其中TF=KRate,w=Key,N=Num,并且对于每一个Key搜索包含该Key的消息的数目DF(w);

S3.2.4:根据式(1)计算权重IDF,根据式(2)计算词w的权重weight(w);

Weight(w)=TF*IDF   (式2)

S3.2.5:对每条消息,对消息中包的关键词,采用余弦相似度方法,两两计算余弦相似度,然后求出平均余弦相似度,并找出平均余弦相似度最高的消息,并作为中心消息,其中,S和T的相似度的计算公式如式3所示:其中,S和T表示两条消息的关键词w数组,Wi表示权重Weight。

7.一种基于网络轨迹的安全协议格式的挖掘装置,其特征在于,包括:消息划分模块和分隔符分离模块,其中,消息划分模块具体用于执行步骤S1~步骤S3,

步骤S1:基于消息轨迹采用最长公共子序列的文本比较算法获得协议关键词元组,基于所述协议关键词元组,采用滑动窗口方法输出关键词分布数组,并基于关键词分布数组获得关键词一阶分布;

步骤S2:根据所述关键词分布数组和关键词一阶分布,判断是否存在极值,如果存在则执行步骤S3,否则执行步骤S4;

步骤S3:根据所述协议关键词元组、关键词分布数组、关键词一阶分布,采用关键词统计方法,合并相似关键词,然后将相似关键词输入基于余弦相似度方法中,计算所有协议消息的相似度,选择平均相似度最高的消息作为中心消息,采用中心消息的关键词将消息划分为子消息,输出子消息、关键词的概率及相对位置,并将输出作为步骤S1的输入,直到步骤S2中不存在极值;

分隔符分离模块具体用于执行步骤S4,

步骤S4:采用基于树的字符串比对方法,比较每个关键词的首尾,通过寻找最多遍历路径分离出分隔符。

8.如权利要求7所述的装置,其特征在于,输入的安全协议消息为,Message为输入的安全协议消息数组,n为消息数组的最大个数,消息划分模块还用于执行步骤S1.1~S1.4,步骤S1.1:从n个消息中随机抽取m个消息,m为偶数,求MNum个消息的长度并按照从小到大排列,然后依次两两分组,获得m/2个分组;

步骤S1.2:采用最长公共子序列的文本比较算法对m/2个分组进行比对,得到公共序列,以公共序列中的连续字符为关键词Key,计算Key到消息头部的绝对位置Location、Key与绝对位置与消息总长度的比值PLocation,并获得协议关键词元组,其中,关键词元组为五元组,Num为公共字符串编号,Key为关键词,KNum为公共字符串中关键词Key的编号;

步骤S1.3:根据关键词五元组和滑动窗口法,获得关键词分布数组D[i],其中,D[i]表示相对位置分布落在[i-L,i+L]的Key的个数,i为相对位置,L为滑动窗口长度;

步骤S1.4:根据关键词分布数组D[i]和计算公式D[i+1]-D[i]=D1[i],获得一阶关键词分布D1[i]。

9.如权利要求8所述的装置,其特征在于,消息划分模块还用于执行步骤S2.1~S2.2,步骤S2.1:将步骤S1获得的关键词分布数组和关键词一阶分布输入预设判别器,通过一阶分布和极值点判别方法寻找极值点;

步骤S2.2:判断极值点是否满足判别条件,如果不满足,判别器输出false且执行步骤S4,如果满足,判别器输出true,输出极值点分布M[i],并执行步骤S3,其中,M[i]表示相对位置i处存在的极值。

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被执行时实现如权利要求1至6中任一项权利要求所述的方法。