随机数产生系统及其随机数产生方法与流程

文档序号:17473698发布日期:2019-04-20 05:59阅读:345来源:国知局
随机数产生系统及其随机数产生方法与流程

本发明涉及一种随机数产生方式,尤其涉及一种随机数产生系统及其随机数产生方法。



背景技术:

近年来,随着电脑信息科技的蓬勃发展,存储器产品的使用越来越频繁,而存储器产品的资料安全问题也越来越受到重视。一般而言,存储器产品会需要金钥来对数据进行加解密,或者利用金钥来确保外部的存取(如读取、写入、抹除)是否被准许。其中,上述金钥可以是随机数产生器所产生随机数,而随机数的重复性则影响了数据的安全性。如何降低随机数的重复性(即提高非重复顺序的次数),已是随机数产生器在设计上的一重要课题。



技术实现要素:

本发明提供一种随机数产生系统及其随机数产生方法,可将随机数产生器所产生的随机数进行二次处理,并且输出经处理后的随机数,以提高随机数的不可预测性。

本发明的随机数产生系统,包括:随机数产生器、随机数选择电路及随机数逻辑电路。随机数产生器接收随机数要求信号,以反应于随机数要求信号提供具有n个比特的一第一随机数列,其中n为一正整数。随机数选择电路接收随机数要求信号,以反应于随机数要求信号提供具有n个比特的比特选择信号,其中比特选择信号为时变信号且决定于所接收的随机数要求信号。随机数逻辑电路耦接随机数产生器及随机数选择电路,且接收随机数要求信号、第一随机数列及比特选择信号,反应该随机数要求信号利用比特选择信号调整第一随机数列,以提供第二随机数列。

本发明的随机数产生方法,包括下列步骤。通过随机数产生器反应于随机数要求信号提供具有n个比特的第一随机数列,其中n为正整数。通过随机数选择电路反应于随机数要求信号提供具有n个比特的比特选择信号,其中比特选择信号为时变信号且决定于随机数要求信号。通过随机数逻辑电路反应于随机数要求信号利用比特选择信号调整第一随机数列,以提供第二随机数列。

基于上述,本发明实施例的随机数产生系统及其随机数产生方法,随机数逻辑电路可反应于为时变信号的比特选择信号中各个比特的逻辑准位,决定是否对第一随机数列中各个比特的逻辑准位进行调整,以产生第二随机数列。藉此,可提高第二随机数的不可预测性。

为让本发明的上述特点和优点能更明显易懂,下文特举实施例,并配合附图作详细说明如下。

附图说明

图1a为本发明一实施例的随机数产生系统的系统示意图;

图1b为本发明一实施例的随机数产生系统的波形示意图;

图2a为本发明一实施例的随机数选择电路的系统示意图;

图2b为本发明一实施例的随机数选择电路的波形示意图;

图3为本发明一实施例的随机数逻辑电路的系统示意图;

图4a为本发明另一实施例的随机数产生系统的系统示意图;

图4b为本发明另一实施例的随机数产生系统的波形示意图;

图5a为本发明一实施例的随机数取代电路的系统示意图;

图5b为本发明一实施例的随机数取代电路的波形示意图;

图6为本发明另一实施例的随机数逻辑电路的系统示意图;

图7为本发明一实施例的随机数产生方法的流程图。

附图标记说明:

10:系统电路;

100、200:随机数产生系统;

110:随机数产生器;

120:随机数选择电路;

130、220:随机数逻辑电路;

210:随机数取代电路;

310:第一时脉产生器;

320:第一计数器;

810:第二时脉产生器;

820:第二计数器;

clk1:第一时脉信号;

clk2:第二时脉信号;

ct1、ct2:计数值;

int1:反相器;

mx1:第一多工器;

mx2:第二多工器;

qrs:随机数要求信号;

rn1:第一随机数列;

rn2:第二随机数列;

rr:比特取代信号;

rs:比特选择信号;

s110、s120、s130:步骤。

具体实施方式

图1a为本发明一实施例的随机数产生系统的系统示意图。请参照图1a,在本实施例中,随机数产生系统100接收来自系统电路10所供的随机数要求信号qrs,以反应于随机数要求信号qrs提供一组随机数列(如rn2),并且随机数产生系统100包括随机数产生器110、随机数选择电路120及随机数逻辑电路130。

