用于随机数发生器安全性检测的预测方法、装置及介质制造方法及图纸

技术编号:38096999 阅读:8 留言:0更新日期:2023-07-06 09:12
本发明专利技术公开了一种用于随机数发生器安全性检测的预测方法、装置及介质;预测方法包括如下步骤:构建数据集;数据集预处理;构建编码网络对预处理后的数据进行计算得到含有索引信息的数组;构建解码网络对编码网络输出的数组数据进行计算得到权重信息;采用分类卷积神经网络对编\解码网络结构的输出融合计算得到预测数据;构建预测器,利用训练集对预测器进行训练;采用测试集对预测进行测试,对预测器进行安全性检测完成预测。本发明专利技术利用变点检测算法进行数据预处理,并联合注意力机制的编/解码网络与分类卷积神经网络进行随机数的预测以实现对随机数发生器的安全性分析和检测,具有检测准确率高,计算效率高、鲁棒性强等优点。点。点。

【技术实现步骤摘要】
用于随机数发生器安全性检测的预测方法、装置及介质


[0001]本专利技术涉及随机数发生器安全性检测
,具体涉及一种用于随机数发生器安全性检测的预测方法、装置及介质。

技术介绍

[0002]随机数发生器(Random number Generator,RNG)就是产生随机数(Random Number,RND)的装置或设备,可广泛应用于仿真建模、计算科学和信息安全等多个领域中。特别是在密码技术中,随机数发生器产生的高质量的随机数是确保密钥交换、数字签名和身份认证等过程的安全基石,因此对随机数发生器的安全性检测和评估具有重要的应用价值。
[0003]目前业界多采用统计测试(黑盒测试)的方法对随机数发生器进行安全分析,即利用数理统计、预测器等软件对随机数发生器进行安全性检测。其中基于预测器的检测方法的基本原理是利用机器学习模型对获取的历史RND进行模型训练与学习,然后使用该模型对随机数发生器将要输出的RND进行预测,根据预测结果来检测和分析随机数发生器的安全性。近年来机器学习技术快速发展,基于预测器的检测方法受到广泛关注,比较有代表性的成果有:2016年华南师范大学的朱佳等人提出了基于朴素贝叶斯算法、支持向量机、决策树、K

最近邻等经典机器学习算法的预测器用于对随机数发生器进行安全性分析;同年,施耐德(印度)的Kumar等人提出了使用基于朴素贝叶斯机器学习预测器对伪随机数发生器进行安全性分析。2018年美国国家标准与技术研究院(NIST)在发布的NIST SP800

90B标准中提出了基于MultiMCW算法、Lag算法、MultiMMC算法和LZ78Y算法的四种预测器来实现对RNG的安全性分析。2018年,中科院信息工程研究所马原等人提出基于FNN(Feedforward Neural Network,前馈神经网络)与RNN(Recurrent Neural Network,循环神经网络)算法的预测器用于对随机数发生器进行安全性分析。2018年,美国伦斯勒理工学院(Rensselaer Polytechnic Instit)王戈等人提出了基于FNN(Fully Neural Network,连接神经网络)的预测器开展对伪随机数发生器进行安全性评估。2019年,美国欧道明大学的WEN Y等人提出了基于LSTM(Long Short

Term Memory,长短期记忆的神经网络)算法的预测器用于对随机数发生器进行检测;同年澳大利亚悉尼大学的Truong等人设计了基于RCNN(Recurrent Convolutional Neural Network,循环卷积神经网络)的预测器并利用该预测器对量子随机数发生器进行安全性评估。2020年,太原理工大学的李才等人设计了联合注意力机制和LSTM算法的预测器,利用该预测器对基于混沌原理的随机数发生器进行了安全性分析。但上述工作中采用的机器学习算法或神经网络网络无法充分挖掘随机数发生器输出的RND中可能存在的微弱相关性以及内禀性的特征或模式,使得检测器存在检测准确度不高,鲁棒性差以及检测效率低等问题。

技术实现思路

