[发明专利]一种高质量随机数发生器及一种随机数生成方法在审
申请号: | 201911085237.3 | 申请日: | 2019-11-08 |
公开(公告)号: | CN111190570A | 公开(公告)日: | 2020-05-22 |
发明(设计)人: | 刘辛越;肖青海 | 申请(专利权)人: | 北京创原天地科技有限公司 |
主分类号: | G06F7/58 | 分类号: | G06F7/58;H04L9/00;H04L9/08 |
代理公司: | 北京君尚知识产权代理有限公司 11200 | 代理人: | 余长江 |
地址: | 100088 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 质量 随机数 发生器 生成 方法 | ||
1.一种高质量随机数发生器,包括熵源模块,熵池模块和随机数输出模块,其中,
所述熵源模块,包括熵采集器,从多个熵源中采集熵源数据;熵估计模块,得出各个熵源数据的熵估计值;熵质量实时评估模块,对采集的熵数据进行质量实时检测;以及数据处理模块,根据熵估计模块得出的熵估计值来确定是否重新采集熵,或将通过熵质量实时评估模块的熵源数据发送至熵池模块;
熵池模块,包括熵池,为一连续的存储空间,包括用于标记熵池内数据熵数量的熵计数器、混淆次数和熵池写入地址;输入管理模块,将熵源数据放入熵池直至熵池饱和;混淆模块,将熵源数据充分地均匀地混合到熵池中;和输出管理模块,输出混淆后的熵源数据数据并更新熵池内部状态;
随机数输出模块,包括伪随机发生器,将熵池模块的输出作为种子生成并输出随机数序列;输出策略模块,计算生成随机数所需种子。
2.如权利要求1所述的高质量随机数发生器,其特征在于,所述输出策略模块根据需要输出随机数的长度确定更换种子的周期。
3.如权利要求1所述的高质量随机数发生器,其特征在于,所述随机数输出模块还包括随机性检测模块,检测随机数发生器输出的随机数序列的随机性;所述随机数输出模块只输出通过随机性检测模块检测的随机数序列。
4.如权利要求1-3任一所述的高质量随机数发生器,其特征在于,所述熵采集器并对采集的熵源数据根据熵源种类分别进行预处理,使其符合熵估计模块和熵质量实时评估模块对熵源数据的格式要求。
5.如权利要求1-3任一所述的高质量随机数发生器,其特征在于,所述熵采集器采集Android平台设备的传感器数据和图像数据。
6.权利要求5所述的高质量随机数发生器,其特征在于,所述传感器数据包括加速度传感器数据和陀螺仪数据;所述图像数据为模糊的图像数据。
7.一种采用权利要求1所述高质量随机数发生器的高质量随机数生成方法,其步骤包括:
1)用户调用所述高质量随机数发生器,请求输出n字节随机数;
2)由所述输出策略模块计算n字节随机数需要m个种子;
3)向熵池模块请求种子;
4)通过熵采集器从多个熵源采集熵源数据;
5)通过熵估计模块得出各个熵源数据的熵估计值;通过熵质量实时评估模块对采集的熵数据进行质量实时检测;
6)数据处理模块根据熵估计模块得出的熵估计值来确定是否重新采集熵,或将通过熵质量实时评估模块的熵源数据发送至熵池模块;
7)熵池模块的输入管理模块将熵源数据放入熵池并混淆,直至熵池饱和;
8)通过熵池模块的输出管理模块输出混合后的熵源数据作为种子,由伪随机发生器生成随机数序列;
9)在已经请求了m个种子后,返回n字节随机数给用户。
8.如权利要求7所述的方法,其特征在于,在返回随机数给用户前通过一随机性检测模块,检测随机数发生器输出的随机数序列的随机性;所述随机数输出模块只输出通过随机性检测模块检测的随机数序列。
9.如权利要求7所述的方法,其特征在于,所述熵采集器采集Android平台设备的传感器数据和图像数据。
10.如权利要求7所述的方法,其特征在于,所述传感器数据包括加速度传感器数据和陀螺仪数据;所述图像数据为模糊的图像数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京创原天地科技有限公司,未经北京创原天地科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911085237.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:氢气供给系统、积分管理系统以及服务管理系统
- 下一篇:显示装置及其制造方法