一种序列随机性检测方法及装置与流程

文档序号:37496243发布日期:2024-04-01 14:04阅读:9来源:国知局
一种序列随机性检测方法及装置与流程

本技术实施例涉及信息安全领域,尤其涉及一种序列随机性检测方法及装置。


背景技术:

1、目前,随着信息化和计算机技术的发展,人们在享受信息化带来的众多好处的同时,网络安全问题已成为信息时代人类共同面临的挑战。随机数发生器的输出被称为随机数,广泛应用于各个领域。因此,为保证随机数发生器产生质量优异且稳定的随机数,就需要对随机数的随机性进行检测。

2、目前,随机数检测过程占用内存过多,难以满足对物联网安全设备、工业控制安全设备等资源紧缩型设备。


技术实现思路

1、本技术实施例提供一种序列随机性检测方法及装置,用以减少内存占用。

2、第一方面,本技术实施例提供的一种序列随机性检测方法,包括:

3、获取n字节的待检测序列,n为大于1的正整数;根据所述待检测序列中的前k字节中的比特的比特和值确定至少一个比特集合,任一所述比特集合包含所述前k字节中多个连续的比特,所述多个连续的比特中的最后一个比特对应的比特和值为设定值,且所述多个连续的比特中的最后一个比特以外的比特对应的比特和值非为所述设定值,k为小于n的正整数;根据所述比特集合中比特的比特和值的数值分布信息确定所述待检测序列是否通过随机性检测。

4、根据该方法,本技术在检测的过程中,不需要一次性将全部字节转换为比特,而是根据待检测序列中的部分比特求和得到比特序列,仅存储部分比特求和得到的比特和值,并得到比特和值对应的数值分布信息,遍历全部序列后可以获得全部序列对应的数值分布信息,并根据数值分布信息确定待检测序列是否通过随机性检验。该过程无需重复遍历待检测序列中的全部比特,可以减少内存占用,减少设备在分配内存的读取内存空间数据的时间。

5、在一种可能的设计中,所述待检测序列的比特和值根据所述待检测序列的比特值以及所述比特值对应的调整值确定,其中,不同比特值对应的调整值不同,并且相同的比特值对应的调整值相同。

6、根据该设计,本技术中,比特值为0对应的调整值为-1,比特值为1对应的调整值为1,根据比特值(比如比特值为b1=0、b2=1、b3=1)确定比特值对应的调整值(比如,调整值为d1=-1、d2=1、d3=1)。该设计用于令比特和值不存在两个相邻的值均为0的情况,避免后续计算圈数时额外计算多余的圈数,保证统计圈数的准确性,提高检测效率。

7、在一种可能的设计中,任一比特集合对应的数值分布信息用于指示所述比特集合对应的取值为目标值的比特和值的个数,所述目标值不包括所述设定值。

8、根据该设计,在根据多个比特得到比特和值后,将等于目标值的比特和值的个数确定为比特和值的数值分布信息,目标值的范围不包括设定值。比如由多个比特确定的比特和值序列为{1,2,1,2,1,2},目标值为1和比特和值的个数为3,目标值为2的比特和值的个数为3。将数值分布信息记为state(x),x即目标值,state(1)=3,state(2)=3,因此在计算出比特和值后,可获得比特和值等于目标值的个数并作为数值分布信息,可以将一串比特和值序列转化为通过数值表示的数值分布信息,进一步减少设备的内存占用。

9、在一种可能的设计中,所述根据所述比特集合中比特的比特和值的数值分布信息确定所述待检测序列是否通过随机性检测,包括:根据所述数值分布信息、所述比特集合的个数和所述目标值确定所述目标值对应的第二数值;在所述目标值对应的第二数值满足随机性条件的情况下,确定所述待检测序列通过随机性检测。

10、根据该设计,本技术可根据数值分布信息、比特集合的个数、目标值确定目标值对应的第二数值,通过对目标值的第二数值作统计运算,若多个目标值的第二数值通过相同的方式得到的计算结果与阈值比较,若全部的目标值的第二数值与阈值的比较结果均满足随机性条件,则确定待检测序列通过随机性检测,采用该设计可提高确定待检测序列通过随机性检测的准确性。

11、在一种可能的设计中,所述根据所述数值分布信息、所述比特集合的个数和所述目标值确定所述目标值对应的第二数值,包括:根据所述数值分布信息和所述比特集合的个数确定所述目标值对应的比特集合的个数;根据所述目标值对应的比特集合的个数、所述比特集合的个数和所述目标值确定所述目标值对应的第二数值。

12、根据该设计,根据目标值对应的比特集合获得目标值对应的第二数值,比如统计比特值对应的比特集合的个数得到第二数值,采用的统计方法可提高获得第二数值的准确性。

13、在一种可能的设计中,所述目标值对应的第二数值满足随机性条件包括:任一目标值对应的第二数值大于或等于阈值。

14、根据该设计,判断多个目标值对应的第二数值是否满足随机性条件,仅当所有的目标值对应的第二数值都满足随机性条件,则确定待检测序列通过随机性检测,若任一目标值对应的第二数值不满足随机性条件,则确定待检测序列未通过随机性检测,采用该设计可使提高对待检测序列的随机性检测的准确性。

15、第二方面,本技术实施例提供的一种序列随机数检测装置,包括:

16、获取模块,用于获取n字节的待检测序列,n为大于1的正整数;处理模块,用于根据所述待检测序列中的前k字节中的比特的比特和值确定至少一个比特集合,任一所述比特集合包含所述前k字节中多个连续的比特,所述多个连续的比特中的最后一个比特对应的比特和值为设定值,且所述多个连续的比特中的最后一个比特以外的比特对应的比特和值非为所述设定值,k为小于n的正整数;所述处理模块,还用于根据所述比特集合中比特的比特和值的数值分布信息确定所述待检测序列是否通过随机性检测。

17、在一种可能的设计中,所述待检测序列的比特和值根据所述待检测序列的比特值以及所述比特值对应的调整值确定,其中,不同比特值对应的调整值不同,并且相同的比特值对应的调整值相同。

18、在一种可能的设计中,任一比特集合对应的数值分布信息用于指示所述比特集合对应的取值为目标值的比特和值的个数,所述目标值不包括所述设定值。

19、在一种可能的设计中,所述处理模块,具体用于:根据所述数值分布信息、所述比特集合的个数和所述目标值确定所述目标值对应的第二数值;在所述目标值对应的第二数值满足随机性条件的情况下,确定所述待检测序列通过随机性检测。

20、在一种可能的设计中,所述处理模块,具体用于:根据所述数值分布信息和所述比特集合的个数确定所述目标值对应的比特集合的个数;根据所述目标值对应的比特集合的个数、所述比特集合的个数和所述目标值确定所述目标值对应的第二数值。

21、在一种可能的设计中,所述目标值对应的第二数值满足随机性条件包括:任一目标值对应的第二数值大于或等于阈值。

22、第三方面,本技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时,实现第一方面及其任意一种设计的方法。

23、第四方面,本技术实施例还提供了一种电子设备,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,当所述计算机程序被所述处理器执行时,使得所述处理器实现第一方面及其任意一种设计的方法。

24、第二方面至第四方面及其任意一种设计所带来的技术效果可参见第一方面中对应的设计所带来的技术效果,此处不再赘述。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1