[0004]为解决现有技术中存在的准确度不高,泛化能力弱、鲁棒性差以及检测效率低的
问题,本专利技术提供了一种用于随机数发生器安全性检测的预测方法、装置及介质,利用变点检测算法进行数据预处理,并联合注意力机制的编/解码网络与分类卷积神经网络进行RND的预测以实现对随机数发生器的安全性分析和检测,具有检测准确率高,计算效率高、鲁棒性强等优点,可以实际应用于对随机数发生器的安全性检测,解决了上述
技术介绍
中提到的问题。
[0005]为实现上述目的,本专利技术提供如下技术方案:一种用于随机数发生器安全性检测的预测方法,具体包括如下步骤:
[0006]S1、构建数据集:将被检测随机数发生器输出的RND按照先后顺序加注时间戳标签,组成数据集D,D={d1,d2,

d
i
...,d
n
},d1,d2,...d
i

,d
n
为数据元素,数据元素的下标1,2,

i...,n为时间戳,表示数据元素的时间先后顺序;
[0007]S2、利用RuLSIF变点检测算法对数据集D进行预处理,将变点检测所得到的变点分段数据记为A1,A2,

A
i

,A
n
,其中A1={d1,d2,

d
i

,d
N
},将A1,A2,

A
i

,A
n
数据段按照6:2:2的比例随机划分为训练集、验证集和测试集;
[0008]S3、构建编码网络,并利用编码网络对步骤S2预处理后的数据进行计算,得到含有索引信息的数组;
[0009]S4、构建解码网络,并利用解码网络对编码网络输出的数组数据进行计算,得到权重信息;
[0010]S5、采用分类卷积神经网络对编\解码网络结构的输出融合计算,得到预测数据;
[0011]S6、根据步骤S3

步骤S5构建预测器RuLeformer,利用训练集对预测器进行训练,训练完成后记为RuLeformer

Suc;
[0012]S7、采用测试集对预测器RuLeformer

Suc进行测试,测试完成则保存训练权重,否则返回步骤S6重新训练网络模型;
[0013]S8、对预测器RuLeformer

Suc进行安全性检测,完成预测。
[0014]优选的,所述的编码网络具体包括1维卷积层C
en1
、位置向量编码器E
en
、多头自注意力层S
en1
、1维卷积层C
en2
、最大池化层P
en1
、多头注意力层S
en2
和特征映射层FP
en

[0015]优选的,在步骤S3中,所述利用编码网络对步骤S2预处理后的数据进行计算,得到含有索引信息的数组,具体包括如下步骤:
[0016]S31、将A1={d1,d2,

d
i

,d
N
}输入至C
en1
进行卷积运算后得到具有关联信息的1维序列A
en

con1
,其中A
en

con1
={d
en

con1
,d
en

con2
,

d
en

coni

,d
en

conN
};本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于随机数发生器安全性检测的预测方法,其特征在于,具体包括如下步骤:S1、构建数据集:将被检测随机数发生器输出的随机数按照先后顺序加注时间戳标签,组成数据集D,D={d1,d2,.d
i
..,d
n
},d1,d2,...d
i
...,d
n
为数据元素,数据元素的下标1,2,...i...,n为时间戳,表示数据元素的时间先后顺序;S2、利用RuLSIF变点检测算法对数据集D进行预处理,将变点检测所得到的变点分段数据记为A1,A2,...A
i
...,A
n
,其中A1={d1,d2,...d
i
...,d
N
},将A1,A2,...A
i
...,A
n
数据段按照6∶2∶2的比例随机划分为训练集、验证集和测试集;S3、构建编码网络,并利用编码网络对步骤S2预处理后的数据进行计算,得到含有索引信息的数组;S4、构建解码网络,并利用解码网络对编码网络输出的数组数据进行计算,得到权重信息;S5、采用分类卷积神经网络对编\解码网络结构的输出融合计算,得到预测数据;S6、根据步骤S3

步骤S5构建预测器RuLeformer,利用训练集对预测器进行训练,训练完成后记为RuLeformer

Suc;S7、采用测试集对预测器RuLeformer

Suc进行测试,测试完成则保存训练权重,否则返回步骤S6重新训练网络模型;S8、对预测器RuLeformer

Suc进行安全性检测,完成预测。2.根据权利要求1所述的用于随机数发生器安全性检测的预测方法,其特征在于:所述的编码网络具体包括1维卷积层C
en1
、位置向量编码器E
en
、多头自注意力层S
en1
、1维卷积层C
en2
、最大池化层P
en1
、多头注意力层S
en2
和特征映射层FP
en
。3.根据权利要求1所述的用于随机数发生器安全性检测的预测方法,其特征在于:在步骤S3中,所述利用编码网络对步骤S2预处理后的数据进行计算,得到含有索引信息的数组,具体包括如下步骤:S31、将A1={d1,d2,...d
i
...,d
N
}输入至C
en1
进行卷积运算后得到具有关联信息的1维序列A
en

