一种随机数产生方法及其装置的制造方法

文档序号:9667110阅读:216来源:国知局
一种随机数产生方法及其装置的制造方法
【技术领域】
[0001]本发明涉及加密技术领域,尤其涉及一种随机数产生方法及其装置。
【背景技术】
[0002]大量移动智能设备生产过程中需要使用随机数功能,目前随机数分两类:真随机数和伪随机数。真随机数是借助物理现象的随机性产生的(比如:电子元件噪音、热噪声和环形振荡器的频率抖动等),但是需要增加额外硬件,一般移动智能设备上都没有配备这些硬件;伪随机数是以种子数作为输入利用数学算法计算产生的,它的周期长但是如果输入种子和算法相同则产生的随机数也将一样。目前在生产移动智能设备过程中使用到的都是伪随机数,伪随机算法的种子大部分都使用当前时钟,由于生产时所有设备的硬件和软件环境相同,所以通过时钟作为种子产生的随机数重复率很高。

【发明内容】

[0003]本发明要解决的技术问题之一,在于提供一种随机数产生装置,本发明可以在不增加硬件的情况下,使用伪随机算法产生真随机数,且运算速度快。该真随机数是通过环境噪音获得的安全性比较高。
[0004]本发明的技术问题之一是这样实现的:一种随机数产生装置,
[0005]包括音频数据采集模块和音频数据处理模块;
[0006]所述音频数据采集模块与所述音频数据处理模块连接;
[0007]所述音频数据采集模块设置采样频率和采样位数对周围的环境声音进行采集;
[0008]所述音频数据处理模块对采集的音频数据进行量化和编码再进行CRC运算得到伪随机算法的种子;
[0009]所述音频数据处理模块对所述种子执行伪随机算法得到随机数。
[0010]进一步的,所述音频数据处理模块包括:量化和编码模块、验证模块、种子生成模块;所述量化和编码模块、验证模块、种子生成模块依次连接;
[0011]所述量化和编码模块对采集的音频数据进行量化和编码得到编码后的音频数据;
[0012]所述验证模块判断编码后的音频数据是否全为0或者全为1,是,则重新采集音频数据;否,则执行种子生成模块;
[0013]所述种子生成模块对编码后的音频数据做CRC运算得到4个字节的CRC校验码作为伪随机算法的种子。
[0014]进一步的,所述音频数据采集模块为移动智能设备的麦克风。
[0015]进一步的,所述设置采样频率是44.ΙΚΗζ,采样位数是16位。
[0016]进一步的,所述伪随机算法是C语言的rand函数。
[0017]本发明要解决的技术问题之二,在于提供一种随机数产生的方法,在不增加硬件的情况下,使用伪随机算法产生真随机数,且运算速度快。该真随机数是通过环境噪音获得的安全性比较高。
[0018]本发明的技术问题之二是这样实现的:一种随机数产生的方法,所述方法为:
[0019]通过一移动智能设备设置采样频率和采样位数对周围的环境声音进行采集;
[0020]对采集的音频数据进行量化和编码再进行CRC运算得到伪随机算法的种子;
[0021]对所述种子执行伪随机算法得到随机数。
[0022]进一步的,所述对采集的音频数据进行量化和编码再进行CRC运算得到伪随机算法的种子,具体为:
[0023]对采集的音频数据进行量化和编码得到编码后的音频数据;
[0024]判断编码后的音频数据是否全为0或者全为1,是,则重新采集音频数据;否,则执行下一步;
[0025]对编码后的音频数据做CRC运算得到4个字节的CRC校验码作为伪随机算法的种子。
[0026]进一步的,所述移动智能设备采用麦克风对周围的环境声音进行采集。
[0027]进一步的,所述设置采样频率是44.ΙΚΗζ,采样位数是16位。
[0028]进一步的,所述伪随机算法是C语言的rand函数。
[0029]本发明具有如下优点:由于环境噪音是随机变化的且大部分移动智能设备都带有麦克风,所以可以利用麦克风获取周围环境的声音,对获取的音频进行采样、量化和编码得到一段音频数据,对音频数据进行CRC计算得到伪随机算法的种子,对伪随机算法进行初始化,然后执行伪随机数算法得到最终的随机数。采用本发明可以在不增加硬件的情况下,使用伪随机算法产生真随机数,且运算速度快。该真随机数是通过环境噪音获得的安全性比较高。
【附图说明】
[0030]图1为本发明装置的第一实施例的结构示意图。
[0031]图2为本发明装置的第二实施例的结构示意图。
[0032]图3为本发明方法的第一实施例的方法示意图。
[0033]图4为本发明方法的第二实施例的方法示意图。
【具体实施方式】
[0034]请参阅图1,是本发明装置的第一实施例的结构示意图。一种随机数产生装置,
[0035]包括音频数据采集模块10和音频数据处理模块11 ;
[0036]所述音频数据采集模块10与所述音频数据处理模块11连接;
[0037]所述音频数据采集模块10设置采样频率和采样位数对周围的环境声音进行采集;
[0038]所述音频数据处理模块11对采集的音频数据进行量化和编码再进行CRC运算得到伪随机算法的种子;
[0039]所述音频数据处理模块11对所述种子执行伪随机算法得到随机数。
[0040]请参阅图2,是本发明装置的第二实施例的结构示意图。一种随机数产生装置,
[0041]包括音频数据采集模块21和音频数据处理模块22 ;
[0042]所述音频数据采集模块21与所述音频数据处理模块22连接;
[0043]所述音频数据采集模块21设置采样频率和采样位数对周围的环境声音进行采集;
[0044]所述音频数据处理模块22对采集的音频数据进行量化和编码再进行CRC运算得到伪随机算法的种子;
[0045]所述音频数据处理模块22对所述种子执行伪随机算法得到随机数。
[0046]其中,所述音频数据处理模块22包括:量化和编码模块221、验证模块222、种子生成模块223 ;所述量化和编码模块221、验证模块222、种子生成模块223依次连接;
[0047]所述量化和编码模块221对采集的音频数据进行量化和编码得到编码后的音频数据;
[0048]所述验证模块222判断编码后的音频数据是否全为0或者全为1,是,则重新采集音频数据;否,则执行种子生成模块;
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1