【技术实现步骤摘要】
一种高质量随机数发生器及一种随机数生成方法
:本专利技术属于信息安全领域,涉及一种随机数生成方法及一种随机数发生器。
技术介绍
:在网络社会中,信息数据安全一直处于十分重要的地位,因而产生各种各样的数据加密算法,其中许多算法都需要高质量随机数发生器产生的随机数。随机数及其发生器是主流计算环境的重要组成部分(Wolfram,“Randomnumbergeneration.http://reference.wolfram.com/language/tutorial/RandomNu-mberGeneration.html.”和“Random.org.http://www.random.org.”))。由随机数发生器产生的随机数被广泛用于OS级功能(堆栈指针随机化)、科学计算(蒙特卡罗,马尔可夫模型)和计算机安全(密钥生成)(A.J.Menezes,S.A.Vanstone,andP.C.V.Oorschot,HandbookofAppliedCryptography,1s-ted.BocaRaton,FL,USA:CRC ...
【技术保护点】
1.一种高质量随机数发生器,包括熵源模块,熵池模块和随机数输出模块,其中,/n所述熵源模块,包括熵采集器,从多个熵源中采集熵源数据;熵估计模块,得出各个熵源数据的熵估计值;熵质量实时评估模块,对采集的熵数据进行质量实时检测;以及数据处理模块,根据熵估计模块得出的熵估计值来确定是否重新采集熵,或将通过熵质量实时评估模块的熵源数据发送至熵池模块;/n熵池模块,包括熵池,为一连续的存储空间,包括用于标记熵池内数据熵数量的熵计数器、混淆次数和熵池写入地址;输入管理模块,将熵源数据放入熵池直至熵池饱和;混淆模块,将熵源数据充分地均匀地混合到熵池中;和输出管理模块,输出混淆后的熵源数据 ...
【技术特征摘要】
20181115 CN 20181136010331.一种高质量随机数发生器,包括熵源模块,熵池模块和随机数输出模块,其中,
所述熵源模块,包括熵采集器,从多个熵源中采集熵源数据;熵估计模块,得出各个熵源数据的熵估计值;熵质量实时评估模块,对采集的熵数据进行质量实时检测;以及数据处理模块,根据熵估计模块得出的熵估计值来确定是否重新采集熵,或将通过熵质量实时评估模块的熵源数据发送至熵池模块;
熵池模块,包括熵池,为一连续的存储空间,包括用于标记熵池内数据熵数量的熵计数器、混淆次数和熵池写入地址;输入管理模块,将熵源数据放入熵池直至熵池饱和;混淆模块,将熵源数据充分地均匀地混合到熵池中;和输出管理模块,输出混淆后的熵源数据数据并更新熵池内部状态;
随机数输出模块,包括伪随机发生器,将熵池模块的输出作为种子生成并输出随机数序列;输出策略模块,计算生成随机数所需种子。
2.如权利要求1所述的高质量随机数发生器,其特征在于,所述输出策略模块根据需要输出随机数的长度确定更换种子的周期。
3.如权利要求1所述的高质量随机数发生器,其特征在于,所述随机数输出模块还包括随机性检测模块,检测随机数发生器输出的随机数序列的随机性;所述随机数输出模块只输出通过随机性检测模块检测的随机数序列。
4.如权利要求1-3任一所述的高质量随机数发生器,其特征在于,所述熵采集器并对采集的熵源数据根据熵源种类分别进行预处理,使其符合熵估计模块和熵质量实时评估模块对熵源数据的格式要求。
5.如权利要求1-3任一所述的高质量随机数发生器,其特...
【专利技术属性】
技术研发人员:刘辛越,肖青海,
申请(专利权)人:北京创原天地科技有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。