随机数产生器110接收随机数要求信号qrs,以反应于随机数要求信号qrs提供具有n个比特的第一随机数列rn1,其中n为一正整数,并且随机数产生器110可以是现有的任何类型及结构的随机数产生器,本发明实施例并不限制。

随机数选择电路120接收随机数要求信号qrs,以反应于随机数要求信号qrs提供具有n个比特的比特选择信号rs,其中比特选择信号rs为时变信号且决定于所接收的随机数要求信号qrs。随机数逻辑电路130耦接随机数产生器110及随机数选择电路120,且接收随机数要求信号qrs、第一随机数列rn1及比特选择信号rs。随机数逻辑电路130反应于随机数要求信号qrs利用比特选择信号rs调整第一随机数列rn1,以提供第二随机数列rn2。

进一步来说,比特选择信号rs的第k个比特对应于第一随机数列rn1的第k个比特,其中k为小于等于n的正整数。当比特选择信号rs的第k个比特的逻辑准位为第一逻辑准位(如“0”)时,第一随机数列rn1中的第k个比特的逻辑准位会被调整,例如设定为反相逻辑准位或预定逻辑准位;当比特选择信号rs的第k个比特的逻辑准位为第二逻辑准位(如“1”)时,第一随机数列rn1中的第k个比特的逻辑准位不会被调整,即维持为原始逻辑准位。此外,在其他实施例中,也可以”1”为第一逻辑准位及以“0”为第二逻辑准位。更进一步来说,其他彼此可区别的任意逻辑准位也可用于分别设置为第一逻辑准位和第二逻辑准位。

依据上述,由于随机数逻辑电路会反应于为时变信号的比特选择信号中各个比特的逻辑准位,决定是否对第一随机数列中各个比特的逻辑准位进行调整,以产生第二随机数列。藉此,可提高第二随机数的不可预测性。

图1b为本发明一实施例的随机数产生系统的波形示意图。请参照图1a及图1b,在此n以3为例,当随机数要求信号qrs禁能(在此以低电压准位为例)时,随机数产生系统100不会运作;当随机数要求信号qrs致能(在此以高电压准位为例)时,随机数产生系统100反应于致能的随机数要求信号qrs产生随机数列。进一步来说,随机数产生器110反应于致能的随机数要求信号qrs提供数值为“001”的第一随机数列rn1,随机数选择电路120反应于致能的随机数要求信号qrs提供数值为“101”的比特选择信号rs。

当比特选择信号rs的比特为逻辑准位“0”时,随机数逻辑电路130会将第一随机数列rn1中对应的比特的逻辑准位进行反相;当比特选择信号rs的比特为逻辑准位“1”时,随机数逻辑电路130不会处理第一随机数列rn1中对应的比特(即逻辑准位维持不变)。依据上述,数值为“001”的第一随机数列rn1经随机数逻辑电路130处理后,会提供数值为“011”的第二随机数列rn2。

图2a为本发明一实施例的随机数选择电路的系统示意图。请参照图1a及图2a,在本实施例中,随机数选择电路120包括第一时脉产生器310及第一计数器320。第一时脉产生器310用以产生第一时脉信号clk1,其中第一时脉产生器310的运作与系统电路10及随机数产生器110的运作无关。第一计数器320接收第一时脉信号clk1及随机数要求信号qrs,以依据第一时脉信号clk1进行循环计数,并且反应于随机数要求信号qrs提供比特选择信号rs。

换言之,当随机数产生系统100接收到电源时,第一时脉产生器310立即提供第一时脉信号clk1,以驱动第一计数器320不断的计数。并且,当随机数要求信号qrs致能时,则将当下的计数结果提供以作为比特选择信号rs。

图2b为本发明一实施例的随机数选择电路的波形示意图。请参照图2a及图2b,在本实施例中,第一计数器320是以3比特的计数器为例,即第一计数器320的计数值ct1可由“000”计数到“111”并且不断的重复。接着,当随机数要求信号qrs禁能(在此以低电压准位为例)时,第一计数器320则不输出计数值ct1;当随机数要求信号qrs致能(在此以高电压准位为例)时,第一计数器320则当下的计数结果ct1的数值“110”提供以作为比特选择信号rs。

