CN102007470B - 用于产生随机比特序列的装置和方法 - Google Patents

用于产生随机比特序列的装置和方法 Download PDF

Info

Publication number
CN102007470B
CN102007470B CN200980113156.8A CN200980113156A CN102007470B CN 102007470 B CN102007470 B CN 102007470B CN 200980113156 A CN200980113156 A CN 200980113156A CN 102007470 B CN102007470 B CN 102007470B
Authority
CN
China
Prior art keywords
signal
random
ring oscillator
oscillator circuit
feedback path
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN200980113156.8A
Other languages
English (en)
Other versions
CN102007470A (zh
Inventor
M·迪希特尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens AG filed Critical Siemens AG
Publication of CN102007470A publication Critical patent/CN102007470A/zh
Application granted granted Critical
Publication of CN102007470B publication Critical patent/CN102007470B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Logic Circuits (AREA)

Abstract

一种用于产生随机比特序列的装置(1),具有数字环形振荡器电路(2),其带有至少一个第一反馈路径(R8)和第二反馈路径(R14)。在此,在可预先给定的时刻进行反馈路径(R8,R14)之间的切换,并且在环形振荡器电路(2)的输出节点(4)上能够提取具有随机的电平变化曲线的随机信号(OS)。

Description

用于产生随机比特序列的装置和方法
本发明涉及一种用于产生随机比特和随机比特序列的装置和方法。这例如用于实现随机数生成器。
通常在安全重要的应用中需要以数字形式作为随机比特序列出现的随机数。例如,在非对称鉴权方法中需要产生和使用随机数。尤其是在带有安全功能的RFID标签情况下,要以特别低的硬件开销来产生相应的随机数。在此值得期望的是,仅仅使用能够成本低廉地实现的数字逻辑电路。
在过去,使用例如通过应用模拟噪声源(其信号被数字化)实现的随机数生成器。然而,混合模拟/数字电路只能费事地实现。
实际上仅仅具有数字逻辑电路的随机数生成器在WO 2006/015624A1中进行了描述。在该国际专利申请中提出了利用由数字门构建的环形振荡器的随机相位波动。然而根据WO 2006/015624A1,仅仅适用非常特别的环形振荡器,即Fibonacci或者Galois环形振荡器,其具有特别的特性用于使用在随机数生成器中。在这样构建的电路的情况下所基于的是,环形振荡器不允许具有固定点(Fixpunkte)。该条件尤其是针对Fibonacci或者Galois振荡器电路通过数学方程来表示,根据WO2006/015624A1必须满足这些数学方程。在相应的实施情况下,因此首先检查是否环形振荡器具有固定点。由此,不利的是:考虑的振荡器电路的选择极为有限。
因此,本发明的任务是,实现一种用于产生随机比特的改进的装置。
该任务通过一种具有权利要求1所述的特征的装置来解决。
相应地,用于产生随机比特序列的装置具有数字环形振荡器电路,其带有至少一个第一反馈路径和第二反馈路径。在此,在可预先给定的时刻进行反馈路径之间的切换,并且在环形振荡器电路的输出节点上可以提取具有随机的电平变化的随机信号。
在数字环形振荡器电路的情况下,通常将非偶数数目的逻辑门反馈。也就是说,逻辑门之一的输出端与另一逻辑门的输入端连接。由此,可以形成振荡器,这些振荡器在确定的条件下给出不可预测的信号波形,即为随机信号。现在规定,设置多个可能的反馈路径,可以在这些反馈路径之间切换。由此,可以实现随机信号的改进的随机的信号特性。通过切换(该切换引起环形振荡器的变化的振荡特性)由此可以无需较大开销地产生随机比特。
通过在用于实现振荡器而使用的半导体器件内的热学或者量子力学过程,例如形成相位波动或者抖动,其导致随机的内部信号变化曲线或者电势变化曲线。逻辑器件,例如非偶数数目的反相器电路,例如可以为了构建环形振荡器而级联状地耦合为环。通常,基本的振荡频率取决于所使用的反相器电路或者逻辑电路的数目。通过在信号处理时由于各逻辑器件而不同地出现的延迟,通常并不出现恒定的相位而是出现抖动,使得常常出现不规则的信号波形。
然而基本上由此不能得出:在长的时期上也始终存在绝对随机的“振荡变化曲线”。每个环形振荡器电路在其信号变化曲线中在其激活或者启动之后具有随机的时间上的电平变化曲线,而该电平变化曲线原则上也会在起振过程之后汇入确定的变化曲线。
而通过反馈路径的切换,防止了在例如固定点中的起振。例如可以受时钟控制地或者周期性地改变环形振荡器电路的相应的反馈。即使相应的环形振荡器的基本方案倾向于周期性的振荡,并且该环形振荡器因此首先表现为不适于产生随机信号,也可通过切换实现干扰这种在电势上周期性的振荡。由此,始终出现并非周期性的随机的振荡过程,从中可以获得大的熵用于进一步产生随机的比特值。在此也可能的是,使用较短的Fibonacci或者Galois环形振荡器,由此降低了硬件开销和实施开销。切换例如如下进行:在至少两个不同的Galois或者Fibonacci反馈之间切换。
用于产生随机比特序列的装置因此尤其具有的优点是,它们可以简单地实施并且不必进行计算(例如在现有技术中需要这些计算用于排除固定点)。由此,更多类型的振荡器考虑作为环形振荡器电路。此外,在一个或者另外的工作状态中的一般环形振荡器(该工作状态取决于所设置的反馈)具有的优点是:甚至在达到固定点的情况下(这在所提出的用于产生随机比特序列的装置中对于随机性的品质是无害的),能量消耗也强烈地降低。这尤其是在CMOS技术中实施相应的电路装置的情况下合乎实际情况。
在反馈路径之间的切换能够实现使用仅仅较少的串联连接的逻辑器件。由此实现了额外的能量节省。例如在一个实施例中仅仅附加地设置了一个电路装置,其在预先给定的时刻进行反馈路径的切换。这例如可以根据开关信号来进行。开关信号优选对应于时钟,由此周期性地进行在反馈路径之间的切换。
通过成本特别低廉的实施(该实施优选仅仅具有数字器件),以FPGA电路类型的实现是特别有利的。FPGA理解为在数字技术中的可编程的集成电路。FPGA可以通过内部结构的配置来“现场”地编程(FPGA=现场可编程门阵列),其中逻辑门可以形成这些内部结构。当然,用于产生随机数的相应的装置也可以实施为专用集成电路(ASIC=Application Specific Integrated Circuit),例如在CMOS中。当例如替换或者改装已经使用的较老的随机比特生成器时,相对于通常的用于产生随机信号的电路装置改进的装置也可以由分立器件构建,以便提高所产生的信号的随机性。
在该装置的一个实施形式中,设置有耦合到输出节点上的缓存元件,该缓存元件根据随机信号来存储逻辑电平。
例如可能的是,将缓存元件构造为触发器,其在经过可预先确定的逻辑阈值时变换其内部存储的状态。已知的触发器例如在耦合输入的随机信号的每个上升或者下降信号沿变换内部存储的逻辑状态。也就是说,只要随机信号在两个逻辑电平之间不规则地波动,则缓存元件提供随机比特值,其取决于例如随机信号的上升或者下降沿的不可确定的数目。例如,缓存元件可以存储对应于随机信号的逻辑电平。
在此可能的是,缓存元件例如触发器根据采样信号存储对应于随机信号的逻辑电平。采样信号(例如外部的时钟信号)导致在确定的时刻随机信号的电平被缓存元件检测并且用作随机比特或者也引起在缓存元件中的所存储的逻辑电平的反转。用于在反馈路径之间的切换的开关信号可以优选具有比采样信号更高的频率。然而同样可能的是,启动信号、切换信号和采样信号具有相同的频率、并且同步或者相对于彼此在时间上偏移。后一种情况具有的优点是,对于信号不需要不同的信号生成装置。
用于重新启动环形振荡器的相应的启动信号例如可以由矩形信号生成装置来提供,其产生具有变换的逻辑电平的启动信号。就此而言,所使用的环形振荡器电路规则地重新启动并且表现出随机的起振特性。
在该装置的一个优选的实施形式中,设置有控制装置,其例如根据编程引起在输出节点或者缓存元件上提取随机比特值和/或产生启动信号和/或切换信号。
产生随机比特序列尤其是可以通过连接到输出节点上的触发器在随机信号的每个0-1过程中的反转来实现,其中随机比特也可以通过该触发器的缓存的逻辑电平的周期性的采样或者取样来确定。
本发明还规定使用数字环形振荡器电路,该数字环形振荡器电路带有至少一个第一反馈路径和第二反馈路径。在此,将相应的反馈路径在预先给定的时刻切换,并且在环形振荡器的输出节点上可以提取具有随机电平变化曲线的随机信号。这用于产生至少一个随机比特。
在本发明的一个改进方案中,提出了一种随机数生成器,其带有前面描述的用于产生随机比特序列的装置。该装置例如可以使用在RFID芯片中。该芯片于是具有用于产生随机比特序列的装置和密码装置,其中由随机信号导出的多个随机比特被密码装置用于执行密码鉴权、用于产生密码签名和/或用于产生密钥。
本发明此外涉及一种根据权利要求19所述的用于产生随机比特序列的方法。
相应地,提出了一种用于产生随机比特序列的方法,其中根据在数字环形振荡器电路上提取的随机信号的电平变化曲线来确定随机比特值,其中所使用的数字环形振荡器电路具有至少一个第一反馈路径和第二反馈路径。在预先给定的时刻进行在反馈路径之间的切换。在此,在环形振荡器电路的输出节点上可以提取具有随机电平变化曲线的随机信号。
在该方法的一个变形方案中,在此执行以下方法步骤:激活数字环形振荡器电路;在第一和第二反馈路径之间进行切换;以及提取由环形振荡器电路产生的振荡的随机信号的一个或多个电平值。
相应的方法例如可以通过可编程的数字逻辑电路(例如FPGA)的合适的编程来实施。环形振荡器电路的激活例如可以通过将合适的电源电压接通或者耦合到相应的电路装置来进行。此外,对应于环形振荡器电路的相应实施的激活可能通过耦合合适的控制信号或者启动信号来实现。激活可以理解为一种过程,其优选由所使用的逻辑门的预先给定的启动状态出发而导致环形振荡器电路的振荡。
在此,环形振荡器电路可以为了产生多个随机比特值而被多次激活。所提出的方法步骤在此可以在时间上彼此无关地执行。特别是在反馈路径之间的切换过程在此促进了在电平变化曲线中的随机化。
如已经关于用于产生随机比特序列的装置已经阐述的那样,随机信号可以被多次采样并且根据随机信号的相应的电平值改变随机比特的逻辑电平。这例如可以通过如前面已经描述的缓存元件来实现。
本发明的其他有利的扩展方案是从属权利要求以及下面描述的实施例的主题。
下面参照附图并且借助一些实施例更详细地阐述本发明。其中:
图1示出了随机数生成器的一个实施例;
图2示出了环形振荡器电路的第一实施形式;
图3示出了环形振荡器电路的第一实施形式的随机信号的变化曲线;
图4示出了环形振荡器电路的第二实施形式;
图5示出了环形振荡器电路的第二实施形式的随机信号的变化曲线;
图6示出了环形振荡器电路的第三实施形式;
图7示出了用于产生随机比特序列的方法的示例性流程图。
在附图中,只要没有另外说明,相同或者功能相同的元件设置有相同的参考标记。
在图1中示例性地示出了随机数生成器1。随机数生成器1具有环形振荡器电路2,环形振荡器电路2带有输入节点3和输出节点4。对于环形振荡器的实施例例如在下面的图2、4和6中更详细地阐述。
例如,环形振荡器可以通过多个反相器的级联连接来实现。反相器或者其他逻辑器件在此用作延迟元件,其中各延迟时间的不可预测的波动导致不可预测的振荡变化、所谓的抖动。延迟波动通常基于不同的内部和外部噪声因素,例如器件的硬件实施和电流波动、电压波动和/或温度波动。只要如在反相器或者逻辑门的情况中那样,延迟时间极短,则该不可预测的变动提供原则上振荡的信号的随机电平变化曲线,该信号可以在输出节点4上作为随机信号OS被提取。
环形振荡器2此外具有用于切换信号CT1的端子5。环形振荡器电路在内部具有如上面已经表明的串联或者级联地连接的逻辑器件,然而这些器件可以通过至少两个不同的反馈路径来反馈。根据切换信号CT1,在环形振荡器2中进行反馈路径的改变。由此,实现了附加的随机化,因为在改变相应的反馈路径时进行对所出现的信号变化曲线的干扰。
环形振荡器电路2可以通过合适的启动信号ST激活或者启动,该启动信号耦合输入到输入节点3中。原则上可能的是,环形振荡器电路2由于其内部结构而具有固定点,也就是说存在稳定的状态,在这些状态中,逻辑器件具有逻辑状态,这些状态不再随时间变化。然而直到达到这种固定点,相应的可提取的电平进行实际上随机的改变。此外,通过切换并且由此通过改变环形振荡器2的电路拓扑,通常根本防止了在环形振荡器内部形成稳定状态。
随机信号OS被输送给缓存元件8,例如触发器装置。触发器装置8(例如D触发器)在数据输入端接收随机信号并且在数据输出端提供缓存的逻辑电平作为随机比特ZB。因为随机信号OS随时间变动并且随机波动,所以例如可能的是,通过将采样信号例如以时钟信号CLK的形式耦合输入到触发器8的时钟输入端,于是在采样时刻例如在存在上升或者下降的时钟沿的情况下随机信号OS的当前值被检测或者缓存。
在图1的示例性视图中,相应的采样信号或者时钟信号CLK通过控制装置6提供。控制装置6同样产生合适的切换信号CT1,该切换信号为了在环形振荡器电路2中的反馈路径的切换而输送给其端子5;以及产生控制信号CT2,以便控制矩形信号生成器7,该矩形信号生成器将启动信号ST提供给环形振荡器2的输入节点3。
通过在反馈路径之间的例如周期性的切换,并且由此通过环形振荡器电路2的固有的振荡特性,潜在地存在的固定点对于随机数或者随机比特生成是非关键的。通过设计多种耦合可能性或者路径以及在其间的切换,在提取随机信号OS时通常仅仅考虑并非确定性地发生的起振特性。就此而言,任何传统的环形振荡器都适于用作环形振荡器电路,该环形振荡器如下地被修改:即设置多个替选的反馈路径,可以在这些反馈路径之间进行切换。
随机数生成器1的不同的实施工作模式是可能的。例如,如前面已描述的那样,可以在任何采样时刻通过缓存元件8检测随机信号OS并且作为随机比特ZB输出。这例如被引入移位寄存器9中。在预先给定数目的采样时刻之后,由此在移位寄存器9中存在随机比特序列。可替选地,即使在图1中并未明确示出,移位寄存器也可以通过时钟信号CLK来激励。在随机数生成器1的输出端11上于是可以提取二进制编码的随机数ZZ,其二进制位例如可以被按照时钟的方式来读取。
可替选地,缓存元件或者触发器8可以构造为使得在随机信号OS的每个0-1或者1-0过程中改变缓存元件8中内部存储的随机比特ZB的值。由此,作为附加的随机元素,将随机信号OS的波动或者振荡的数目用于产生随机比特。根据采样信号或者时钟信号CLK,于是将缓存元件8中的随机产生的电平状态作为随机比特ZB输出。
此外可能的是,在每次产生随机比特之前将环形振荡器电路2复位或者重新启动,以便降低达到固定点的危险。优选的是,在将环形振荡器电路复位或者初始化时预先给定:启动状态、即环形振荡器电路2中使用的所有逻辑器件和数字器件的逻辑电平不对应于固定点状态。
下面进一步阐述带有可切换的反馈路径的示例性环形振荡器电路,它们适于使用在用于产生随机比特序列的装置中。
图2示出了环形振荡器电路2,其具有16个串联连接的逻辑器件12-27。在此,第零个逻辑器件实施为NAND门12,并且其余的逻辑器件13-27实施为反相级。该装置等同于16个串联布置的反相门。相应的输出信号称为W0-W15。第一逻辑器件12、即NAND门具有两个输入端37和38,其中第二输入端38连接到环形振荡器2的输入节点3上。在输入节点3上耦合有启动信号ST。在NAND门12的输出端39上可以提取随机信号OS,其被输送给环形振荡器2的输出节点4。
最后的、即第15反相器27的输出信号W15作为外部的反馈信号R15输送给NAND门12的输入端37。除了该外部的反馈路径R之外,此外在第一反相器13、第三反相器15、第五反相器15、第八反相器20、第十一反相器23和第十四反相器26的输出端上提取相应的输出信号W1、W3、W5、W8、W11和W14,并且作为潜在的反馈信号R1、R3、R5、R8、R11和R14。
反馈信号R1、R3、R5和R11通过加法器29、30、31、33相加到外部的反馈信号R15并且由此形成固定的不可改变的反馈路径。同样存在的反馈信号R8和R14可以通过开关装置28同样切换为反馈路径。为此,反馈信号R8和R14被输送给开关装置28的输入端34、35,该开关装置根据开关信号CT1在其输出端51上提供切换的反馈信号RS,其中该开关信号存在于环形振荡器电路2的开关输入端5上。被切换的反馈信号RS通过加法器32加到外部的反馈路径R15上,该反馈路径通过加法器33与反馈信号R11耦合。作为加法器29、30、31、32、33示出的器件对应于逻辑XOR器件。
开关装置28例如可以理解为复用器。由此可能的是,通过开关装置28在两个反馈路径R8和R14之间切换。通过在环形振荡器电路的工作中的切换、即在通过逻辑器件12-27的链的信号路径中出现通常随机的振荡或者波动期间,其本身被干扰,由此引起尤其是在第一逻辑器件12的输出端上存在的随机信号OS的进一步随机化。在图2中所示的环形振荡器基本上对应于长度为16的Fibonacci环形振荡器,其可以用以下的反馈函数表示:
WO=NOT{W15 XOR[(W14 AND CT2)OR(W8 AND NOT CT2)]XOR W3 XOR W11 XOR W5 XOR W11 XOR W1},其中Wi+1=NOTWi。
随机信号OS由此得到实际上完全随机的特性。
在图3中示例性地示出了用于实施为FPGA的根据图2的环形振荡器的随机信号OS的信号变化曲线。在此所基于的是,每10ns在两个可能的反馈路径R8和R14之间进行切换。这例如可以通过合适地实现切换信号CT1来实施。例如,复用器或者开关装置28的开关输入端36可以配备有相应的时钟信号作为开关信号。在图3中示出的信号变化曲线根据ns为单位的时间来示出。该信号作为电压变化曲线以任意单位给出。
可以看到,完全不能看到周期性的或者确定性的信号变化曲线。通过在不同的反馈信号路径之间的切换,对出现的各波动特性进行干扰,使得如在图3中所示的那样出现随机的信号变化曲线。如上面阐述的那样,可以通过对该随机信号OS的合适的提取或者缓存来导出相应的随机比特。
在图4中示出了环形振荡器200的第二实施形式。环形振荡器200同样实施为Fibonacci环形振荡器,然而具有七个反相器。在此,第一反相器又实施为NAND门12,六个串联连接的反相器13-18连接到该反相器上。关于信号名称适用针对他2所述的内容。原则上,环形振荡器200的结构类似于图2中所示的环形振荡器,其中对于相同的元件不再重新讨论。
在第一反相器或者NAND门12的输出端上可以提取随机信号OS并且输送给输出节点4。在反相器13、15、17和18的输出端上可以提取相应的反馈信号R1、R3、R5和R6。最后的反馈信号R6用作外部反馈信号并且输送给NAND门12的输入端37。此外,反馈路径R1和R2可以通过开关装置28彼此切换,使得形成原理上不同的Fibonacci环形振荡器架构。反馈信号R3固定地通过加法器或者XOR门30加到外部的反馈信号R6上。
根据开关信号CT1,将反馈信号R1或者反馈信号R5作为被切换的反馈信号RS通过加法器或者XOR门29同样加到外部的反馈信号R6上。由此,又得到两个可能的反馈路径,它们或者从第一反相器13的输出端引导至NAND门的输入端37,或者得到从第五反相器的输出端引导向NAND门12的输入端37的一个反馈路径。
通过启动信号RS的电平变换,可以起动环形振荡器200并且开始随机振荡。因为仅仅设计了七个反相器或者逻辑器件,原理上得到非常高的振荡频率,它们例如可以在NAND门的输出端作为随机信号被提取。为了防止会出现稳定的振荡或者固定点,同样以比较高的频率在反馈路径之间切换。这可以通过调节开关信号CT1的周期或者节拍或者频率来调节。
在图5中示出了针对环形振荡器200的随机信号OS的、类似于图3的信号变化曲线。在图5中示出的曲线对应于如下情况:其中每100ns在两个可替选的反馈路径R1和R3之间切换。可以看出的是,例如在50ns到120ns之间的范围中调节准周期性的振荡。通过切换到相应的另外的反馈路径、即所得到的Fibonacci环形振荡器的振荡特性在大约125ns处的改变,该准周期的特性被干扰,使得在随机产生的信号变化曲线中出现比较高的熵。通过例如周期性的切换,得到随机信号OS的复杂的非周期性的特性,该随机信号如前面描述的那样适于产生随机比特值。
申请人的研究得出,尤其是在将大于等于7个逻辑器件级联设置的环形振荡器电路情况下能够实现可靠的随机信号产出。然而优选的是,设计超过10个串联连接的逻辑器件。
在图6中示出了用于实施环形振荡器201的另一例子。在此,8个NAND门40-47级联地设置。在NAND门40-47的输入端的每个上耦合有启动信号ST。在此,在第零个NAND门40的输出端上的随机信号OS同样用作内部的反馈信号R0。在第一NAND门41的输出端上的另一反馈信号R1实现了除了外部的反馈路径之外的另一反馈路径,该外部的反馈路径通过反馈信号R6给出。相应的反馈信号通过XOR门48、49相加。
此外,设计了两个可能的可替选的反馈路径,它们通过在第四和第五NAND门44、45的输出端上的信号R4、R5来得到。作为由乘法器28根据开关信号CT1而提供的可切换的反馈信号RS,由此得到通过反馈信号R4或R5的反馈。通过启动信号和使用NAND门作为逻辑器件,可以在从0变换到1的情况下、即在启动信号ST的逻辑上升沿的情况下激活或者启动环形振荡器电路201。
在图7中最后示意性示出了用于产生随机比特序列的方法的示例性流程图。如前面已经描述过的那样,尤其是根据图2、4或6中的实施例的环形振荡器适于产生随机信号。由此,在可选的准备步骤S0中提供相应的环形振荡器,其构造为使得可以在多个反馈路径之间切换。
在原理上在时间上彼此无关地进行的方法步骤S11、S12和S13中启动相应的环形振荡器,例如在图2中所示的环形振荡器(步骤S11)。随机信号OS被采样(步骤S12),以便由此导出随机比特值,这在随后的步骤S2中进行。在步骤S13中在时间上与其并行地连续地在预先给定的时刻进行在潜在地存在的反馈路径之间的切换。
由例如在步骤S2中确定的或者从随机信号OS导出的随机比特可以随后在步骤S3中创建随机比特序列。该随机比特序列对应于二进制编码的随机数,其备用于另外的应用。
如已经表明的那样,环形振荡器的启动、随机信号OS的采样以及在不同的反馈路径之间的切换可以在时间上彼此无关地进行。可能的是,比对随机信号的采样更频繁地进行切换。如已经关于图1所示并且阐述的那样,采样和单个随机比特的导出的多种变形方案是可能的。原则上应当将从第一反馈路径至第二反馈路径的转换的切换频率选择为使得其间不存在稳定的周期性振荡。这例如可以通过事先的实验或者仿真来确定。原理上由此出发:在环形振荡器电路中存在越少逻辑器件,则所需的切换频率必须越高,以便中断和干扰潜在出现的周期性的振荡。
本发明以示例性地示出的随机数生成器、环形振荡器和方法过程的形式实现了在极低的硬件开销的情况下可靠地产生随机数。随机比特序列或者随机数实现了高的统计质量并且例如可以在加密方法或者鉴权算法中使用,尤其是也可以使用在RFID芯片上。

Claims (22)

1.一种用于产生随机比特序列的装置(1),具有数字环形振荡器电路(2),该数字环形振荡器电路(2)具有至少一个第一反馈路径(R8)和第二反馈路径(R14),并且该数字环形振荡器电路(2)被构造为使得在能预先给定的时刻进行在反馈路径(R8,R14)之间的切换,其中在该环形振荡器电路(2)的输出节点(4)上能够提取具有随机的电平变化曲线的随机信号(OS),
其中该环形振荡器电路(2)此外具有输入节点(3),并且构造为使得在耦合到该输入节点(3)上的逻辑启动信号(ST)的状态变换时进行振荡。
2.根据权利要求1所述的装置(1),其中设置有开关装置(28),该开关装置(28)在预先给定的时刻进行反馈路径(RS)的切换。
3.根据权利要求2所述的装置(1),其中所述开关装置(28)根据开关信号(CT1)在反馈路径(R8,R14)之间切换。
4.根据权利要求1至3之一所述的装置(1),其中周期性地进行在反馈路径(R8,R14)之间的切换。
5.根据权利要求1至3之一所述的装置(1),其中该环形振荡器电路(2)具有多个串联连接的逻辑器件(12-27)。
6.根据权利要求5所述的装置(1),其中设置有至少7个串联连接的逻辑器件(12-27)。
7.根据权利要求5所述的装置(1),其中所述逻辑器件(13-27)是反相器。
8.根据权利要求1至3之一所述的装置(1),其中所述装置(1)具有耦合到输出节点(4)的缓存元件(8),该缓存元件根据随机信号(OS)存储逻辑电平。
9.根据权利要求8所述的装置(1),其中所述缓存元件(8)根据采样信号(CLK)存储对应于随机信号(OS)的逻辑电平。
10.根据权利要求9所述的装置(1),其中所述装置(1)具有采样信号生成装置(6),其在预先给定的时刻产生所述采样信号(CLK)的逻辑状态变换。
11.根据权利要求1至3之一所述的装置(1),其中所述装置(1)具有耦合到输入节点(3)的矩形信号生成装置(7),该矩形信号生成装置产生具有变换的逻辑电平的启动信号(ST)。
12.根据权利要求1至3之一所述的装置(1),其中所述装置(1)具有控制装置(5),该控制装置根据编程促使在输出节点(4)或者缓存元件(8)上提取随机比特值和/或产生启动信号(ST)和/或切换信号(CT1)。
13.根据权利要求1至3之一所述的装置(1),其中环形振荡器电路(2)以Galois环形振荡器或者Fibonacci环形振荡器的方式来实施。
14.根据权利要求1至3之一所述的装置(1),其中所述装置(1)实施为FPGA电路。
15.一种RFID芯片,具有根据权利要求1至14之一所述的装置(1)和加密装置,其中多个从随机信号(OS)导出的随机比特(ZB)被加密装置用于执行加密鉴权、用于产生加密签名和/或用于产生密钥。
16.一种随机数生成器,其具有根据权利要求1至14之一所述的装置(1),其中随机信号(OS)的在输出节点(4)上提取的多个电平值或者由缓存元件(8)存储的逻辑电平(ZB)被检测为随机数(ZZ)的比特值。
17.一种具有至少一个第一反馈路径(R8)和第二反馈路径(R14)的数字环形振荡器电路(2)的应用,其中相应的反馈路径(RS)在能预先给定的时刻被切换,其中在环形振荡器电路(2)的输出节点(4)上能够提取具有随机电平变化曲线的随机信号(OS),用于产生至少一个随机比特,其中在耦合到环形振荡器电路(2)的输入节点(3)上的逻辑启动信号(ST)的状态变换时进行振荡。
18.一种用于产生随机比特序列的方法,其中根据在数字环形振荡器电路(2)上提取的随机信号(OS)的电平变化曲线来确定随机比特值(ZB),其中该数字环形振荡器电路(2)具有至少一个第一反馈路径(R8)和第二反馈路径(R14),并且在能预先给定的时刻进行反馈路径(R8,R14)之间的切换,其中在环形振荡器电路(2)的输出节点(4)上能够提取具有随机电平变化曲线的随机信号(OS),其中在耦合到环形振荡器电路(2)的输入节点(3)上的逻辑启动信号(ST)的状态变换时进行振荡。
19.根据权利要求18所述的方法,其中执行以下步骤:
-激活(S1)数字环形振荡器电路(2);
-在第一和第二反馈路径(R8,R14)之间进行切换(S2);
-提取(S2,S21)由环形振荡器电路(2)产生的振荡的随机信号(OS)的一个或多个电平值。
20.根据权利要求18或19所述的方法,其中所述环形振荡器电路(2)被多次激活用于产生多个随机比特值。
21.根据权利要求18或19所述的方法,其中在反馈路径(R8,R14)之间周期性地进行切换。
22.根据权利要求18或19所述的方法,其中根据随机信号(OS)的变化曲线来确定随机比特值(S21,S22)。
CN200980113156.8A 2008-04-14 2009-03-11 用于产生随机比特序列的装置和方法 Expired - Fee Related CN102007470B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102008018678A DE102008018678B4 (de) 2008-04-14 2008-04-14 Vorrichtung und Verfahren zum Erzeugen einer Zufallsbitfolge
DE102008018678.3 2008-04-14
PCT/EP2009/052851 WO2009127475A1 (de) 2008-04-14 2009-03-11 Vorrichtung und verfahren zum erzeugen einer zufallsbitfolge

Publications (2)

Publication Number Publication Date
CN102007470A CN102007470A (zh) 2011-04-06
CN102007470B true CN102007470B (zh) 2015-05-20

Family

ID=40718783

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200980113156.8A Expired - Fee Related CN102007470B (zh) 2008-04-14 2009-03-11 用于产生随机比特序列的装置和方法

Country Status (8)

Country Link
US (1) US8531247B2 (zh)
EP (1) EP2271980B1 (zh)
JP (1) JP5295357B2 (zh)
CN (1) CN102007470B (zh)
AT (1) ATE557341T1 (zh)
DE (1) DE102008018678B4 (zh)
ES (1) ES2384679T3 (zh)
WO (1) WO2009127475A1 (zh)

Families Citing this family (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101965552B (zh) * 2008-03-04 2013-03-13 桑迪士克以色列公司 基于数控振荡器的数字随机数生成器
DE102010026688A1 (de) * 2010-07-09 2012-01-12 Siemens Aktiengesellschaft Vorrichtung und Verfahren zum Erzeugen von Zufallsbits
JP5356362B2 (ja) * 2010-12-15 2013-12-04 日本電信電話株式会社 乱数生成回路
WO2012122309A2 (en) * 2011-03-07 2012-09-13 University Of Connecticut Embedded ring oscillator network for integrated circuit security and threat detection
US20120331308A1 (en) * 2011-06-22 2012-12-27 Media Patents, S.L. Methods, apparatus and systems to improve security in computer systems
CN103973229B (zh) * 2013-02-05 2016-12-28 爱思开海力士有限公司 乱数产生装置
DE102013208152A1 (de) * 2013-05-03 2014-11-20 Siemens Aktiengesellschaft Vorrichtung und Verfahren zum Erzeugen von Zufallsbits
DE102013210147A1 (de) * 2013-05-31 2014-12-18 Siemens Aktiengesellschaft Erzeugen von Zufallsbits
DE102013213095A1 (de) * 2013-07-04 2015-01-08 Siemens Aktiengesellschaft Erzeugen von einer Anzahl von Zufallsbits
DE102013222218A1 (de) * 2013-10-31 2014-05-22 Siemens Aktiengesellschaft Konstruieren einer Schaltung geeignet zur Erzeugung von Zufallsbits und Schaltung zur Erzeugung von Zufallsbits
EP2940923B1 (en) * 2014-04-28 2018-09-05 Université de Genève Method and device for optics based quantum random number generator
DE102014219795A1 (de) * 2014-09-30 2016-03-31 Siemens Aktiengesellschaft Vorrichtung und Verfahren zum Erzeugen von Zufallsbits
DE102014226996A1 (de) * 2014-12-29 2016-06-30 Siemens Aktiengesellschaft Verfahren und Vorrichtung zum Erzeugen von Zufallsbits
DE102015203580A1 (de) 2015-02-27 2016-03-24 Siemens Aktiengesellschaft Vorrichtung und Verfahren zum Erzeugen von Zufallsbits
US10295583B2 (en) 2015-04-16 2019-05-21 Taiwan Semiconductor Manufacturing Company, Ltd. Circuit for measuring flicker noise and method of using the same
DE102015214541A1 (de) * 2015-07-30 2017-02-02 Siemens Aktiengesellschaft Bestimmen einer durch einen thermischen Jitteranteil bedingten statistischen Abweichung einer Jitter-behafteten Einzeldurchlaufzeit eines Signalwechsels durch eine von mehreren rückkopplungsfrei verschalteten Abbildungseinrichtungen
DE102016200850A1 (de) 2016-01-21 2017-07-27 Siemens Aktiengesellschaft Verfahren zum Betreiben einer sicherheitsrelevanten Vorrichtung und Vorrichtung
DE102016200907A1 (de) 2016-01-22 2017-07-27 Siemens Aktiengesellschaft Verfahren zum Betreiben einer sicherheitsrelevanten Vorrichtung und Vorrichtung
DE102016201176A1 (de) 2016-01-27 2017-07-27 Siemens Aktiengesellschaft Verfahren und Vorrichtung zum Erzeugen von Zufallsbits
WO2017137256A1 (de) 2016-02-09 2017-08-17 Siemens Aktiengesellschaft Verfahren und ausführungsumgebung zum gesicherten ausführen von programmbefehlen
DE102016203534A1 (de) 2016-03-03 2017-09-07 Siemens Aktiengesellschaft Verfahren und Analysemodul zur Überprüfung von verschlüsselten Datenübertragungen
DE102016205289A1 (de) 2016-03-31 2017-10-05 Siemens Aktiengesellschaft Verfahren, Prozessor und Gerät zur Integritätsprüfung von Nutzerdaten
DE102016207294A1 (de) 2016-04-28 2017-11-02 Siemens Aktiengesellschaft Verfahren und Zertifikatspeicher zur Zertifikatsverwaltung
DE102016207642A1 (de) 2016-05-03 2017-11-09 Siemens Aktiengesellschaft Verfahren und Vorrichtungen zum Authentisieren eines Datenstroms
DE102016207635A1 (de) 2016-05-03 2017-11-09 Siemens Aktiengesellschaft Verfahren und Vorrichtung zur Absicherung von Gerätezugriffen
EP3252990A1 (de) 2016-06-03 2017-12-06 Siemens Aktiengesellschaft Verfahren und vorrichtung zum bereitstellen eines geheimnisses zum authentisieren eines systems und/oder komponenten des systems
DE102016219926A1 (de) 2016-10-13 2018-04-19 Siemens Aktiengesellschaft Verfahren, Sender und Empfänger zum Authentisieren und zum Integritätsschutz von Nachrichteninhalten
DE102016221301A1 (de) 2016-10-28 2018-05-03 Siemens Aktiengesellschaft Verfahren und Geräte zum Bereitstellen einer Senderidentifizierungsnachricht für einen Sender
CN107038015B (zh) * 2016-11-18 2020-04-07 杭州电子科技大学 一种高速真随机数发生器
EP3413530B1 (de) 2017-06-09 2019-07-31 Siemens Aktiengesellschaft Verfahren und vorrichtung zum austauschen von nachrichten
EP3435272B1 (de) 2017-07-27 2020-11-04 Siemens Aktiengesellschaft Verfahren und vorrichtung zur identifikation eines additiv gefertigten werkstücks
DE102017223099A1 (de) 2017-12-18 2019-06-19 Siemens Aktiengesellschaft Vorrichtung und Verfahren zum Übertragen von Daten zwischen einem ersten und einem zweiten Netzwerk
EP3502806A1 (de) 2017-12-22 2019-06-26 Siemens Aktiengesellschaft Verfahren zum schutz der produktionsdaten zur herstellung eines produkts
EP3503493A1 (de) 2017-12-22 2019-06-26 Siemens Aktiengesellschaft Kommunikationsvorrichtung und verfahren zum verarbeiten eines netzwerkpakets
EP3506143B1 (en) 2017-12-27 2024-02-14 Siemens Aktiengesellschaft Interface for a hardware security module
EP3509247A1 (de) 2018-01-03 2019-07-10 Siemens Aktiengesellschaft Verfahren und schlüsselgenerator zum rechnergestützten erzeugen eines gesamtschlüssels
EP3509004A1 (en) 2018-01-03 2019-07-10 Siemens Aktiengesellschaft Adaption of mac policies in industrial devices
EP3514743A1 (en) 2018-01-22 2019-07-24 Siemens Aktiengesellschaft Device and method for providing instruction data for manufacturing an individualized product
EP3534282A1 (de) 2018-03-01 2019-09-04 Siemens Aktiengesellschaft Verfahren und sicherheitsmodul zum rechnergestützten ausführen von programmcode
EP3557463B1 (de) 2018-04-16 2020-10-21 Siemens Aktiengesellschaft Verfahren und ausführungsumgebung zum ausführen von programmcode auf einem steuergerät
EP3562194B1 (en) 2018-04-23 2021-07-28 Siemens Aktiengesellschaft Method for identifying at least one network slice configuration of a mobile network, communication system, and automation system
EP3561713B1 (en) 2018-04-25 2022-07-13 Siemens Aktiengesellschaft Retrieval device for authentication information, system and method for secure authentication
EP3561709B1 (en) 2018-04-25 2020-07-29 Siemens Aktiengesellschaft Data processing apparatus, system, and method for proving or checking the security of a data processing apparatus
EP3562090B1 (en) 2018-04-25 2020-07-01 Siemens Aktiengesellschaft Data processing device for processing a radio signal
EP3562116A1 (en) 2018-04-26 2019-10-30 Siemens Aktiengesellschaft Cryptographic key exchange or key agreement involving a device without network access
EP3570489B1 (en) 2018-05-18 2020-04-08 Siemens Aktiengesellschaft Device and method for transforming blockchain data blocks
EP3584654B1 (en) 2018-06-19 2020-06-10 Siemens Aktiengesellschaft Hierarchical distributed ledger
EP3598363A1 (en) 2018-07-17 2020-01-22 Siemens Aktiengesellschaft Resource reservation for transactions of a distributed database system
EP3598364A1 (en) 2018-07-17 2020-01-22 Siemens Aktiengesellschaft Timing constraint for transactions of a distributed database system
EP3598365A1 (en) 2018-07-17 2020-01-22 Siemens Aktiengesellschaft Traffic shaping for transactions of a distributed database system
EP3599740A1 (de) 2018-07-25 2020-01-29 Siemens Aktiengesellschaft Steuern eines datennetzes hinsichtlich eines einsatzes einer verteilten datenbank
EP3609148A1 (de) 2018-08-06 2020-02-12 Siemens Aktiengesellschaft Verfahren und netzwerkknoten zur verarbeitung von messdaten
EP3609240A1 (de) 2018-08-09 2020-02-12 Siemens Aktiengesellschaft Computerimplementiertes verfahren und netzwerkzugangsserver zum verbinden einer netzwerkkomponente mit einem netzwerk, insbesondere einem mobilfunknetz, mit einem erweiterten netzwerkzugangskennzeichen
EP3614319A1 (en) 2018-08-20 2020-02-26 Siemens Aktiengesellschaft Tracking execution of an industrial workflow of a petri net
EP3629332A1 (de) 2018-09-28 2020-04-01 Siemens Aktiengesellschaft Sicheres ausgeben einer substanz
EP3633914A1 (de) 2018-10-05 2020-04-08 Siemens Aktiengesellschaft Verfahren und system zur nachweisbaren datenverarbeitung unter anwendung von obfuskation
EP3637345A1 (de) 2018-10-10 2020-04-15 Siemens Aktiengesellschaft Verknüpfung von identitäten in einer verteilten datenbank
EP3687209A1 (en) 2019-01-25 2020-07-29 Siemens Aktiengesellschaft Secure multi-hop communication paths
EP3693918A1 (en) 2019-02-08 2020-08-12 Siemens Gamesa Renewable Energy A/S Operational data of an energy system
EP3736715A1 (en) 2019-05-10 2020-11-11 Siemens Aktiengesellschaft Managing admission to a distributed database based on a consensus process
CN110175427B (zh) * 2019-06-03 2023-06-09 江西理工大学 一种在耦合振子系统中实现非对称振荡死亡的方法
US10761809B1 (en) * 2020-03-12 2020-09-01 Katholieke Universiteit Leuven Random number generator

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1782987A (zh) * 2004-09-28 2006-06-07 迈克纳斯公司 随机数发生器及生成随机数的方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6468668A (en) * 1987-09-09 1989-03-14 Hitachi Ltd Data compressor
JPH0798995A (ja) * 1993-09-29 1995-04-11 Oki Electric Ind Co Ltd リニアフィードバックシフトレジスタ
DE10213269A1 (de) * 2002-03-25 2003-10-23 Infineon Technologies Ag Zufallszahlengenerator
US7315874B2 (en) * 2003-03-14 2008-01-01 Nxp B.V. Electronic circuit for random number generation
JP4248950B2 (ja) * 2003-06-24 2009-04-02 株式会社ルネサステクノロジ 乱数発生装置
DE10357782B3 (de) * 2003-12-10 2005-05-04 Infineon Technologies Ag Vorrichtung und Verfahren zum Erzeugen von Zufallszahlen mit einem Pseudozufallsgenerator
DE602004029619D1 (de) * 2004-08-09 2010-11-25 Telecom Italia Spa Verfahren und vorrichtung zum erzeugen von zufallsdaten
EP1776757B1 (en) 2004-08-09 2019-04-10 Telecom Italia S.p.A. Random number generation based on logic circuits with feedback
DE602005008362D1 (de) * 2005-01-28 2008-09-04 Infineon Technologies Ag Oszillator-basierter Zufallszahlengenerator
CN101965552B (zh) 2008-03-04 2013-03-13 桑迪士克以色列公司 基于数控振荡器的数字随机数生成器

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1782987A (zh) * 2004-09-28 2006-06-07 迈克纳斯公司 随机数发生器及生成随机数的方法

Also Published As

Publication number Publication date
JP2011520178A (ja) 2011-07-14
WO2009127475A1 (de) 2009-10-22
JP5295357B2 (ja) 2013-09-18
DE102008018678B4 (de) 2011-02-03
ATE557341T1 (de) 2012-05-15
CN102007470A (zh) 2011-04-06
US8531247B2 (en) 2013-09-10
ES2384679T3 (es) 2012-07-10
EP2271980A1 (de) 2011-01-12
US20110032041A1 (en) 2011-02-10
DE102008018678A1 (de) 2009-10-22
EP2271980B1 (de) 2012-05-09

Similar Documents

Publication Publication Date Title
CN102007470B (zh) 用于产生随机比特序列的装置和方法
Golic New methods for digital generation and postprocessing of random data
US8892616B2 (en) Device and method for generating a random bit sequence
KR100861811B1 (ko) 난수 발생 방법 및 난수 발생기
KR101481572B1 (ko) 난수 발생 장치
JP3732188B2 (ja) 擬似乱数発生回路
JP3604674B2 (ja) 乱数生成回路
US9047152B2 (en) Delay device, method, and random number generator using the same
EP1776757A1 (en) Random number generation based on logic circuits with feedback
Mureddu et al. Experimental study of locking phenomena on oscillating rings implemented in logic devices
KR20140110142A (ko) 난수 발생기
CN101673351A (zh) 一种射频识别标签芯片的伪随机数产生电路及其产生方法
Sivaraman et al. FPGA based generic RO TRNG architecture for image confusion
Frustaci et al. A high-speed FPGA-based true random number generator using metastability with clock managers
CN110011663A (zh) 稳定环形振荡器的启动行为
Garipcan et al. DESSB-TRNG: A novel true random number generator using data encryption standard substitution box as post-processing
US10140096B1 (en) Preventing ring oscillator phase-lock
TWI579763B (zh) 具有亂數產生模式的儲存電路
CN111124363B (zh) 一种真随机数生成方法及真随机数发生器
US6552588B1 (en) Method and apparatus to generate pseudo-random non-periodic digital sequences
TWI497409B (zh) 亂數產生器及其亂數產生方法
CN102622205B (zh) 随机数发生器
Öztürk et al. A digital random number generator based on chaotic sampling of regular waveform
Gomez et al. Low‐cost TRNG IPs
Fischer et al. True random number generators in configurable logic devices

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150520

CF01 Termination of patent right due to non-payment of annual fee