专利名称:量子随机数生成器的制作方法
技术领域:
本发明涉及随机数生成器。更特别地,本发明涉及基于量子光学 的随机数生成器。
背景技术:
随机数是通过处理生成的数,其结果不可预知并且不可复制。随 机数在计算机科学和技术、通信、信息安全、通信系统的可靠性测试 以及其它应用中非常有用。在工程中,随机数经常用于测试系统的可 靠性。通过测试随机数的质量确定系统的可靠性。同样,在信息安全 领域,随机数的质量是整个安全性的关键因素。
主要存在两种类型的随机数生成器,其中一种是基于软件的生成 器。从广义的角度看,因为由算法生成的序列通常是周期性的,所以 软件生成器生成所谓的伪随机数。尽管这种伪随机数已经用于某些应 用,但是它们仍然不适合在对随机性要求严格的多数应用中使用。
另一种类型是物理(经典物理和量子物理)随机数生成器。经典 物理规定的宏观处理可用于生成随机数。从表面上看,似乎可通过电 路中的微小起伏引起的"噪声"生成随机数。但是,这种电子噪声装置 是否生成真正的随机数是存在争议的。决定论隐藏在复杂性的背后。 不幸的是,这种电子噪声装置通常固有地比伪随机数生成器更慢,从 而使其不适合用于需要大量随机数的任何应用。基于噪声的随机数生 成器的另 一 个缺陷在于,难以保证系统不受到例如环境温度或电磁场 等环境参数的影响。电子噪声装置在经过一段时间之后可变得不稳定。
目前, 一种基于量子物理生成随机数的方法得到重视。与经典物理相比,量子物理在根本上是随机的。其为现代物理的结构中唯一的 结合了随机性的理论。这一事实对于像提出了光量子理论的爱因斯坦 的物理学家是非常烦扰的。真正的随机数可通过监控放射性元素的放 射性衰变而生成。尽管基于量子物理的这种方法可生成质量良好的随 机数,但是这种生成器并不适合用于商业应用。
附属于日内瓦大学的公司id Quantique已出售一种基于量子物理 的量子力学随机数生成器。通过称为光子的单一"轻子(light particle)" 随机地撞击半透射镜保证了随机性。由射向半透射镜的源生成的光子 以50%的概率被反射或传播,并且可将这种测量转化为一串量子随机 位。然而,将半透射镜与探测器对准还有些困难。另一个缺陷在于, 难以与其它装置或组件集成,并从而难以减少组件的大小和成本。
发明内容
本发明的目的在于提供一种用于通过使用单光子的随机性质生成 真正的随机数的全光纤光学随机数生成器。
本发明的随机数生成器包括具有输入端口和两个输出端口的光耦 合器;连接于所述输入端口的单光子源,用于将单光子从所述输入端 口发射到所述输出端口 ;连接于所述两个输出端口中每一个的单光子 探测器,用于探测从所述两个输出端口中的任一个输出的所述光子; 以及用于根据所述单光子探测器的探测结果生成随机数的装置。
本发明还包括一种用于生成随机数的方法,包括生成一 串单光子; 将所述单光子耦合到具有两个输出端口的光耦合器中;探测从所述输 出端口中的任一个输出的所述单光子;以及根据探测结果生成随机数。
本发明的随机数生成器由全光纤装置和光纤耦合器实现,所述全 光纤装置例如均光纤、可变的光衰减器、激光器和单光子探测器,其 具有光纤连接器,所述随机数生成器真正的简单、便宜、可靠并高效。 此外,仅通过使用光纤连接器就可方便地连接以上全部光学装置,而 无需使用透镜或镜子以及用于光学对准的复杂过程。
图1示出了根据本发明的量子随机数生成器的原理;以及
图2示意性地示出了本发明的随机数生成器的实施方式。
具体实施例方式
量子系统具有随机性质,这对于本领域技术人员来说是公知的。 这种随机的性质是固有的,并可用于设计真正的随机数生成器。 如图l所示,根据本发明实施方式的随机数生成器包括单光子源
100、具有输入端口 201和两个输出端口 202和203的光耦合器200、 以及单光子探测计数器300。
单光子源100用于生成一串单光子。将单光子一个接一个传输到 光耦合器200的输入端口 201。光耦合器200是传统的光纤耦合器, 具有50:50的分流比。将来自单光子源100的单光子从耦合器200的 输入端口 201传输到耦合器200的任一输出端口。单光子探测计数器 300连接于耦合器200的输出端口 ,以探测从耦合器200的任一输出 端口输出的光子。如图l所示,可将从输出端口 202输出的单光子表 示为"O",将从输出端口 203输出的单光子表示为'T,,反之亦然。这 样,可通过使用单光子的随机性能获得真正的随机数。
如上所述,两个输出端口 202和203中的每一个都具有相同的单 光子输出概率。本发明的光耦合器允许进入光耦合器的单光子具有相 同的概率(50:50 )从端口 202或端口 203输出。
对于端口 202,状态可表示为
<formula>complex formula see original document page 6</formula> (1) 其中,|0〉表示没有光子从端口 202输出,|1〉表示一个光子从端口 202输出。
端口 202处的探测结果是离散的,因此,如果将单光子串连续发 射到输入端口 201,则光耦合器可生成离散的随机数串。在端口 203 测量到的结果与在端口 202测量到的结果是互补的。对于以上所述的 生成器,端口 202和203的总状态可由式(2)表示
<formula>complex formula see original document page 6</formula>(2)
式(2)表示纠缠状态(entangled state )。
根据以上所述的原理,具有随机性质的量子系统可由具有 一个输 入端口和两个相同的输出端口的单个耦合器容易地实现,所述输出端 口具有光纤抽头和连接器。下面参照图2进一步介绍本发明的随机数 生成器。
图2示出了本发明的随机数生成器的另一个实施方式。
如图2所示,本发明的随机数生成器包括具有激光器IO和可变的 光衰减器(VOA) 20的单光子源,具有输入端口 31和两个输出端口 32和33的50:50的光纤耦合器30,通过端口 32连接于光耦合器30 的第一单光子探测器(SPD) 40,通过端口 33连接于光耦合器30的 第二单光子探测器(SPD) 60,以及用于根据单光子探测器40和60 的探测结果生成随机数的装置50。
作为一种选择,每个脉沖发射正好一个光子的单光子源在将来可 用于可见和近红外波长。自发参量下转换也可用于生成单光子源。
在本发明的某些实施方式中,耦合器30可由波导管或光纤耦合器 实现。
在本发明的其它实施方式中,SPD 40或SPD 60可由半导体探测 器、电荷耦合装置传感器或光电倍增管探测器实现。
在本发明中,激光器IO发出光束。在VOA 20,激光器10发出 的光束在测定间隔内衰减为单光子。将单光子传输到50:50耦合器30 的输入端口 31。然后,单光子以相同的积克率,人端口 32或端口 33离开 耦合器。因此,由SPD40或60在端口 32或端口 33^果测到单光子的 概率分别为50%,探测不到光子的概率也为50%。因此,在端口 32 探测到的结果固有地并因此真正地是随机的。如上所述,端口 33的测 量结果的各个位均与端口 32的结果互补,因此也真正是随机的。
根据本发明,通过生成单光子,然后将其传播到光纤、光纤耦合 器以及具有光纤连接器的其它组件中,实现简单、便宜、可靠并高效 的随机数生成器。此外,由于光纤装置的使用,因此仅通过使用光纤 连接器就可方便地连接于单光子探测器,而无需使用透镜或镜子或光 学对准的复杂过程。
在本发明的具体实施方式
中,将单光子探测器40和60冷却到 -51。C,并使其工作在选通模式。激光器使用的波长在1550 nm左右。 SPD的探测效率大于10 % 。将连续波传统激光器光束衰减为单光子串, 以获得统计意义上的单光子。测定间隔(优选地,为0.2nm)内的计 数小于O.l,以保证可获得统计意义上的单光子。
由(美国)国家标准技术研究所发表的NIST测试可用于检测由本 发明的生成器获得的数据的随机性质。用于随机数生成器的NIST统 计测试组提供了 一组16个统计测试。这些测试对将表明随机数生成器 输出的序列是非随机的模式(如果检测到的话)的存在进行估计。随 机序列的性质可根据概率描述。在每个测试中,提取称为P-值的概率。 该值概括出理想随机性假设的可信程度。P-值为零表示序列好像是完 全非随机的。大于0.01的P-值表示可有99%的可信度认为序列是随 机的。这里仅用一种方法4全查实验数据。
在如上所述的测试方法中,将序列的长度选为3724 (大于100)。 例如,序列为
01010100100101001010
10010101000100010010
10101010101101000101
10110011011010110101
01101001001001100100
00101010101011001110
10100001011000010110
10010010100001010101
01101000101000100001
01010011011010101010
10110101101100100101
01010101010101010101
01010010011011011010
11011010010101101001
01011011010010101011 0 10 0 10 10 10
1 0 1 0 1 0 0 0 1 1 110 0 10 10 11 0 0 0 0 1 1 0 1 0 1 10 10 10 10 10 0 1 1 0 0 0 0 1 0 1 10 10 110 10 1
0 10 10 10 10 1
1 0 0 1 0 0 0 1 1 1 1 0 1 0 0 1 1 0 0 0 10 0 110 110 1 0 0 0 1 0 1 0 1 0 1 0 0 1 0 1 0 0 1 0 1 0 110 10 10 10 10 10 0 1110 1 10 0 110 10 10 10 0 10 10 10 1
0 1 1 0 0 1 0 0 1 0
1 1 0 0 0 1 1 0 0 1 10 110 0 110 1 0 110 10 10 10
0 10 10 10 110
1 0 1 1 0 0 1 0 0 1
0 10 0 10 10 10
1 0 1 0 0 0 1 0 1 1 0 110 1110 0 0 110 0 10 10 10 10 1110 10 11 0 1 0 1 0 0 0 1 0 1 0 0 1 1 0 1 0 0 11
1 0 0 0 1 1 0 1 0 0 0 10 10 10 10 0 0 10 10 10 10 1 0 10 10 10 10 0 10 110 0 10 10 10 10 10 110 1 0 10 0 10 10 11 10 110 110 0 1 0 10 110 10 10 0 0 1 0 1 0 0 1 1 0 110 10 10 10 1 0 10 1110 10 1
0 0 1 1 0 1 0 0 0 1
1 0 0 1 0 0 0 1 1 0 0 10 110 10 10 10 110 10 10 1 0 10 10 0 110 1 10 10 110 10 1 10 10 10 10 10 0 10 10 1110 1 10 10 10 10 0 1 110 10 10 0 10
0 0 0 1 0 1 0 1 1 1 10 10 110 110
1 0 0 1 0 0 0 1 1 1 10 0 10 110 10 0 1110 10 10 0 0 10 0 10 10 11 110 110 110 1 0 110 1110 1101101000100101010110
01010111010100111010
01010111100101011101
01010010101110010101
01011010101010110101
01011101010101010101
10101101010011010101
01110010000101101101
01011010100101100001
10000101010010100101
00101011010101011101
10010101101101011010
11010100110011011010
10101010101011010001
01010110010001010010
11010110110110010110
01110101010010100101
00100101001010011101
01001011010111001110
11010101011011101001
01101010010101001011
10000101011010101010
10010100010110101011
01101101010100101010
10100101110110110110
10001010101101010101
00101011010100101010
11001001010011001110
01011010011101010110
1101010001101010010101010100101010101011
01101010011010101010
10010110111001010100
11010101101101010101
01010101010101010001
01010111101100101011
00101010110110010010
10001010101010101100
10001010100101101101
11001011011001101110
01010101010101010110
10010011000110100101
10011010011010100110
01010110110110101010
10010101101010100011
10110101101011011101
01001001101100010001
01001101101001010110
10100101101010101001
00110110101011011011
01101010011010101001
00100100101010101100
10110101001010101010
11000101010110100101
01101011010101001011
00100011010001010010
01010010101101010101
01010101100010101010
10101011011010110100
1100101011011011010100101010100110100101
01010101100101010101
11010101111010101010
10111110101101101011
10111010011010010100
10101101011011101010
01000101010101101101
01101010111010111010
10111001010110110101
01100010010101011100
10111011010101101101
01101010101010010111
01111001001101100011
01010101101101001001
01010101101101100101
10101001100100110101
01001001010011100101
10101011101101100111
10100101100111011110
10110010101101010110
10101110011010101011
01001111011011110110
11010101010101010100
11001011010101010101
01010100110010101011
00010011101011111110
00101000010110110111
10111011000100100110
1010101010101010101
1011010100110101111010101000100111010110
00100100100100101001
01001001000010001010
00011110010101010010
10100111010101110010
10101100110101010101
00101100001010101101
01001010101011010010
10110101001111010100
10111010101011001011
01011110011010101001
01010001101110011010
10100100101100011010
10110001000010001011
00111010101010100101
01001010110110011000
11101101101110100100
00000101101010010010
10100011011011001010
10010001010110101010
11001001010100101010
11010100101011001001
01010110101001000010
01010101010000111011
01011110101010101010
10010100010100101010
10000101010101010101
01110100101111010110
00100101010110111001
10101010010000100101<sequence>complex sequence see original document page 14</sequence>
才艮据以上所述的标准,当P的值大于0.01时,即P.value^0.01时,
序列是随机的。因此,显然能得到这样的结论,即,本发明的生成器 生成了随机数序列。
另 一 方面,本发明测量探测器中的暗电流生成的噪声序列的随机
性,例如,噪声序列为
00110000000100000100
10100001000011101000
01100011001100100000
00000000000110011010
01110100000010100101
00001010000010000011
00000110000000000000
01000001000111100000
01111000000100000011
01010100010001000010
10000010100100010000
00110010010000011000
01000010000000000000
00000000000000000000
10011001000100000011
00010001000000100000
00011011000000011000
01011000000000101000
00110010000000001110
00000001110001000000
01001000010000100100
11100010000000000010
11101100010100100100
00000000001000110000
01000000000000000101
10000000100110000110
01000011000000010101
11101000100001001000
00100100010000000010
10000000000010000000
01000000101010010000
01001011010111000101
00000001000001001100
01010001100100100000
00010011100110000100
11001000110000010010
00100010011000111001
00001001101001010000
00011000010001000000
10000000000101001010
10100001001100001001
00110000000100111011
00000101001100100100
10000010100101110001
00000101000001100010
01001000010100001001
10001001000010000100
00100010111000011001
00000000001001000001
01101100000000011100
01110001000001000100
00000000100001000010
00000000001000010000
00011010001000000111
01100000101001101001
10011100000000100000
00000001000010010001
00100000001010001000
11000000010000000010
<formula>complex formula see original document page 17</formula>
00010011000000001001
01000011110010000010
10101100000101100100
10000101100001000000
10000010000001100000
00010000000100010101
10100000110100001101
00100000010100100011
00110000010011000000
01000100001100000101
00010010101100110011
10010100100110100101
01001001100101100110
00001001000101010000
10000000000100000110
00010100101110100000
01001101000010000110
00000100010001001101
01001100111000011101
01100000000011100000
10001010000110000001
10010101000100101000
00001000000000000000
00100101110000100100
00110110010010010000
01001000001000000001
10100000000001110011
00000010100011010110
00010001000110010101
10000001000001001100<sequence>complex sequence see original document page 19</sequence>00000000010100100000
01100000000000010101
10001000000000000000
10000001100010001011
10010100000100000001
11000000011000000000
00000001100010100000
00000100000101000000
11100000100000011110
01000010101001101000
00000001001001000100
01000010000000010110
10000011011000000000
10110100110011101010
00001010110110101000
10000101010001100010
10000000110100110010
01011000011000000000
00000000000000001000
00011000010001011011
00001001010000111010
10010000001100000100
10011000010111000010
00001011000000000001
10000100011100000100
10000100100111100000
10000000100000110000
00010000000000010100
01000000000000011000
1010001000100001000000100000100001001011
00110001000000011000
01010101101000000000
10001100111110000000
01001101010110100000
00001000000000000000
10000111011000010000
10000000011001010111
01010000000000000000
00010111100001000100
10010110101011010001
其中相应的P,va,ue为4.08Xl0-154。根据上述标准,其为非随机的。
#4居以上所述的标准,当P的值大于0.01时,即P—value^).01时,
序列是随机的。因此,显然能得到这样的结论,即,根据本发明的生
成器生成了随机数序列。
尽管结合以上实施方式和示例对本发明进行了说明,但是,本领
域技术人员应该理解,可使用本发明的各种修改、可选的变体和等同
物,而不偏离本发明的精神。因此,以上说明不应视为本发明范围的
限制,本发明的范围由权利要求限定。
权利要求
1.一种随机数生成器,包括光耦合器,具有输入端口和两个输出端口;单光子源,连接于所述输入端口,并用于生成单光子串,其中每个单光子从所述输入端口传输到所述两个输出端口中的任意一个;两个单光子探测器,分别连接于所述两个输出端口,用于探测从所述两个输出端口中的任意一个输出的所述单光子;以及用于根据所述单光子探测器的探测结果生成随机数的装置。
2. 如权利要求1所述的随机数生成器,其中所述单光子源包括 激光器,用于发射光束;以及可变的光衰减器,将所述激光器发射的光衰减为所述单光子串。
3. 如权利要求2所述的随机数生成器,其中所述激光器是任意的 激光器。
4. 如权利要求1所述的随机数生成器,其中所述光耦合器是波导 管或光纤耦合器。
5. 如权利要求1所述的随机数生成器,其中所述光耦合器具有 50:50的分流比。
6. 如权利要求1所述的随机数生成器,其中所述单光子探测器是 半导体探测器、电荷耦合装置传感器或光电倍增管探测器。
7. 如权利要求1所述的随机数生成器,其中所述激光器、所述可 变的光衰减器、所述光耦合器以及所述单光子探测器由光纤通过光纤 连接器相连接。
8. —种随机数生成器,包括 光耦合器,具有输入端口和两个输出端口;单光子源,连接于所述输入端口,用于生成单光子串,其中每个单 光子从所述输入端口传输到所述两个输出端口中的任意一个;光子探测器,连接于所述两个输出端口,用于探测从所述两个输 出端口中的任意一个输出的所述单光子,并根据对所述单光子的探测 生成随机数。
9. 一种用于生成随机数的方法,包括 生成单光子串;将每个单光子传输到具有两个输出端口的光耦合器中; ^t笨测从所述两个输出端口任意之一输出的所述单光子;以及 根据探测结果生成随机数。
10. 如权利要求9所述的方法,其中生成单光子串的所述步骤进 一步包括生成光束;以及将所述光束衰减为所述单光子串。
11. 如权利要求9所述的方法,其中将从所述两个输出端口中的 一个输出的单光子表示'T,,将从所述两个输出端口中的另一个输出的 单光子表示"0"。
12. 如权利要求9所述的方法,其中所述光耦合器具有50:50的 分流比。
13. 如权利要求9所述的方法,其中所述光耦合器是波导管或光 纤耦合器。
全文摘要
公开了一种全光纤光学量子随机数生成器,包括具有输入端口和两个输出端口的光耦合器;连接于所述输入端口的单光子源,用于将单光子从所述输入端口发射到所述输出端口;连接于所述两个输出端口中每一个的单光子探测器,用于探测从所述两个输出端口中的任一个输出的所述光子;以及用于根据所述单光子探测器的探测结果生成随机数的装置。本发明的生成器可生成真正的随机数。
文档编号G06F7/58GK101198926SQ200680021363
公开日2008年6月11日 申请日期2006年6月16日 优先权日2005年6月16日
发明者罗玉辉, 陈锦泰 申请人:香港中文大学