图3为本发明一实施例的随机数逻辑电路的系统示意图。请参照图1a及图3,在本实施例中,随机数逻辑电路130包括反相器int1及第一多工器mx1。反相器int1具有接收第一随机数列rn1的输入端以及输出端。第一多工器mx1具有接收第一随机数列rn1的第一输入端、耦接收反相器int1的输出端的第二输入端以及接收比特选择信号rs的控制端。进一步来说,当比特选择信号rs的比特为逻辑准位“0”时,第一多工器mx1会提供反相器int1的输出端的逻辑准位;当比特选择信号rs的比特为逻辑准位“1”时,第一多工器mx1会提供第一随机数列rn1中对应的比特的逻辑准位。

图4a为本发明另一实施例的随机数产生系统的系统示意图。请参照图1a及图4a,在本实施例中,相对于随机数产生系统100,随机数产生系统200的不同之处在于随机数取代电路210及随机数逻辑电路220。随机数取代电路210接收随机数要求信号qrs,以反应于随机数要求信号qrs提供具有n比特的比特取代信号rr,其中比特取代信号rr为时变信号且决定于所接收的随机数要求信号qrs。随机数逻辑电路220耦接随机数产生器110、随机数选择电路120及随机数取代电路210,且接收随机数要求信号qrs、第一随机数列rn1、比特选择信号rs及比特取代信号rr。随机数选择电路220反应于随机数要求信号qrs利用比特选择信号rs及比特取代信号rr调整第一随机数列rn1,以提供第二随机数列rn2。

进一步来说,比特选择信号rs的第k个比特及比特取代信号rr的第k个比特对应于第一随机数列rn1的第k个比特,其中k为小于等于n的正整数。当比特选择信号rs的第k个比特的逻辑准位为第一逻辑准位(如“0”)时,第一随机数列rn1中的第k个比特的逻辑准位设定(或取代)为比特取代信号rr的第k个比特的逻辑准位;当比特选择信号rs的第k个比特的逻辑准位为第二逻辑准位(如“1”)时,第一随机数列rn1中的第k个比特的逻辑准位不会被调整,即维持为原始逻辑准位。此外,在其他实施例中,也可以”1”为第一逻辑准位及以“0”为第二逻辑准位。更进一步来说,其他彼此可区别的任意逻辑准位也可用于分别设置为第一逻辑准位和第二逻辑准位。

依据上述,由于随机数逻辑电路会反应于为时变信号的比特选择信号中各个比特的逻辑准位及为时变信号的比特取代信号中各个比特的逻辑准位,决定第一随机数列中各个比特的逻辑准位的调整方式,以产生第二随机数列。藉此,可进一步提高第二随机数的不可预测性。

图4b为本发明另一实施例的随机数产生系统的波形示意图。请参照图4a及图4b,在此n以3为例,当随机数要求信号qrs禁能(在此以低电压准位为例)时,随机数产生系统200不会运作;当随机数要求信号qrs致能(在此以高电压准位为例)时,随机数产生系统200反应于致能的随机数要求信号qrs产生随机数列。进一步来说,随机数产生器110反应于致能的随机数要求信号qrs提供数值为“001”的第一随机数列rn1,随机数选择电路120反应于致能的随机数要求信号qrs提供数值为“101”的比特选择信号rs,并且随机数取代电路210反应于致能的随机数要求信号qrs提供数值为“111”的比特取代信rr。

当比特选择信号rs的比特为逻辑准位“0”时,随机数逻辑电路220会将第一随机数列rn1中对应的比特的逻辑准位设定为比特取代信rr中对应的比特的逻辑准位;当比特选择信号rs的比特为逻辑准位“1”时,随机数逻辑电路130不会处理第一随机数列rn1中的对应的比特(即逻辑准位维持不变)。依据上述,数值为“001”的第一随机数列rn1经随机数逻辑电路130处理后,会提供数值为“011”的第二随机数列rn2。

图5a为本发明一实施例的随机数取代电路的系统示意图。请参照图4a及图5a,在本实施例中,随机数取代电路210包括第二时脉产生器810及第二计数器820。第二时脉产生器810用以产生第二时脉信号clk2,其中第二时脉产生器810的运作与系统电路10、随机数产生器110及随机数选择电路120的运作无关。第二计数器820接收第二时脉信号clk2及随机数要求信号qrs,以依据第二时脉信号clk2进行循环计数,并且反应于随机数要求信号qrs提供比特取代信号rr。

