The invention discloses a random number generator, random number generator and system on chip, including: clock signal generation module for generating clock signals with the same frequency and two low frequency phase contrast; clock signal processing module, including detection module, frequency module and output module; detection module for detecting two a clock signal generated is abnormal; frequency module for dividing the clock signal from the clock tree, get the same frequency and two clock signals of opposite phase; the output module for two clock signal in detection of abnormal birth not when the two clock signal output generated by the clock signal in two born into the abnormal detection, two clock signal output divider; also includes a random number generating module, output module according to the output of two A clock signal generates a random number. From the embodiment of the present invention, the probability that the generated random number is reduced is predictability.
【技术实现步骤摘要】
一种随机数发生装置、真随机数发生器及系统级芯片
本专利技术涉及加解密技术,尤指一种随机数发生装置、真随机数发生器及系统级芯片。
技术介绍
随着科技的发展,数据安全越来越重要,可以使用密钥对数据加密来保证数据的安全。具体地,通过系统级芯片(SystemOnChip,SOC)中的随机数发生器产生随机数,将该随机数作为密钥对数据加密。随机数发生器产生的随机数的随机性越高,加密的数据就安全,因此随机数的随机性问题是随机数发生器在设计时主要考虑的问题。在相关技术中,随机数发生器有两种,分别是伪随机数发生器和真随机数发生器。伪随机数发生器按照预先设置的算法产生随机数,但是,由于该算法是固定的,可以根据该算法预测到随机数,也就是说伪随机数产生的随机数是可以预测的。相比较伪随机数发生器,真随机数发生器的随机数发生装置包括时钟信号生成模块和随机数生成模块,时钟信号生成模块用于生成频率相同且相位相反的两个时钟信号,该两个时钟信号分别为随机数生成模块的工作时钟信号和采样时钟信号,随机数生成模块根据工作时钟信号和采样时钟信号生成随机数,真随机数发生器生成的随机数是不可预测的。但是,如果对时钟信号生成模块进行攻击,会使得时钟信号生成模块输出的两个时钟信号异常,从而导致随机数生成模块生成的随机数就是可以预测的。
技术实现思路
为了解决上述技术问题,本专利技术提供了一种随机数发生装置、真随机数发生器及系统级芯片,能够降低产生的随机数是可预测性的概率。为了达到本专利技术目的,本专利技术提供了一种随机数发生装置,包括:时钟信号生成模块,用于生成频率相同且相位相反的两个低频的时钟信号;时钟信号处 ...
【技术保护点】
一种随机数发生装置,其特征在于,包括:时钟信号生成模块,用于生成频率相同且相位相反的两个低频的时钟信号;时钟信号处理模块,包括检测模块、分频模块和输出模块;其中,检测模块,用于检测生成的两个时钟信号是否异常;分频模块,用于对来自时钟树的时钟信号进行分频,得到频率相同且相位相反的两个时钟信号;输出模块,用于在检测出生成的两个时钟信号未异常时,输出生成的两个时钟信号,在检测出生成的两个时钟信号异常时,输出分频得到的两个时钟信号;随机数发生装置还包括:随机数生成模块,用于根据输出模块输出的两个时钟信号生成随机数。
【技术特征摘要】
1.一种随机数发生装置,其特征在于,包括:时钟信号生成模块,用于生成频率相同且相位相反的两个低频的时钟信号;时钟信号处理模块,包括检测模块、分频模块和输出模块;其中,检测模块,用于检测生成的两个时钟信号是否异常;分频模块,用于对来自时钟树的时钟信号进行分频,得到频率相同且相位相反的两个时钟信号;输出模块,用于在检测出生成的两个时钟信号未异常时,输出生成的两个时钟信号,在检测出生成的两个时钟信号异常时,输出分频得到的两个时钟信号;随机数发生装置还包括:随机数生成模块,用于根据输出模块输出的两个时钟信号生成随机数。2.根据权利要求1所述的随机数发生装置,其特征在于,如果所述随机数生成模块的数量为两个或两个以上,还包括:第一运算模块,用于通过预先设置的密码算法对两个或两个以上所述随机数生成模块生成的随机数进行加密运算。3.根据权利要求2所述的随机数发生装置,其特征在于,所述运算模块具体用于,按照预先设置的规则将两个或两个以上所述随机数生成模块生成的随机数分成两份;对于每一份中的两个或两个以上的随机数,将该两个或两个以上的随机数进行异或运算,使用异或运算得到的随机数替换该两个或两个以上的随机数;将两份中的随机数分别作为密钥和待加密的数据,通过该密钥和所述预先设置的密码算法对该待加密的数据进行加密运算。4.根据权利要求2所述的随机数发生装置,其特征在于,还包括:单比特频数检测模块,用于检测所述加密运算得到的随机数中0的总个数和1的总个数,计算检测出的0的总个数和1的总个数之间的差值,若计算出的差值小于或等于预先设置的第一阈值,则输出所述加密运算得到的随机数;若计算出的差值大于该第一阈值,则使所述随机数生成模块重新执行所述生成随机数的步骤。5.根据权利要求1所述的随机数发生装置,其特征在于,所述时钟信号生成模块的数量等于所述时钟信号处理模块的数量;所述随机数生成模块的数量大于或等于所述时钟信号处理模块的数量。6.根据权利要求1至5中任一项...
【专利技术属性】
技术研发人员:韩晓晶,郝晓东,杨敬,包蕾,龚宗跃,
申请(专利权)人:大唐微电子技术有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。