con1
,其中A
en

con1
={d
en

con1
,d
en

con2
,...d
en

coni
...,d
en

conN
};将A1数据段的时间戳序列T
en
={1,2,...i...,N}输入至E
en
得到序列T
en

,其中T
en

={1

,2

,...i

....,N

};然后将A
en

con1
和T
en

中相同位置的数据元素d
en

coni
和i

相加,得到序列A
en

mix1
,其中,A
en

mix1
={d
en

mix1
,d
en

mix2
,...d
en

mixi
...,d
en

mixN
};S32、将步骤S31获得的序列A
en

mix1
输入到多头自注意力层S
en1
得到含有数据元素之间相关信息的序列A1_D
en1
,将A1_D
en1
序列对应的注意力权重数组记为W
en1
,其中A1_D
en1
={d
en1
,d
en2
,...d
eni
...,d
enN
}、W
en1
={(q
en1
,k
en1
,v
en1
)1,...(q
eni
,k
eni
,v
eni
)
i
...,(q
enN
,k
enN
,v
en
)
N
},(q
eni
,k
eni
,v
eni
)
i
对应数据元素d
eni
的权重信息;S33、将步骤S32获得的序列A1_D
en1
和权重数组W
en1
分别先后输入到C
en2
和P
en1
,得到数据序列A1_D
en2
和对应的权重数组W
en2
,其中A1_D
en2
={d

en1
,d

en2
,...d

eni
...,d

enN
}、W
en2
={(q

en1
,k

en1
,v

en1
)1,...(q

eni
,k

eni
,v

eni
)
i
...,(q

enN
,k

enN
,v

enN
)
N
},(q

eni
,k

eni
,v

eni
)
i
对应数据元素d

eni
权重信息;S34、将步骤S33获得序列A1_D
en2
和权重数组W
en2
输入到S
en2
得到注意力权重数组W
en3
,其中,W
en3
={(q

en1
,k

en1
,v

en1
)1,...(q

eni
,k

eni
,v

eni
)
i
...,(q

enN
,k

enN
,v

enN
)
N
},(q

eni

k

eni
,v

eni
)
i
对应数据元素d

eni
权重信息,,将A1_D
en2
输入到特征映射层FP
en
进行计算获得含有索引信息的数组H
en
,H
en
={(I1,d

en1
)1,...(I
i
,d

eni
)
i
...,(I
N
,d

enN
)
N
}。4.根据权利要求1所述的用于随机数发生器安全性检测的预测方法,其特征在于:所述的解码网络具体包括1维卷积层C
de1
、位置向量编码器E
de
、多头自注意力层S
de1
、1维卷积层C
de2
、最大池化层P
de1
和多头注意力层S
de2
。5.根据权利要求1所述的用于随机数发生器安全性检测的预测方法,其特征在于:在步骤S4中,所述利用解码网络对编码网络输出的数组数据进行计算,得到权重信息,具体包括如下步骤:S41、设待预测的数据元素为N

i个且满足将数据段A1={d1,d2,...d
i
,d
i+1
,....,d
N
)中第1个至第i个数据元素保持不变,其余N

i个待预测数据元素值设定为0,获得含有待预测数据数据段A1_a,其中A1_a={d1,d2,...,d
i
,0
i+1
,...,0
N
},数据元素的下标序号1,2,...i,i+1,...,N为时间戳,组成的时间戳序列记为T
de
={1,2,...,i,i+1,...,N};将该A1_a输入至1维卷积层C
de1
得到具有关联信息的序列A1_a
de

con
;将时间序列T
de
输入至位置向量编码器E
de
获得的序列记为T
de

,其中T
de

={1

,2

,...,i

,(i+1)

,...,N

};将A1_a
de

con
和T
de

中相同位置的数据元素d
de

coni
和i

相加得到序列A1_a
de

mix
,其中A1_a
de...

【专利技术属性】
技术研发人员:樊矾张晓玲韦顺军师君胥小我
申请(专利权)人:电子科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1