换言之,当随机数产生系统100接收到电源时,第二时脉产生器810立即提供第二时脉信号clk2,以驱动第二计数器820不断的计数。并且,当随机数要求信号qrs致能时,则将当下的计数结果提供以作为比特取代信号rr。

图5b为本发明一实施例的随机数取代电路的波形示意图。请参照图5a及图5b,在本实施例中,第二计数器820是以3比特的计数器为例,即第二计数器820的计数值ct2可由“000”计数到“111”并且不断的重复。接着,当随机数要求信号qrs禁能(在此以低电压准位为例)时,第二计数器820则不输出计数值ct2;当随机数要求信号qrs致能(在此以高电压准位为例)时,第二计数器820则当下的计数结果ct2的数值“110”提供以作为比特取代信号rr。

图6为本发明另一实施例的随机数逻辑电路的系统示意图。请参照图4a及图6,在本实施例中,随机数逻辑电路220包括第二多工器mx2。第二多工器mx2具有接收第一随机数列rn1的第一输入端、接收比特取代信号rr的第二输入端以及接收比特选择信号rs的控制端。进一步来说,当比特选择信号rs的比特为逻辑准位“0”时,第二多工器mx2会提供比特取代信号rr中对应的比特的逻辑准位;当比特选择信号rs的比特为逻辑准位“1”时,第二多工器2mx1会提供第一随机数列rn1中对应的比特的逻辑准位。

此外,在某些实施例中,随机数逻辑电路(如130、220)可记载第一随机数列rn1的重复次数m。重复次数m的意义为每提供m次第一随机数列rn1后,会产生重复出现的第一随机数列rn1。例如,第1次产生的第一随机数列rn1和第m+1次产生的第一随机数列rn1是相同数列。并且在第二随机数列rn2提供的次数达到上述重复次数m时,随机数逻辑电路(如130、220)比对在重复次数m后第1个提供的第二随机数列rn2与在重复次数m中第1个提供的第二随机数列rn2,以判断是否重新提供重复次数m后的第1个第二随机数列rn2。换言之,当在重复次数m后第1个提供的第二随机数列rn2与在重复次数m中第1个提供的第二随机数列rn2为不同时,随机数逻辑电路(如130、220)则不重新提供;当在重复次数m后第1个提供的第二随机数列rn2与在重复次数m中第1个提供的第二随机数列rn2为相同时,随机数逻辑电路(如130、220)可通过位移、丢弃、或执行任意的逻辑运算于在重复次数后第1个提供的第二随机数列rn2,则以提供新的第二随机数列rn2。

图7为本发明一实施例的随机数产生方法的流程图。请参照图7,在本实施例中,随机数产生方法包括下列步骤。在步骤s110中,通过随机数产生器反应于随机数要求信号提供具有n个比特的第一随机数列,其中n为一正整数。在步骤s120中,通过随机数选择电路反应于随机数要求信号提供具有n个比特的比特选择信号,其中比特选择信号为时变信号且决定于随机数要求信号。在步骤s130中,通过随机数逻辑电路反应于随机数要求信号利用比特选择信号调整第一随机数列,以提供第二随机数列。其中,步骤s110、s120及s130的顺序为用以说明,本发明实施例不以此为限。并且,步骤s110、s120及s130的细节可参照图1a、图1b、图2a、图2b、图3、图4a、图4b、图5a、图5b至图6的实施例所述,在此则不再赘述。

综上所述,本发明实施例的随机数产生系统及其随机数产生方法,随机数逻辑电路可反应于为时变信号的比特选择信号中各个比特的逻辑准位,决定是否对第一随机数列中各个比特的逻辑准位进行调整,以产生第二随机数列。藉此,可提高第二随机数的不可预测性。并且,随机数逻辑电路可反应于为时变信号的比特选择信号中各个比特的逻辑准位及为时变信号的比特取代信号中各个比特的逻辑准位,决定第一随机数列中各个比特的逻辑准位的调整方式,以产生第二随机数列。藉此,可进一步提高第二随机数的不可预测性。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1