本发明有关于熵源电路以及熵值产生方法,特别有关于可动态调整信号参数以产生较好品质的熵值的熵源电路以及熵值产生方法。
背景技术:
1、熵源(entropy source)电路用以产生随机的熵值,此熵值可作为加密之用或作为密码。熵源电路内的信号的参数若没有经过适当的设定,则熵源电路可能会产生品质较不好的熵值。然而,传统的熵源电路通常没有动态校正此问题的机制。
技术实现思路
1、本发明一目的为公开一种可动态调整信号参数以产生品质较好的熵值的熵源电路。
2、本发明另一目的为公开一种熵值产生方法,使用在可动态调整信号参数以产生品质较好的熵源电路。
3、本发明一实施例公开了一种熵源电路,其特征在于,包括:第一可调式环形振荡器,用以根据第一控制信号在第一设定或第二设定下运作,该第一可调式环形振荡器在该第一设定下产生第一振荡时钟信号并在该第二设定下产生第二振荡时钟信号,该第一振荡时钟信号以及该第二振荡时钟信号具有不同的频率;第一取样电路,用以根据取样频率对该第一振荡时钟信号进行取样以产生多个第一取样值,或以该取样频率对该第二振荡时钟信号进行取样以产生多个第二取样值;第一侦测电路,用以侦测该多个第一取样值的分布状况;以及控制电路,用以根据该分布状况决定是否要改变该第一可调式环形振荡器的设定当该分布状况不符合预设分布时,该控制电路产生该第一控制信号使该第一设定切换至该第二设定;其中,该熵源电路根据该多个第一取样值或该多个第二取样值输出熵值。
4、本发明另一实施例公开了一种熵源电路,其特征在于,包括:第一可调式环形振荡器,用以根据第一控制信号在第一设定或第二设定下运作,该第一可调式环形振荡器在该第一设定下产生第一振荡时钟信号并在该第二设定下产生第二振荡时钟信号,该第一振荡时钟信号以及该第二振荡时钟信号具有不同的频率;第一取样电路,用以根据取样频率对该第一振荡时钟信号进行取样以产生多个第一取样值,或以该取样频率对该第二振荡时钟信号进行取样以产生多个第二取样值;第三侦测电路,用以侦测该熵源电路的第一运作电压或第一温度;以及控制电路,依据该第一运作电压或该第一温度决定是否要改变该第一可调式环形振荡器由该第一设定改变为该第二设定;其中,该熵源电路根据该多个第一取样值或该多个第二取样值输出熵值。
5、本发明再一实施例公开了一种熵值产生方法,使用在熵源电路,其特征在于,包括:根据第一控制信号使第一可调式环形振荡器在第一设定或第二设定下运作,该第一可调式环形振荡器在该第一设定下产生第一振荡时钟信号并在该第二设定下产生第二振荡时钟信号,该第一振荡时钟信号以及该第二振荡时钟信号具有不同的频率;根据取样频率对该第一振荡时钟信号进行取样以产生多个第一取样值,并以该取样频率对该第二振荡时钟信号进行取样以产生多个第二取样值;侦测该多个第一取样值的分布状况;根据该分布状况决定是否要改变该第一可调式环形振荡器的设定,当该分布状况不符合预设分布时,产生该第一控制信号使该第一设定切换至该第二设定;以及以该熵源电路根据该多个第一取样值或该多个第二取样值输出熵值。
6、根据前述实施例,本发明所公开的熵源电路以及熵值产生方法可以动态的改变振荡时钟信号的频率以确保任何时间都可以产生品质较佳的熵值。
1.一种熵源电路,其特征在于,包括:
2.如权利要求1所述的熵源电路,其特征在于,其中该分布状况包括:
3.如权利要求1所述的熵源电路,其特征在于,其中该第一侦测电路是使用nistsp800-90b规范中的pepetition count test或是adaptive
4.如权利要求1所述的熵源电路,其特征在于,更包括:
5.一种熵源电路,其特征在于,包括:
6.如权利要求5所述的熵源电路,其特征在于,更包括存储装置,用以存储设定对照表,该设定对照表包括了多个个该运作电压或该温度与该多个设定间的对应关系,该控制电路依据该运作电压或该温度,以及该多个对应关系来选择该第一可调式环形振荡器的设定。
7.如权利要求1或5所述的熵源电路,其特征在于,其中该第一可调式环形振荡器包括多个rc型延迟级,该第一控制信号是改变该多个rc型延迟级的电阻值。
8.如权利要求7所述的熵源电路,其特征在于,更包括:
9.如权利要求8所述的熵源电路,其特征在于,其中该电阻设定信号产生电路包括:
10.如权利要求5所述的熵源电路,其特征在于,该熵源电路更包括:
11.一种熵值产生方法,使用在熵源电路,其特征在于,包括:
12.如权利要求11所述的熵值产生方法,其中该分布状况包括:
13.如权利要求11所述的熵值产生方法,其特征在于,其中侦测该多个第一取样值的分布状况的步骤是使用nist sp800-90b规范中的pepetition
14.如权利要求11所述的熵值产生方法,其特征在于,更包括:
15.如权利要求11所述的熵值产生方法,其特征在于,更包括:
16.如权利要求15所述的熵值产生方法,其特征在于,其中该改变该电阻值的步骤包括: