System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 非重复随机数生成方法及系统技术方案_技高网

非重复随机数生成方法及系统技术方案

技术编号:41295683 阅读:6 留言:0更新日期:2024-05-13 14:45
本发明专利技术涉及信息安全技术领域,特别涉及一种非重复随机数生成方法及系统,利用随机数生成器生成唯一的伪随机数,并将该伪随机数作为输入密钥;将输入密钥作为哈希函数输入,以基于哈希函数生成固定长度字符串;从固定长度字符串中选取符合预期要求的随机数,以利用选取的随机数对数据加密或签名。本发明专利技术基于密码学哈希函数来生成非重复随机数,能够在保证随机性的前提下,大大提高随机数生成速度,能够有效地减少内存占用,具有高度的非重复性和随机性,适用于大规模的随机数生成需求;并可通过调整密钥长度和选取的位数,灵活地调整生成的随机数的数量和长度、高效、安全、节省存储空间,能够满足数据加密或签名等应用场景中需求,具有较好的应用前景。

【技术实现步骤摘要】

本专利技术涉及信息安全,特别涉及一种非重复随机数生成方法及系统


技术介绍

1、随机数生成是计算机科学和信息
中的一个重要问题。随机数在密码学、模拟实验、游戏开发等领域都有着广泛的应用。然而,传统的随机数生成方法存在着一些问题,比如生成的随机数可能会重复,或者生成的随机数并不是真正的随机数。因此,寻找一种非重复随机数生成方法成为了一个迫切的需求。

2、目前,已经有一些非重复随机数生成方法被提出并应用于实际生产中,例如通过直接获取随机数然后与前面赋值随机数进行比较,以排除重复数。这些方法在实际应用中存在着一些局限性,比如生成速度较慢、占用内存较大。为此,需要进一步研究和改进现有的非重复随机数生成方法,以满足日益增长的应用需求。


技术实现思路

1、本专利技术提供一种非重复随机数生成方法及系统,解决现有非重复随机数生成效率等问题,能够在保证数据安全的前提下来满足大规模随机数生成需求。

2、按照本专利技术所提供的设计方案,一方面,提供一种非重复随机数生成方法,包含:

3、利用随机数生成器生成唯一的伪随机数,并将该伪随机数作为输入密钥;

4、将输入密钥作为哈希函数输入,以基于哈希函数生成固定长度字符串;

5、从固定长度字符串中选取符合预期要求的随机数,以利用选取的随机数对数据加密或签名。

6、作为本专利技术非重复随机数生成方法,进一步地,利用随机数生成器生成唯一的伪随机数,包含:

7、基于用户随机输入并利用随机数生成器生成唯一的伪随机数。

8、作为本专利技术非重复随机数生成方法,进一步地,利用随机数生成器生成唯一的伪随机数,还包含:

9、将随机数生成器生成的随机数与业务uuid和/或时间序列进行融合拼接,以将融合拼接结果作为唯一的伪随机数,其中,业务uuid为基于通用唯一标识符生成的唯一数,时间序列为基于时间生成的唯一数。

10、作为本专利技术非重复随机数生成方法,进一步地,基于哈希函数生成预定长度字符串,包含:

11、首先,收集已知的安全散列算法并构成安全散列算法列表,以从安全散列算法列表中选取目标算法作为哈希函数;

12、然后,利用哈希函数对输入密钥进行哈希迭代计算,并根据哈希迭代计算结果确定预定长度字符串,其中,对输入密钥进行第一次哈希迭代计算的输入为输入密钥。

13、作为本专利技术非重复随机数生成方法,进一步地,已知的安全散列算法包含但不限于:sha-256、sha-512。

14、作为本专利技术非重复随机数生成方法,进一步地,利用哈希函数对输入密钥进行哈希迭代计算,还包括:

15、对输入密钥进行第i次哈希迭代计算的输入根据对输入密钥进行i-1哈希迭代计算输出及业务uuid和/或时间序列确定,其中,业务uuid为基于通用唯一标识符生成的唯一数,时间序列为基于时间生成的唯一数。

16、作为本专利技术非重复随机数生成方法,进一步地,从固定长度字符串中选取符合预期要求的随机数,包含:

17、从固定长度字符串中选取前n位字符串作为用于数据加密或签名的随机数,或依据n的倍数选取对应位数字符串作为用于数据加密或签名的随机数。

18、进一步地,本专利技术还提供一种非重复随机数生成系统,包含:获取模块、处理模块和输出模块,其中,

19、获取模块,用于利用随机数生成器生成唯一的伪随机数,并将该伪随机数作为输入密钥;

20、处理模块,用于将输入密钥作为哈希函数输入,以基于哈希函数生成固定长度字符串;

21、输出模块,用于从固定长度字符串中选取符合预期要求的随机数,以利用选取的随机数对数据加密或签名。

22、本专利技术的有益效果:

23、本专利技术基于密码学哈希函数来生成非重复随机数,能够在保证随机性的前提下,大大提高随机数生成速度,能够有效地减少内存占用,具有高度的非重复性和随机性,适用于大规模的随机数生成需求;并可通过调整密钥长度和选取的位数,灵活地调整生成的随机数的数量和长度、高效、安全、节省存储空间,能够满足数据加密或签名等应用场景中需求,具有较好的应用前景。

本文档来自技高网...

【技术保护点】

1.一种非重复随机数生成方法,其特征在于,包含:

2.根据权利要求1所述的非重复随机数生成方法,其特征在于,利用随机数生成器生成唯一的伪随机数,包含:

3.根据权利要求2所述的非重复随机数生成方法,其特征在于,利用随机数生成器生成唯一的伪随机数,还包含:

4.根据权利要求1所述的非重复随机数生成方法,其特征在于,基于哈希函数生成预定长度字符串,包含:

5.根据权利要求4所述的非重复随机数生成方法,其特征在于,已知的安全散列算法包含但不限于:SHA-256、SHA-512。

6.根据权利要求4所述的非重复随机数生成方法,其特征在于,利用哈希函数对输入密钥进行哈希迭代计算,还包括:

7.根据权利要求1所述的非重复随机数生成方法,其特征在于,从固定长度字符串中选取符合预期要求的随机数,包含:

8.一种非重复随机数生成系统,其特征在于,包含:获取模块、处理模块和输出模块,其中,获取模块,用于利用随机数生成器生成唯一的伪随机数,并将该伪随机数作为输入密钥;

9.一种电子设备,其特征在于,包括:</p>

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

...

【技术特征摘要】

1.一种非重复随机数生成方法,其特征在于,包含:

2.根据权利要求1所述的非重复随机数生成方法,其特征在于,利用随机数生成器生成唯一的伪随机数,包含:

3.根据权利要求2所述的非重复随机数生成方法,其特征在于,利用随机数生成器生成唯一的伪随机数,还包含:

4.根据权利要求1所述的非重复随机数生成方法,其特征在于,基于哈希函数生成预定长度字符串,包含:

5.根据权利要求4所述的非重复随机数生成方法,其特征在于,已知的安全散列算法包含但不限于:sha-256、sha-512。

6.根据权利要求4所述的非重复随机数生成...

【专利技术属性】
技术研发人员:王嘉田冀会芳王志鸿
申请(专利权)人:中国人民解放军战略支援部队信息工程大学
类型:发明
国别省市:

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

1