ES2835075T3 - Generadores de números aleatorios cuánticos - Google Patents

Generadores de números aleatorios cuánticos Download PDF

Info

Publication number
ES2835075T3
ES2835075T3 ES16831127T ES16831127T ES2835075T3 ES 2835075 T3 ES2835075 T3 ES 2835075T3 ES 16831127 T ES16831127 T ES 16831127T ES 16831127 T ES16831127 T ES 16831127T ES 2835075 T3 ES2835075 T3 ES 2835075T3
Authority
ES
Spain
Prior art keywords
detector
signal
light source
optical
delayed
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.)
Active
Application number
ES16831127T
Other languages
English (en)
Inventor
Jane Nordholt
Richard Hughes
Raymond Newell
Charles Peterson
Alexander Rosiewicz
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.)
Triad National Security LLC
Original Assignee
Triad National Security LLC
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
Priority claimed from US14/812,623 external-priority patent/US10019235B2/en
Application filed by Triad National Security LLC filed Critical Triad National Security LLC
Application granted granted Critical
Publication of ES2835075T3 publication Critical patent/ES2835075T3/es
Active 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0852Quantum cryptography

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Electromagnetism (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Optical Communication System (AREA)
  • Photometry And Measurement Of Optical Pulse Characteristics (AREA)
  • Optical Modulation, Optical Deflection, Nonlinear Optics, Optical Demodulation, Optical Logic Elements (AREA)

Abstract

Un generador de números aleatorios, que comprende: una fuente de luz térmica (102; 202; 302; 402; 502; 602; 702) operable para producir un flujo óptico emitiendo fotones en un modo de campo óptico, donde el modo de campo óptico se rellena con fotones de acuerdo con una distribución de probabilidad de Bose-Einstein; un primer detector (114; 206; 308a; 412; 504; 604; 704) operable para recibir una porción (114) del flujo óptico de la fuente de luz y para proporcionar una primera señal de detector basándose en el flujo óptico recibido; y un sistema de salida operable para generar un flujo de bits no desviados independientes basándose en al menos la primera señal de detector a una tasa definida mediante un tiempo de intervalo de muestreo, donde un número medio de fotones de la fuente de luz térmica detectados por el primer detector por tiempo de intervalo de muestreo es mayor que un número de modos de campo óptico producidos por la fuente de luz térmica.

Description

DESCRIPCIÓN
Generadores de números aleatorios cuánticos
RECONOCIMIENTO DE APOYO GUBERNAMENTAL
Esta invención se realizó con el apoyo gubernamental bajo el Contrato N.° DE-AC52-06NA25396 otorgado por el Departamento de Energía de Estados Unidos. El gobierno tiene ciertos derechos en la invención.
Campo de la invención
La presente invención se refiere en general a generadores de números aleatorios, y, más específicamente, a generadores de números aleatorios que producen números aleatorios basándose en fenómenos cuánticos.
Antecedentes
Muchas aplicaciones de sistemas informáticos requieren acceso a un flujo de números aleatorios. Las aplicaciones típicas incluyen criptografía, juegos, y muestreo estadístico y análisis. Los generadores de números aleatorios (random number generators, RNG) han estado basados en diversos efectos físicos tales como el ruido térmico de los componentes electrónicos, decaimiento radioactivo y ruido de disparo. Otros RNG están basados en enfoques de software y pueden usar la temporización de unos movimientos del usuario del ordenador como una base para la generación de números aleatorios. Los RNG bien diseñados, en general, pueden proporcionar largas secuencias de números aleatorios, pero, de manera eventual, los números producidos no están no relacionados de manera estadísticamente completa, y se consideran más apropiadamente que son "pseudo-aleatorios". Los RNG basados en circuitos eléctricos convencionales que se aprovechan del ruido térmico o de disparo pueden requerir excesiva área de oblea cuando se implementan en un circuito integrado. En vista de lo anterior y de la necesidad de hace tiempo de números aleatorios, son necesarios enfoques alternativos a la generación de números aleatorios.
El documento US 2012/0221615 A1 desvela un sistema de generación de números aleatorios. El sistema comprende un láser, que se excita para operar bastante por encima de su umbral de excitación de manera que su haz de salida está caracterizado por un estado coherente. Se proporciona un controlador de temperatura y controlador de corriente para controlar las características de operación del láser. El estado coherente de salida se mide por un fotodetector opcionalmente mediante un atenuador óptico cuyo fin es minimizar todas las contribuciones de ruido clásicas. El fotodetector puede tomar la forma de, por ejemplo, un fotodiodo. El principio detrás del uso de un fotodiodo es medir las propiedades cuánticas estadísticas del estado coherente emitido por el láser debido a que la fotocorriente generada por el estado coherente fluctuará como consecuencia de fluctuaciones subyacentes en el número de fotones incidentes. La salida del fotodiodo es una fotocorriente, que se procesa por circuitería que comprende un amplificador, un convertidor de analógico a digital ADC y circuitería de procesamiento electrónica, tal como una CPU. La salida de la circuitería es una secuencia de números aleatorios de distribución de probabilidad uniforme y sustancialmente sin desviación (bias).
Es el objeto de la presente invención proporcionar un método y sistema de generación de números cuánticos mejorado.
El objeto se consigue mediante la materia objeto de las reivindicaciones independientes.
Se definen realizaciones mediante las reivindicaciones dependientes.
La presente divulgación se refiere a un generador de números aleatorios cuántico (quantum random number generators, "QRNG"). En algunas realizaciones, los QRNG desvelados pueden capturar la impredecibilidad irreductible de la física cuántica como se muestra en las fluctuaciones de intensidad de la luz térmica, que tienen sus raíces en la indistinguibilidad de los fotones, las partículas elementales de la luz. La presente divulgación también se refiere a métodos para facilitar la aleatoriedad cuántica de una fuente de luz térmica para dominar cualquier ruido clásico en el QRNG, y proporcionar flujos de bits aleatorios de salida que no únicamente pasan pruebas de aleatoriedad estadísticas comprensivas, sino que también tienen la imprevisibilidad (entropía) atribuible a las propiedades cuánticas de la fuente de luz térmica. En alguna realización, se desvela una versión "básica" del QRNG que es adecuada para muchas aplicaciones que requieren números aleatorios. En otras realizaciones, se desvela una versión de entropía cuántica completa criptográfica del QRNG que es compatible con normas de diseño para generadores de números aleatorios verdaderos criptográficos. La versión criptográfica puede incluir características de tanto auto-prueba como de protección frente a fallos. Ambos tipos de las realizaciones pueden ser susceptibles de operación a tasas ultra altas (muchas decenas de Gbps), fabricación de bajo coste, y factor de forma robusto pequeño con interfaces informáticas convencionales.
Breve descripción de los dibujos
Para un entendimiento más completo de diversas las realizaciones de la presente invención, se hace referencia ahora a las siguientes descripciones tomadas en conexión con los dibujos adjuntos en los que:
La Figura 1 es un diagrama esquemático que muestra un generador de números aleatorios (RNG) en el que una intensidad detectada y una intensidad detectada ópticamente retardada se dirigen a un comparador, de acuerdo con algunas realizaciones.
La Figura 2 es un diagrama esquemático que muestra un generador de números aleatorios en el que una intensidad detectada y una intensidad detectada digitalmente retardada se dirigen a un comparador, de acuerdo con algunas realizaciones.
La Figura 3 es un diagrama esquemático que muestra un generador de números aleatorios en el que están acoplados detectores equilibrados para producir una intensidad detectada y una intensidad detectada ópticamente retardada que se dirigen a un comparador, de acuerdo con algunas realizaciones.
La Figura 4 es un diagrama esquemático que muestra un generador de números aleatorios en el que una intensidad detectada y una intensidad detectada ópticamente retardada se filtran o suavizan y a continuación se combinan, de acuerdo con algunas realizaciones.
La Figura 5 es un diagrama esquemático que muestra un generador de números aleatorios en el que una intensidad detectada por un primer detector de un par de detectores equilibrados y una intensidad detectada eléctricamente retardada se dirigen a un comparador, de acuerdo con algunas realizaciones.
La Figura 6 es un diagrama esquemático que muestra un generador de números aleatorios en el que la intensidad detectada se digitaliza, y se combinan señales digitalmente retardadas y de intensidad digitalizada, de acuerdo con algunas realizaciones.
La Figura 7 es un diagrama esquemático que muestra un generador de números aleatorios en el que la intensidad detectada se digitaliza, y se combinan señales digitalmente retardadas y de intensidad digitalizada, de acuerdo con algunas realizaciones.
La Figura 8 es un diagrama de bloques de una arquitectura de alto nivel de generador de números aleatorios que contiene un extremo frontal y un extremo trasero, y que emite un flujo de bits aleatorios, de acuerdo con algunas realizaciones.
La Figura 9 es un diagrama de bloques de un extremo frontal de generador de números aleatorios en el que se usa una fuente de luz térmica usada para producir una salida digitalizada, de acuerdo con algunas realizaciones.
La Figura 10 es un diagrama de bloques de un extremo trasero de generador de números aleatorios básico que recibe entrada de un extremo frontal y produce un flujo de bits de salida, de acuerdo con algunas realizaciones.
La Figura 11 es un diagrama de bloques que muestra un circuito de post-procesamiento que produce salida de envío por flujo continuo, de acuerdo con algunas realizaciones.
La Figura 12 es un diagrama de bloques que muestra un circuito de post-procesamiento que produce salida formateada, de acuerdo con algunas realizaciones.
La Figura 13 es un diagrama de bloques de una etapa de post-procesamiento de generador de números aleatorios de entropía cuántica completa, de acuerdo con algunas realizaciones.
La Figura 14 muestra datos de caracterización de entropía representativos de un generador de números aleatorios de entropía cuántica completa, de acuerdo con algunas realizaciones.
La Figura 15 ilustra un método de generación de números aleatorios, de acuerdo con algunas realizaciones.
Las Figuras 16A-16D ilustran espectros de señales eléctricas asociadas con intensidad de fuente de luz una diversidad de fuentes.
Descripción detallada
Como se usa en esta solicitud y en las reivindicaciones, las formas singulares "un", "una" y "el/la" incluyen las formas plurales a menos que el contexto dicte claramente de otra manera. Adicionalmente, el término "incluye" significa "comprende". Además, el término "acoplado" no excluye la presencia de elementos intermedios entre los elementos acoplados.
Los sistemas, aparatos y métodos descritos en el presente documento no deben interpretarse como limitantes de manera alguna. En su lugar, la presente divulgación se refiere a todas las características y aspectos novedosos y no evidentes de las diversas realizaciones desveladas, en solitario y en diversas combinaciones y subcombinaciones entre sí. Los sistemas, métodos y aparatos desvelados no están limitados a ningún aspecto o característica específicos o combinaciones de los mismos, ni el sistema, métodos y aparatos desvelados requieren que estén presentes una o más ventajas específicas o los problemas a resolver. Cualesquiera teorías de operación son para facilitar la explicación, pero los sistemas, métodos y aparatos desvelados no están limitados a tales teorías de operación.
Aunque las operaciones de algunos de los métodos desvelados se describen en un orden secuencial particular para presentación conveniente, debería entenderse que esta manera de descripción abarca la reorganización, a menos que se requiera una ordenación particular por idioma específico expuesto a continuación. Por ejemplo, las operaciones descritas secuencialmente pueden, en algunos casos, reorganizarse o realizarse de manera concurrente. Además, por motivos de simplicidad, las figuras adjuntas pueden no mostrar las diversas maneras en las que pueden usarse los sistemas, métodos y aparatos desvelados en conjunto con otros sistemas, métodos y aparatos. Adicionalmente, la descripción en ocasiones usa términos como "producir" y "proporcionar" para describir los métodos desvelados. Estos términos son abstracciones de alto nivel de las operaciones reales que se realizan. Las operaciones reales que corresponden a estos términos variarán dependiendo de la implementación particular y son fácilmente discernibles por un experto en la materia.
Los números aleatorios se requieren en criptografía para muchos fines, incluyendo: claves de encriptación, claves de autenticación, claves de firma de un solo uso, vectores de inicialización, desafíos aleatorios, números aleatorios utilizados solo una vez, valores de relleno, generación de parámetros de clave pública usando algoritmos aleatorizados, y como entrada para sistemas de distribución de clave cuántica (Quantum Key Distribution, QKD). Para usos criptográficos, se desean bits aleatorios que cumplan los siguientes requisitos:
• Los bits deben ser impredecibles. Una manera de cuantificar la impredecibilidad de un flujo de bits es con la "entropía" del flujo. La entropía es una cantidad física fundamental, y puede ser una medida de la ausencia de determinismo en un sistema. En teoría de la información, la entropía de un flujo de mensajes (en ocasiones denominada la "entropía de Shannon") es una medida de la cantidad media de información requerida para especificar cada mensaje. Un flujo de bits que muestra aleatoriedad perfecta mostraría un bit de entropía por bit. Esta condición se denomina en el presente documento y en el campo como "entropía completa"
• El método de generación de bits aleatorios debe proporcionar aseguración de que la cantidad de entropía mostrada por los bits aleatorios no puede verse influenciada por un adversario.
• El método de generación de bits aleatorios debe cumplir con una arquitectura aceptada y metodología de evaluación.
Los generadores de números aleatorios (QRNG) facilitan todos estos tres objetivos. Los QRNG y métodos desvelados se aprovechan de la impredecibilidad intrínseca y de esta manera de la entropía en el fenómeno cuántico, y son especialmente deseables en el ajuste adversarial de criptografía para generación de parámetros: sin adversario, hoy o en el futuro, pueden predecir o influenciar el "ruido" cuántico. En este sentido, los RNG cuánticos desvelados son superiores a otros RNG conocidos que únicamente producen flujos de bits "pseudoaleatorios" que se generan en su totalidad por procedimientos causales totalmente determinísticos (por ejemplo, usando algoritmos matemáticos que generan flujos de bits pseudoaleatorios basándose en un valor de "semilla" inicial). Aunque tales flujos de bits pseudoaleatorios pueden pasar pruebas estadísticas convencionales para aleatoriedad, la única entropía que poseen es la de los bits usados para hacer semilla el RNG pseudoaleatorio, y muestran entropía mucho inferior por bit que las secuencias de bits verdaderamente aleatorios. Una secuencia de 1010 bits que se hizo semilla con un único bit aleatorio únicamente posee 1 bit de entropía. En contraste, los RNG cuánticos desvelados son generadores de números aleatorios verdaderos que usan efectos cuánticos impredecibles de manera irreducible para generar flujos de bits aleatorios. Tales flujos de bits tienen entropía alta, y en algunas realizaciones pueden mostrar 1 bit de entropía por bit (es decir, aleatoriedad "perfecta"). En otras palabras, una secuencia de 1010 bits producida por los QRNG desvelados puede tener 1010 bits de entropía cuántica completa-cada bit es impredecible incluso si se examinaran todos los bits anteriores. Aunque otros generadores de números aleatorios verdaderos intentan usar un fenómeno físico para proporcionar entropía, muchos de estos sistemas son meramente caóticos de manera clásica y no impredecibles de manera inherente. Su imprevisibilidad aparente proviene de una ausencia de conocimiento de los detalles del estado anterior del sistema, y no proviene de una ausencia fundamental de determinismo. Únicamente el fenómeno cuántico y por lo tanto los generadores de números aleatorios cuánticos (QRNG) son verdaderamente impredecibles.
Los RNG y métodos desvelados también pueden suministrar números aleatorios con entropía cuántica completa a altas tasas. A diferencia de otros métodos y aparatos conocidos, el RNG cuántico desvelado no requiere detección de único fotón o incluye contribuciones de ruido clásico. En algunas realizaciones, los QRNG desvelados han demostrado que proporcionan números aleatorios a altas tasas de hasta 44 Gbps. En ejemplos típicos, los QRNG desvelados muestran relaciones de señal a ruido clásico cuántico grande, y en algunos ejemplos, se usa detección diferencial para eliminar o reducir una de las fuentes más grandes de contaminación de ruido clásica de números aleatorios usando rechazo de modo común. Además, los QRNG como se desvelan en el presente documento pueden hacerse compactos y pueden ser sencillos de fabricar.
Las realizaciones representativas de generadores de números aleatorios se describen a continuación. Estas realizaciones incluyen fuentes de luz configuradas para producir números aleatorios basándose en las fluctuaciones de intensidad cuánticas-ópticas contra-intuitivamente grandes atribuibles a la física cuántica de fotones como partículas elementales indistinguibles que obedecen estadísticas de Bose-Einstein. Ejemplos de esta propiedad que pueden aprovecharse para QRNG incluyen: fluctuaciones de intensidad en luz térmica, tal como radiación de cuerpo negro; agrupamientos de fotones en flujos de fotones temporales; y las denominadas fluctuaciones de intensidad de Hanbury Brown-Twiss que se producen combinando intensidades ópticas (proporcionales a un cuadrado de la amplitud de un flujo óptico) o señales eléctricas asociadas con intensidades ópticas.
Aunque se han entendido las fluctuaciones de intensidad cuánticas-ópticas desde que se examinó en primer lugar la mecánica cuántica de los cuerpos negros a principios de siglo 20 (A. Einstein "Zum gegenwartigen Stand des Strahlungsproblems" Phys. Zeitschrift 10, 185 (1909)), no se aplicaron como una herramienta científica hasta que Robert Hanbury Brown y Richard Twiss tuvieron la idea de que estas fluctuaciones en la luz de las estrellas (o en sus experimentos, emisiones de radio estelares) estarían correlacionadas en dos detectores diferentes hasta que los detectores estuvieran suficientemente alejados que pudieran resolver el disco de la estrella (mover los detectores más alejados aumentó su resolución espacial de las imágenes estelares si pueden ignorarse los efectos atmosféricos). Esto es debido a que una estrella no resuelta es una singularidad espacial en un mono-modo espacial mecánico cuántico. Una vez que puede resolverse la estrella, están presentes más modos espaciales y las fluctuaciones de intensidad de los diferentes modos serán independientes. Por lo tanto moviendo las dos antenas de radio más y más alejadas, el diámetro de una estrella podría medirse directamente observando cuándo disminuyeron las correlaciones en las fluctuaciones de intensidad de los dos detectores. Durante décadas, esto era el medio principal de medir directamente el tamaño de estrellas. Como con Hanbury Brown y Twiss, los QRNG desvelados aprovechan las fluctuaciones de intensidad aleatoria en la radiación de las fuentes térmicas para generar números aleatorios, como se analiza a continuación.
Los fotones de una fuente de luz pueden mostrar agrupamiento (fluctuaciones de intensidad) debido a los efectos mecánicos cuánticos. La razón para esto es debido al nivel atómico, cuando se emiten fotones de un átomo o molécula, hay un campo electromagnético asociado. Cuando ese campo es "alto" en un modo óptico particular, se mejora la probabilidad cuántica-mecánica de que otros emisores también emitirán en ese modo. De manera específica y formal, los fotones dentro del mismo tiempo de coherencia y longitud de onda son partículas elementales idénticas denominadas bosones. Si ya hay un fotón presente en un modo, más fotones desearán unirse. Cuantos más fotones haya en un modo, más probable será que se emitan fotones también en ese modo. Esto da lugar a "agrupamientos" de fotones que provocan que la intensidad de una fuente de luz fluctúe.
El perfil temporal del agrupamiento mecánico cuántico (fluctuaciones de intensidad) puede ser completamente aleatorio. En otras palabras, cuando los fotones de una fuente de luz no muestran memoria entre una unidad de tiempo a otra, la presencia (o ausencia) de una fluctuación de intensidad en un tiempo no afecta la probabilidad de que habrá (o no habrá) una fluctuación de intensidad en otro tiempo. Cada unidad de tiempo de este tipo puede expresarse como "tiempo de coherencia" que se aproxima por la amplitud de las longitudes de onda que produce la fuente de luz dividida por la velocidad de la luz, c. En las realizaciones ilustrativas desveladas en el presente documento, ese tiempo de coherencia es en el orden de unos pocos femto segundos. Aprovechando la apariencia aleatoria de "agrupamientos" de fotones, los generadores de números aleatorios desvelados pueden generar números aleatorios a altas tasas.
El tiempo de coherencia establece la velocidad máxima teórica a la que los generadores de números aleatorios desvelados pueden generar números aleatorios. Usando fuentes de luz que generan fotones en un número superior de modos puede permitir que los generadores de números aleatorios desvelados generen flujos de bits aleatorios a una tasa más rápida, pero aún dividirán los fotones que se están generando por la fuente de luz entre un mayor número de modos. Hablando en general, un número mayor de fotones por modo óptico puede ser ventajoso para aumentar la amplitud de "agrupamientos" de fotones, aumentando por lo tanto la relación de señal a ruido de los números aleatorios cuánticos generados.
Los QRNG desvelados pueden usar fluctuaciones de intensidad cuántica-óptica basándose en flujos ópticos que son suficientemente grandes para reducir al menos algunos efectos de ruido, a diferencia de la generación de aleatoriedad basándose en ruido de disparo óptico. El ruido de disparo es un fenómeno cuántico más comúnmente conocido puesto que implica las elecciones aleatorias de únicos fotones. La dificultad es que los detectores de único fotón son inherentemente lentos y costosos y debido a que la relación de señal a ruido de ruido de disparo es inversamente proporcional a la raíz cuadrada del número medio de fotones por muestra, los intentos para usar números mayores de fotones para la generación de números aleatorios más rápida y más económica da como resultado un sistema que debe detectar fluctuaciones muy pequeñas incluso con muy pocos fotones por muestra (por ejemplo si hay de media 10.000 fotones por muestra, las fluctuaciones cuánticas son únicamente el 1 % de nivel). Esto hace que la interferencia de ruido clásico sea difícil de rechazar.
Sin embargo, si se usan fluctuaciones de intensidad cuánticas-ópticas, es innecesaria la detección de único fotón. En los ejemplos descritos a continuación, los flujos ópticos de entre aproximadamente 103 y 108 fotones/ns son convenientes, y aproximadamente 106 fotones/ns es lo típico. La relación de señal a ruido de fluctuaciones de intensidad cuánticas-ópticas es dependiente del número de modos y si el número de modo es constante, la relación de señal a ruido es proporcional al número de fotones. Esto hace posible tener señales grandes y señal a ruido grande. Tal y como se usa en el presente documento, los flujos ópticos hacen referencia a la propagación de radiación electromagnética en intervalos de longitud de onda de aproximadamente 100 nm a aproximadamente 10 pm. Pueden usarse otros intervalos espectrales, pero los detectores ópticos que tienen anchos de banda eléctricos de al menos 10 MHz, 100 MHz, 1 GHz o mayor tienden a estar fácilmente disponibles en los intervalos anteriormente mencionados. Las señales eléctricas que corresponden a flujos ópticos pueden estar asociadas con tensiones eléctricas que varían en el tiempo, corrientes, o combinaciones de las mismas producidas con uno o más fotodetectores. Por conveniencia, tales señales pueden denominarse como señales de detector y son proporcionales a intensidades ópticas. Las señales de fotodetector como se usan en el presente documento hacen referencia por lo tanto a señales producidas por lo que corresponden a la denominada detección de "ley del cuadrado".
Combinar una señal de fotodetector producida en respuesta a una intensidad óptica con una versión retardada de manera adecuada de la misma señal de fotodetector (es decir, retardada para reducir o eliminar las correlaciones) puede mejorar la calidad de fluctuaciones aleatorias. El retardo de tiempo puede determinarse por el tiempo de coherencia de la fuente óptica (que puede ser femtosegundos o menor) y el ancho de banda de la electrónica (que puede estar en el orden de 1-10 GHz). Si el retardo está por encima de estas escalas de tiempo, la señal retardada puede ser independiente de la señal no retardada. Esto proporciona un medio de eliminación de características indeseables tales como desviaciones de fuente de alimentación que cambian lentamente los niveles de señal global y en algunos diseños electrónicos que pueden provocar desviaciones (por ejemplo, más 1 que 0) en los bits de salida. En los ejemplos desvelados, los retardos entre aproximadamente 10 ns y 10 ps son generalmente satisfactorios, pero el retardo puede depender de la fuente y de las propiedades electrónicas. Estas fluctuaciones aleatorias pueden usarse para producir números aleatorios como se desvela a continuación. Para algunas fuentes de luz, se evita preferentemente la producción de las características espectrales introducidas acoplando los flujos ópticos de fuente de luz óptica y otros componentes ópticos. Por consiguiente, se usan aislantes ópticos con algunas realizaciones y con algunas fuentes de luz. Por ejemplo, los reflejos de un flujo óptico de vuelta hacia una fuente pueden introducir resonancias que aumentan la coherencia de flujo óptico que es indeseable en la generación de números aleatorios.
Puede usarse una diversidad de fuentes de luz térmica. Como se usa en el presente documento la expresión "fuente de luz térmica" o "luz térmica" se refiere a luz que tiene uno o más modos de campo óptico que se rellenan con fotones de acuerdo con una distribución de probabilidad de Bose-Einstein de número de fotones (a diferencia de luz caótica que puede tener una distribución de número de fotones normal). Ejemplos de fuentes ópticas térmicamente distribuidas incluyen radiación de cuerpo negro de un filamento caliente (por ejemplo una bombilla de luz incandescente), diodos de emisión de luz (LED), y amplificadores ópticos de semiconductores (SOA) eléctricamente bombeados y configurados de manera adecuada así como amplificadores ópticos ópticamente bombeados.
Una fuente de luz óptica ideal debe poseer varias propiedades. Una característica deseada de una fuente de luz óptica ideal es que muestra correlación de intensidad óptica baja. Las Figuras 16A-16D ilustran espectros de las intensidades ópticas de diversas fuentes. Las Figuras 16A, 16B y 16D están asociadas con fuentes que se espera que rindan satisfactoriamente en la generación de números aleatorios, aunque las características espectrales de la Figura 16C indican que la fuente asociada puede mostrar propiedades de coherencia insatisfactorias, y ser inadecuada.
Puede ser también ventajoso usar una fuente de luz que maximiza el número de fotones emitidos por modo óptico. Controlar el número de modos puede ser importante para asegurar que el flujo de bits resultante tiene alta entropía que se deriva de fluctuaciones cuánticas (que es más deseable puesto que estas fluctuaciones son fundamentalmente impredecibles y no pueden verse influenciadas por un adversario), a diferencia del ruido clásico (que es menos deseable debido a que el ruido clásico puede verse influenciado por un adversario, o incluso de condiciones ambientales, tales como RF de una estación de TV local o ruido de fuente de alimentación). La luz puede especificarse completamente por sus modos espacial, espectral (longitud de onda) y de desviación, y el número de fotones que ocupan cada modo: no son necesarias otras etiquetas, o incluso posibles. Puede pensarse que los modos espaciales tienen dos tipos: modos longitudinales (también denominados como modos "temporales") y modos transversales. Los modos longitudinales están asociados con grados de libertad en la dirección de propagación de la luz, mientras que los modos transversales están asociados con direcciones transversales a la dirección de propagación. Si una fuente de luz térmica únicamente tiene un modo (tanto longitudinal como transversal), cualesquiera fluctuaciones cuánticas variarán por encima del 100 % de la intensidad de la fuente de luz. En este caso, la naturaleza térmica de la luz puede verificarse mediante medición de su grado de segundo orden de coherencia temporal. Esta cantidad, conocida como g(2)( t), se forma a partir del producto de dos mediciones de intensidad óptica desplazadas en el tiempo por t. (véase, por ejemplo, R. Loudon "The Quantum Theory of Light" 2nd. Ed., OUP, Oxford 1983). Puede pensarse como lo análogo en el dominio temporal de las correlaciones de Hanbury Brown Twiss, y tiene el valor 2 en retardo de tiempo cero (g(2)(0) = 2) para luz térmica de mono-modo. Sin embargo, si una fuente de luz térmica tiene múltiples modos (ya sea longitudinal o transversal), todos los cuales fluctúan de manera independiente, cualquier detector que detecte luz de esta fuente de luz observará una fluctuación menor alrededor de una media. Por lo tanto, asegurar que los fotones de la fuente de luz están concentrados en tan pocos modos ópticos como sea posible puede ser ventajoso para facilitar la detección de fluctuaciones cuánticas.
El número de modos longitudinales al que un detector es sensible a la tasa de muestreo del detector, que puede ajustarse modificando el hardware o software del detector. El número de modos transversales también puede verse influenciado aplicando un filtro de modo espacial a la salida de una fuente de luz, tal como una fibra óptica monomodo, para eliminar todos los fotones distintos de los fotones en un modo transversal seleccionado particular (o pequeño conjunto de modos transversales).
Sin embargo, reducir el número de modos ópticos longitudinales o transversales, tal como usando un filtro espacial para limitar el número de modos transversales, puede reducir también la potencia óptica de una fuente de luz. Reducir la potencia óptica de una fuente de luz puede hacer más difícil que los detectores detecten fluctuaciones. Esto se cumple especialmente cuando se intentan detectar fluctuaciones a altas tasas, ya que los detectores ópticos de alta velocidad típicamente requieren potencia óptica superior. Puede haber por lo tanto un equilibrio entre minimizar el número de modos ópticos y mantener la potencia óptica alta para facilitar la detección a alta velocidad de fluctuaciones cuánticas. Si los fotones se extienden a través de un número de modos ópticos transversales o longitudinales demasiado grande, las fluctuaciones cuánticas serán una parte relativamente pequeña de las fluctuaciones observadas en la señal óptica, y pueden predominar en lugar de las fluctuaciones clásicas (por ejemplo, de variaciones de la fuente de alimentación, influencias de condiciones de RF locales, etc.). La entropía en el flujo de bits resultante producida de una fuente de luz de este tipo por lo tanto no será "cuántica" de manera dominante en origen. La fuente de luz ideal produciría por lo tanto un gran número de fotones en un número relativamente modesto de modos.
Los QRNG desvelados representan una mejora sobre los RNG supuestamente "cuánticos" anteriores conocidos seleccionando fuentes de luz apropiadas que producen un gran número de fotones en un número relativamente modesto de modos transversales. En algunas realizaciones, los amplificadores ópticos de semiconductores (SOA) pueden servir como fuentes de luz útiles ya que satisfacen muchos de los criterios anteriormente descritos. En un amplificador óptico de semiconductores (SOA) una señal óptica de entrada experimenta una ganancia a través de adición coherente de fotones a través de emisión estimulada, que da como resultado una señal óptica mayor en la salida. En ausencia de una señal de entrada, tiene lugar el fenómeno fundamentalmente cuántico de emisión espontánea dentro de la región, produciendo una salida genéricamente conocida como emisión espontánea amplificada (ASE). Debido a que los fotones en cualquier modo de campo dado son idénticos, obedeciendo las partículas elementales indistinguibles estadísticas de Bose-Einstein (BE), el número de fotones de ASE en cada modo en estas circunstancias es bien conocido que están térmicamente distribuidos. Además, la estructura óptica de un SOA asegura que únicamente se rellenan unos pocos modos de campo transversal, monomodo para la presente divulgación, que conduce a un número de ocupación de fotón media por modo grande. Esto, a su vez, conduce a las fluctuaciones aleatorias rápidas de gran amplitud en el número de ocupación de fotones, conocido como agrupación de fotones, que son característicos de las estadísticas de Bose-Einstein. Estas grandes fluctuaciones surgen de la mejora cuántica-mecánica para la probabilidad de que se emita un fotón en un modo de campo que ya está rellenado con fotones, que se mantiene para partículas elementales bosónicas. En contraste, las partículas distinguibles obedecen estadísticas clásicas, que mostrarían únicamente las fluctuaciones estadísticas mucho menores en número de ocupación conocidas como ruido de disparo. Las fluctuaciones BE aleatorias en la luz térmica de un SOA pueden ser mucho mayores que el ruido electrónico en un circuito de detección, haciendo esto una fuente óptica excelente de aleatoriedad cuántica para su uso con el RNG descrito en la presente solicitud. Las secciones largas de fibra óptica mono-modo ópticamente bombeadas (varios metros) dopadas con elementos de tierras raras se usan a menudo como fuentes de ASE, pero no son susceptibles de miniaturización. En contraste, los SOA están comercialmente disponibles, dispositivos de escala de chip eléctricamente bombeados que se encuentran típicamente en el orden de 1 mm3 en volumen, y podrían integrarse fácilmente en un dispositivo de RNG extremadamente compacto. En algunas realizaciones, las fuentes de luz de SOA pueden construirse usando obleas con ganancia y características de reducción de ruido deseables, formadas de materiales tales como, por ejemplo, Fosfuro Arseniuro de Indio Galio (InGaAsP). En otras realizaciones, puede obtenerse rendimiento adecuado usando un SOA de una oblea de "desecho", que puede reducir los costes de producción. Mientras que los QRNG actualmente desvelados pueden operar con ambas de fuentes de luz térmica ópticamente bombeadas y eléctricamente bombeadas, las fuentes de luz eléctricamente bombeadas pueden ser más fáciles y económicas de fabricar y configurar, muestran tamaños de dispositivo menores y muestran mayor robustez.
Los SOA pueden estar configurados como SOA de desviación única o dual. Los SOA de desviación dual emiten luz que tiene dos modos de desviación distintos usando una guía de onda con una sección transversal cuadrada. Un SOA de desviación única, por otro lado, emite luz que tiene únicamente un modo de desviación usando una guía de onda que tiene una sección transversal conformada como un rectángulo fino. Para una potencia de entrada eléctrica dada, ambos tipos de SOA emitirán aproximadamente la misma potencia óptica, pero los SOA de desviación dual dividirán el mismo número de fotones a través del doble del número de modos que un SOA de desviación única. Como resultado, los SOA de desviación única pueden producir luz que tiene una relación de fotón a modo superior, que es deseable por las razones anteriormente analizadas. Si se pretenden fluctuaciones aleatorias en un periodo de tiempo Ai, entonces la anchura de frecuencia espectral de fuente Av satisface (At x Av) “ 1. Para fluctuaciones a aproximadamente 5 GHz, se prefiere una anchura espectral (longitud de onda) de 13 pm o más.
En algunas realizaciones, puede usarse un LED como una fuente de luz para un RNG cuántico. A diferencia del filamento de una bombilla que radia sobre áreas grandes y a todos los ángulos, un LED limita el número de modos en los que radia por su geometría. Para reducir el número de modos ópticos transversales producidos por un LED, puede ser ventajoso filtrar la salida del LED con un filtro de modo espacial tal como una fibra ótica multi-modo o mono-modo para eliminar modos extraños. Los LED mono-modo que usan tecnología de punto cuántico pueden usarse también como fuentes de luz en algunas realizaciones—tales LED tienen la ventaja añadida de producir luz en un mono modo únicamente (y por lo tanto no requieren un filtro de modo espacial). Usar una fuente de luz LED puede reducir también el coste global del sistema, ya que los LED son fuentes de luz relativamente poco costosas.
Usar filtros de modo espacial distintos de fibras ópticas multi-modo y mono-modo puede reducir también los costes de producción. Filtrar usando fibras ópticas requiere alinear el filtro con la fuente de luz usando un proceso denominado "acoplamiento de tope", un procedimiento delicado que puede ser costoso. En lugar de fibras ópticas, puede insertarse una barrera con uno o dos poros entre la fuente de luz y el detector. Los poros en la barrera actuarían a continuación como un filtro de modo espacial, eliminando todos menos un puñado de modos espaciales. Un detector con un área activa pequeña puede actuar también como un poro para limitar el número de modos espaciales.
Los láseres que marchan por debajo de un umbral (de manera que no funcionan ya más como láseres) pueden servir también como una fuente de luz de bajo coste. Los Láseres de Emisión Superficial de Cavidad Vertical (VCSEL) son ejemplos de tales láseres de bajo coste que se usarían en tales realizaciones.
En algunas realizaciones, el fotodetector puede ser un fotodiodo que opera a unas longitudes de onda relativamente pequeñas a tasas relativamente bajas. Tales fotodiodos son menos costosos que fotodiodos que operan a longitudes de onda más grandes (por ejemplo, las bandas de las "telecomunicaciones") y tasas superiores.
Usando una fuente de luz con un número de ocupación de fotón medio grande por modo de campo, la señal de fluctuación cuántica aleatoria puede ser mucho mayor que el ruido electrónico clásico en el circuito de detección. La relación de señal a ruido cuántica (quantum signal-to-noise, QSN) grande resultante significa que el RNG actual puede producir salida de entropía completa de alta tasa robusta, que puede atribuirse al ruido cuántico de la fuente de luz después de la digitalización y acondicionamiento (por ejemplo, las fluctuaciones ópticas pueden convertirse en números mediante digitalización electrónica, y a continuación pueden eliminarse cualesquiera artefactos no aleatorios tales como desviación o correlaciones introducidas por la electrónica mediante algoritmos de acondicionamiento). Las realizaciones ilustrativas analizadas en el presente documento incluyen fuentes de luz que producen, o están filtradas para producir, fotones en un mono-modo transversal únicamente. Sin embargo, otras realizaciones usan fuentes de luz que producen, o están filtradas para producir, fotones en más de un mono-modo transversal. En algunos casos, usar fuentes de luz que producen fotones en más modos transversales, o usar un filtro menos discriminatorio que permita múltiples modos transversales, puede conseguir rendimiento adecuado mientras reduce el coste de producción del sistema en su totalidad.
Algunas realizaciones pueden usar fuentes de luz que muestran una o más características adicionales. Por ejemplo, una fuente de luz preferida tendría una anchura de banda espectral de varios THz (que corresponden a varias decenas de nanómetros para luz visible o casi infrarroja). Algunas fuentes de luz preferidas pueden operar también en la región de longitud de onda de 1550-nm, que permitiría el uso de componentes ópticos y electrónicos de telecomunicaciones de alta velocidad comerciales. Asimismo, algunas realizaciones pueden usar fuentes de luz compactas que consumen relativamente poca potencia. Diversos tipos de fuentes de luz muestran algunas o todas estas características (por ejemplo, SOA y LED).
La Figura 1 es un diagrama de bloques que muestra un generador de números aleatorios (RNG) 100, de acuerdo con algunas realizaciones, que está basado en la comparación de intensidades ópticas no correlacionadas. La fuente de luz 102 tal como un LED, un SOA de desviación única o dual, u otra fuente de luz está acoplada mediante el aislante óptico 104, tal como terminaciones de fibra en ángulo, que se usan para evitar reflejos de vuelta en la fuente 102, y el filtro óptico 105 al divisor de haz 106. El divisor de haz 106 puede implementarse usando, por ejemplo, un acoplador de fibra, un divisor de haz de prisma, o cualquier otro tipo de divisor de haz conocido en la técnica. El divisor de haz 106 produce un primer flujo de salida 108 que se propaga a un retardo óptico 110 y un primer detector óptico 112. El divisor de haz 106 también produce un segundo flujo de salida 114 que se dirige a un segundo detector 116. El retardo óptico 110 puede proporcionarse mediante una fibra óptica. La magnitud del retardo óptico puede ajustarse según sea necesario para asegurar que las correlaciones en las señales ópticas detectadas están suficientemente atenuadas.
Los detectores 112, 116 están configurados para producir señales eléctricas tales como tensiones o corrientes que varían en el tiempo proporcionales a las intensidades ópticas y estas señales se acoplan al comparador 118 (que puede implementarse usando diversos tipos de circuitería de diferencia o de procesador conocidos en la técnica). En algunas realizaciones, pueden usarse amplificadores de fotoseñal, amplificadores de memoria intermedia y otros componentes de procesamiento adicionales (no mostrados en la Figura 1) para preparar las fotoseñales para acoplarse al comparador 118. El comparador 118 produce una señal de diferencia asociada con una diferencia entre la primera y segunda fotoseñales, que a continuación se pasa al convertidor de analógico a digital 120, que convierte la señal de diferencia en una serie de bits aleatorios.
En algunas realizaciones, el retardo óptico 110 se sustituye por el retardo digital 210. Como se muestra en la Figura 2, una fuente de luz 202 produce un flujo óptico que se pasa a través del aislante 204 al detector 206. Una señal eléctrica que corresponde al flujo óptico detectado en el detector 206 está acoplada a un amplificador de memoria intermedia 208 que está a su vez acoplado a un convertidor de analógico a digital (ADC) 209 que produce dos flujos de bits a una tasa determinada por el reloj 207. Uno de estos flujos de bits se pasa directamente al comparador 212, mientras que el otro se retarda mediante el retardo digital 210 antes de que se reciba por el comparador 212, que produce una señal de diferencia que se procesa a continuación por el procesador de Números Aleatorios (random number, RN) 216. El procesador RN 216 puede, por ejemplo, particionar el flujo de bits de entrada en palabras, aplicar compresión al flujo de bits de entrada, y medir la cantidad de entropía contenida en el flujo de bits de entrada.
En algunas realizaciones, el retardo digital 210 puede proporcionar un retardo variable o seleccionable basándose en correlaciones en la intensidad del flujo óptico recibido en el detector 206. En algunos ejemplos, las correlaciones entre salidas de amplificador de memoria intermedia retardadas y no retardadas están asociadas con características del amplificador de memoria intermedia 208, el detector 206, y/o el ancho de banda de otros elementos electrónicos tales como los amplificadores. Por ejemplo, un detector puede mostrar un transitorio largo asociado con una exposición a una entrada de modo que las señales eléctricas retardadas y no retardadas están correlacionadas al menos en cierto modo, que reduciría la cantidad de entropía en la salida global del RNG. Proporcionando un retardo digital variable, esto puede evitarse. Como se muestra en la Figura 2, el procesador RN 214 puede establecer un retardo apropiado usando la entrada de retardo 211, que a su vez controla el retardo proporcionado por el retardo digital 210.
Con referencia a la Figura 3, el generador de números aleatorios (RNG) 300 puede incluir una fuente de luz 302 que está ópticamente acoplada a un divisor de potencia óptica 304 tal como un acoplador basado en fibra óptica o un divisor de haz óptico en bruto. Típicamente, la potencia óptica reflejada se evita sustancialmente que vuelva a la fuente de luz 302 con el aislante óptico 104, como se muestra en la Figura 1, o usando cualesquiera otros medios para evitar los reflejos de vuelta. El divisor 304 incluye al menos dos salidas ópticas de modo que porciones de la potencia óptica recibida por el divisor 304 se dirigen a un primer detector 308A de un par de detectores equilibrados 308 y un retardo óptico 306, respectivamente. Una salida del retardo óptico 306 está acoplada a un segundo detector 308B del par equilibrado 308. Como se muestra en la Figura 3, el primer detector 308A y el segundo detector 308B están configurados como un par de detectores equilibrados, que sirven para suprimir parcialmente el ruido de amplitud clásico y otras variaciones clásicas en la potencia óptica de la fuente de luz 302. Aunque no se requieren detectores equilibrados, en general muestran supresión superior de ruido de modo común, y por lo tanto tienden a producir correspondientes señales eléctricas que pueden mostrar correlación enormemente reducida que persiste sobre tiempos mayores que aproximadamente 1 ns, 10 ns, 100 ns, 1 ps, 10 ps, o 100 ps (dependiendo de la fuente de luz usada).
La salida de detector equilibrada se proporciona al amplificador 312 tal como un amplificador de transimpedancia que está acoplado al amplificador de memoria intermedia 314 y a continuación al comparador 316. Si se desea, el comparador 316 puede proporcionarse con una tensión de referencia mediante una fuente de referencia 318. Una salida de comparador puede usarse para obtener una secuencia de bits aleatorios.
En otro ejemplo ilustrado en la Figura 4, un RNG 400 incluye una fuente de luz 402, un aislante 404, y un acoplador de fibra óptica 406 que está configurado para acoplar una primera porción de un flujo óptico producido por la fuente de luz 402 a un retardo de fibra 408 y un primer detector 410, y una segunda porción a un segundo detector 412. Las señales eléctricas de salida de los detectores 410, 412 pueden acoplarse a respectivos filtros 414, 416 y a convertidores de analógico a digital (ADC) 418, 420. Los ADC 418, 420 están configurados para producir respectivos bits X, Y como (sgn(AV) 1)/2, donde AV es una fluctuación de tensión de salida de filtro. Las salidas de bit X, Y están acopladas al procesador de combinación 424 que puede implementarse en hardware o software para combinar X e Y según se deseen. Por ejemplo, el procesador 424 puede estar configurado para determinar una combinación lógica seleccionada de X e Y tal como, por ejemplo, un XOR exclusivo a nivel de bits de X e Y aunque pueden usarse otras combinaciones. Por ejemplo, para fluctuaciones de tensión de salida AV1 y AV2 asociadas con el primer y segundo detectores, respectivamente, la siguiente combinación proporciona resultados satisfactorios:
{sgn[AV-i(0) -A V 2(t)] 1 }/2
donde sgn es una función de signo. Si se usa un único detector de modo que únicamente está disponible una única fluctuación de tensión AV1, las combinaciones anteriores producen resultados satisfactorios sustituyendo AV2(t) por AV-i(t).
Otro RNG 500 representativo más se ilustra en la Figura 5. Una fuente de luz 502 produce un flujo óptico que se dirige a un primer detector 504 de un par de detectores equilibrados 506, mientras que un segundo detector 508 permanece no expuesto al flujo óptico. Como se muestra en la Figura 5, los detectores 504, 508 son fotodiodos que pueden seleccionarse basándose en el contenido espectral del flujo de luz producido por la fuente de luz 502, y a menudo son convenientes fotodiodos de silicio, germanio, e InGaAs tales como fotodiodos de avalancha (avalanche photodiodes, APD) o fotodiodos PIN (p-i-n). Una señal eléctrica que corresponde a la salida de par equilibrado está acoplada a un amplificador de memoria intermedia 510, y se entregan porciones de la salida almacenada en memoria intermedia a un nodo de suma 514 directamente y mediante un retardo 512 para proporcionar una secuencia de bits de salida aleatorios.
Con referencia a la Figura 6, un generador de números aleatorios 600 incluye una fuente de luz 602 tal como un LED que está configurado para dirigir la radiación óptica a un fotodetector 604. Como se muestra en la Figura 6, el fotodetector 604 es un fotodiodo desviado inverso acoplado en serie con una resistencia 606 aunque pueden usarse otras configuraciones de fotodetector y disposiciones de desviación. Una señal eléctrica producida por el fotodetector 604 se amplifica o almacena en memoria intermedia por un amplificador de memoria intermedia 610 cuya salida se dirige a un convertidor de analógico a digital 612 que produce una fotoseñal digitalizada. La fotoseñal digitalizada se desplaza a nivel en 614, y se retarda digitalmente (típicamente en software o firmware) en 616, y se combina con la fotoseñal digitalizada desplazada en nivel no retardada (o retardada de manera diferente) en una XOR 618 para producir una cadena de bits aleatorios. Las implementaciones representativas de los RNG tales como se muestra en la Figura 6 pueden producir bits aleatorios a tasas de 5 Gb/s o mayores.
La Figura 7 ilustra otra realización de un generador de números aleatorios 700. La Figura 7 incluye una fuente de luz 702, un fotodetector 704, un amplificador 706, convertidores A-D 710a y 710b, módulo de retardo 708, combinador 712, y extremo trasero 714.
La fuente de luz 702 puede ser una fuente de luz térmica, y puede incluir cualquiera de los tipos de fuentes de luz analizados en el presente documento, que incluyen SOA de desviación única o dual. La salida de la fuente de luz 702 puede enviarse a un fotodetector 704, que emite una señal de RF en respuesta a la luz detectada. La fuente de luz 702 puede acoplarse al fotodetector 704 mediante espacio libre, fibra óptica, u otros medios que incluyen métodos para restringir el número de modos transversales. El fotodetector 704 posee preferentemente alto ancho de banda (posibilitado para ancho de banda de GHz) así como una respuesta de frecuencia plana (por ejemplo, es sustancialmente igualmente sensible a la mayoría o todas las longitudes de onda emitidas por la fuente de luz 702 y el espectro de sus fluctuaciones). La señal de RF del fotodetector 704 puede enviarse a un amplificador 706 que amplifica la señal de RF. En algunas realizaciones, el amplificador 706 puede ser un amplificador de transimpedancia. En otras realizaciones, el amplificador 706 puede comprender uno o más amplificadores lineales conectados en serie. Al elegir un amplificador apropiado 706, puede ser importante hallar un amplificador que tenga una respuesta de RF sustancialmente plana (por ejemplo, que amplifique señales de manera relativamente igual a través de diferentes frecuentes de RF). Usar amplificadores lineales puede ser ventajoso ya que tienden a tener respuestas de RF que son relativamente planas. Los amplificadores lineales pueden tener ganancia inferior en comparación con los amplificadores de transimpedancia, pero esto puede compensarse conectando dos o más amplificadores lineales en serie.
La salida de RF del amplificador 706 puede dividirse a continuación en dos flujos usando, por ejemplo, un divisor electrónico. Un flujo puede pasarse directamente al convertidor de analógico a digital (A-D) 710a. El otro flujo puede pasarse al convertidor de A-D 710b mediante un módulo de retardo analógico 708. El módulo de retardo 708 puede implementarse en hardware y puede retardar la señal aproximadamente 7 ns, aunque son posibles también retardos más largos o más cortos. En algunas realizaciones, el módulo de retardo 708 puede retardar las señal en 0 (por ejemplo, sin retardo en absoluto). En otras realizaciones, el módulo de retardo 708 puede ser reconfigurable para retardar la señal en un tiempo variable, que incluye cero segundos, dependiendo de ajustes de hardware y/o software, o dependiendo de cualesquiera desviaciones o correlaciones detectadas en la salida del generador de números aleatorios 700. Preferentemente, el módulo de retardo 708 está configurado para producir entradas suficientemente independientes en el combinador 712, descrito a continuación, u otro sistema de procesamiento.
Como se representa en la Figura 7, el módulo de retardo 708 está ubicado aguas arriba del convertidor A-D 710b y es por lo tanto un módulo de retardo analógico. En otras realizaciones, puede insertarse otro módulo de retardo digital separado (no representado) entre el convertidor A-D 710b y el combinador 712. Un módulo de retardo digital de este tipo puede retardar también la señal para producir entradas suficientemente independientes en el combinador 712, descrito a continuación, u otro sistema de procesamiento. Como con el módulo de retardo 708, el módulo de retardo digital posiblemente puede reconfigurase para retardar la señal en tiempo variable, incluyendo cero segundos. A diferencia del módulo de retardo 708, sin embargo, este módulo de retardo digital puede configurarse para retardar una señal digital en lugar de una señal analógica.
En algunas realizaciones, los convertidores A-D 710a y 710b pueden ser digitalizadores de un bit que funcionan como comparadores, por ejemplo, si la señal de RF está por encima de un cierto umbral, los convertidores A-D pueden emitir un alto lógico, y de otra manera, los convertidores A-D pueden emitir un bajo lógico. Los convertidores A-D pueden estar configurados para registrar datos en el flanco ascendente o descendente de un reloj de sistema. Las salidas de ambos convertidores A-D 710a y 710b pueden a continuación enviarse a un combinador 712. En algunas realizaciones, el combinador 712 puede ser una función XOR sencilla, aunque también son posibles otros tipos de combinadores. La salida del combinador 712 puede ser un flujo de bits sustancialmente aleatorio que tiene alta entropía, donde la entropía contenida en el mismo es cuántica en origen (a diferencia del ruido clásico). Las pruebas estadísticas realizadas en la salida del combinador 712 indican que esta configuración puede producir flujos de bits que son al menos el 99,7% cuánticos-mecánicamente aleatorios (es decir, un flujo de bits con 0,997 bits de entropía cuántica por bit de salida). Esto no es un máximo teórico, sin embargo, y es probable que los QRNG de este tipo puedan producir aleatoriedad cuántica casi completa (es decir, un bit de entropía cuántica por bit de salida), dependiendo de los componentes usados. Las pruebas de aleatoriedad pueden aplicarse a la salida del combinador 712 antes de cualquier post-procesamiento, en cumplimiento con los requisitos de la norma de borrador SP800-90B del NIST (Instituto Nacional de Normas y Tecnología) (que requiere que se pasen pruebas de aleatoriedad antes de cualesquiera etapas de procesamiento algorítmico, para que el procesamiento no oculte fallos en la salida de hardware).
La salida del combinador 712 puede proporcionarse opcionalmente a un extremo trasero 714 que aplica un Algoritmo de Función de Troceo Seguro (Secure Hash Algorithm, SHA), tal como SHA512, a la salida, que puede componer la salida compatible con las normas de borrador SP800-90B del NIST (Instituto Nacional de Normas y Tecnología). Aplicar un SHA 512 puede añadir defensa en profundidad y por lo tanto mejorar la seguridad del generador de números aleatorios desvelado. En algunas realizaciones, el extremo trasero 714 puede implementarse como un campo de matrices de puertas programables (FPGA). El extremo trasero 714 puede configurarse también para proporcionar el flujo de bits en una forma que pueda interconectarse fácilmente con un sistema informático convencional. Adicionalmente, el extremo trasero 714 puede implementar una función de llamada que puede solicitarse por un sistema informático, tal como un servidor o un ordenador personal. Cuando el sistema informático envía una señal de "llamada" al extremo trasero 714, el extremo trasero 714 puede responder enviando números aleatorios de vuelta al sistema informático solicitante. Con electrónica suficientemente rápida (por ejemplo, con fotodetectores, amplificadores, convertidores A-D, combinadores, y/o extremos traseros con suficiente ancho de banda), el generador de números aleatorios desvelado se ha mostrado que puede generar bits aleatorios a una tasa de hasta 6,2 Gbits por segundo. Teóricamente, con electrónica incluso más rápida, el generador de números aleatorios actualmente desvelado podría generar bits aleatorios a una tasa de múltiples Terabits por segundo. Sin embargo, si el coste es una preocupación, el QRNG desvelado funcionará también con electrónica de extremo trasero más lenta pero más económica (por ejemplo, detectores más lentos, digitalizadores, etc.). Usar electrónica de extremo trasero más lenta pero más barata puede facilitar la reducción del coste del QRNG desvelado.
En otras realizaciones, los convertidores A-D 710a y 710b pueden ser digitalizadores de múltiples bits. Por ejemplo, los convertidores A-D 710a y 710b pueden emitir no un único bit a la vez, sino "palabras" de 8 bits correlacionados con la intensidad de la señal de RF detectada. Las palabras de 8 bits pueden enviarse también para combinarse por el combinador 712. En tales realizaciones, el flujo de bits que proviene del combinador 712 puede mostrar correlaciones y desviaciones indeseadas, y por lo tanto muestra entropía menos de la perfecta. En la realización ilustrativa analizada en este punto, el flujo de bits de salida podría mostrar únicamente 4 bits de entropía para cada 8 bits. Por lo tanto sería necesario aplicar una función de extracción de entropía (que se analiza en mayor detalle a continuación) al extremo trasero 714 para extraer un flujo de bits más corto con entropía cuántica sustancialmente completa. Con electrónica suficientemente rápida, las realizaciones que usan digitalizadores de múltiples bits y funciones de extracción de entropía pueden generar bits aleatorios al menos tan rápido como las realizaciones de único bit.
En otras realizaciones representativas ilustradas en la Figura 8, el RNG desvelado puede estar configurado de acuerdo con una arquitectura de alto nivel para generadores de números aleatorios verdaderos criptográficos (true random number generators, TRNG), 800, con un "extremo frontal" de fuente de entropía física, 802, y un "extremo trasero" de extracción de entropía, 804, producir un flujo independiente idénticamente distribuido (i.i.d.) de bits de salida con "entropía completa" (un bit de entropía por bit físico), 806. El "extremo frontal" 802 puede implementarse al menos en parte usando cualquiera de las realizaciones previamente desveladas, así como las realizaciones descritas a continuación. En algunas realizaciones, el extremo frontal 802 y el extremo trasero 804 pueden ambos implementarse en un único chip monolítico. En otras realizaciones, el extremo frontal 802 y el extremo trasero 804 pueden implementarse en chips separados. En algunas realizaciones, el extremo frontal 802 y el extremo trasero 804 pueden implementarse como múltiples módulos de hardware y/o de software separados. En otras realizaciones adicionales, el extremo frontal 802 puede acoplarse al extremo trasero 804 indirectamente, por ejemplo, a través de una red, y los dos componentes pueden estar geográficamente separados.
Implementar el extremo frontal 802 (que incluye la fuente de luz) y el extremo trasero 804 en un único chip monolítico puede ser ventajoso para reducir el coste del QRNG desvelado. Implementar todo en un único chip puede reducir el tiempo, esfuerzo y coste requeridos para alinear componentes dispares, tales como la fuente de luz con un filtro de mono modo, etc. En algunas realizaciones, la fuente de luz puede estar integrada en el silicio en el chip usando, por ejemplo, Germanio depositado en el silicio.
La Figura 9 representa el "extremo frontal" de RNG representativo 802, en más detalle. El extremo frontal de RNG 802 puede tener cuatro elementos: (1) una fuente de luz térmica 902, las fluctuaciones aleatorias de cuya potencia de salda óptica proporciona la fuente de entropía de origen cuántico; (2) un detector óptico de ancho de banda de múltiples GHz 904 para registrar la salida de la fuente térmica; (3) un amplificador de transimpedancia (trans-impedance amplifier, TIA) 906 para convertir la salida de detector en una tensión; y (4) un convertidor de analógico a digital (ADC) 908 para digitalizar la señal eléctrica con ruido derivada de la fuente a una tasa de múltiples Giga Muestras por segundo (una Giga Muestra, también denominada Gmuestra o GS, son mil millones de muestras). También pueden realizarse pruebas de aleatoriedad de estado de funcionamiento y/o aleatoriedad básica relativamente sencillas en esta etapa, tal como comprobar que se están generando tantos 1 como 0.
En algunas realizaciones, la fuente de luz térmica 902 puede ser un amplificador óptico de semiconductores de desviación única o dual (SOA) analizado anteriormente. En las siguientes realizaciones, para facilidad de explicación, se supone un SOA de desviación única que tiene los siguientes parámetros: (1) longitud de onda central ASE, X = 1558 nm; (2) ancho de banda de 3 dB óptico, 82,3 nm, o 10 THz, en unidades de frecuencia; (3) ganancia óptica, G = 27,7 dB; y (3) figura de ruido, 8,1 dB, o factor de ruido, x = 6,5. Pueden usarse también otros tipos de fuentes de luz, con sustitución adecuada de parámetros en lo que sigue.
La salida de luz térmica de SOA es fibra acoplada a un detector óptico de telecomunicación convencional de ancho de banda alto (20 GHz para esta divulgación) 904 que opera en el régimen lineal. En algunas realizaciones, la salida
del SOA podría filtrarse espectralmente a través de un filtro ótico de ancho de banda de 3 dB Bop (no mostrado). En la
realización representada en la Figura 9, la salida espectral completa del SOA, Bop = 10 THz, se recibe por el detector
óptico 904. La salida eléctrica del detector está acoplada a un amplificador de transimpedancia (TIA) 906, y a
continuación se muestrea a una tasa alta usando un convertidor de analógico a digital (ADC) 908. La inversa del
tiempo de intervalo de muestreo establece el ancho de banda electrónico, Bei; en esta realización ilustrativa, el ancho
de banda electrónico puede establecerse a unos pocos GHz. Aunque la salida de SOA es modo transversal único,
para el RNG actual M= Bop/Bei modos longitudinales contribuyen a la señal digitalmente muestreada. Por ejemplo, con
Bei = 1 GHz, tenemos M ~ 10.000 modos longitudinales.
La probabilidad de que un modo longitudinal dado contenga n fotones se proporciona mediante una distribución de
probabilidad de Bose-Einstein (BE);
Figure imgf000012_0001
con número de fotones medio Nbe = <nsp>, varianza, varBE = <nsp>(1 <nsp>), y <nsp> = x(G- 1). C SOA analizados anteriormente, la Nbe corresponde a aproximadamente 4.000 fotones por modo longitudinal. Este
número de ocupación por modo es mucho mayor que lo que sería factible con una fuente incandescente, y es la base
para la gran cantidad de entropía cuántica por bit producida por el extremo frontal del RNG actual.
Haciendo la aproximación de que la ganancia de SOA, G, y el factor de ruido, x, sean independientes de la longitud
de onda, la probabilidad de que el sistema PD/TIA/ADC detecte n fotones en un intervalo de muestreo se proporciona
por una BE degenerada de M-pliegues, o distribución binominal negativa (negative binomial, NB),
Figure imgf000012_0002
donde n es el número medio de fotones detectados por intervalo de muestreo. La varianza de recuento de fotones de
NB se proporciona mediante
Figure imgf000012_0003
En el lado a la derecha de esta expresión se observa que el primer término corresponde a las fluctuaciones estadísticas
(ruido de disparo) que estarían presentes incluso si los fotones fueran partículas clásicas distinguibles, mientras que
el segundo término corresponde a fluctuaciones cuánticas que surgen del fenómeno cuántico de emisión espontánea
y amplitud mejorada cuántica ("agrupamiento") para fotones, como bosones idénticos, para emitirse en modos que ya
contienen fotones. Con la aproximación de ganancia SOA independiente de longitud de onda y factor de ruido, tenemos
n ~ MxG. Por lo tanto, la fluctuación cuántica de número de fotones de RMS o q.n = ñ = Vm es mayor que la fluctuación
de RMS de ruido de disparo de número de fotones Odisparo.N = Vn en un factor de 77 ^ (que, para los valores de x y G
dados anteriormente, es aproximadamente 62), independiente del número de modos longitudinales, M, y por lo tanto
la anchura de intervalo de tiempo de digitalización. Esto significa que, en contraste a otros RNG, un componente
grande de la entropía de la salida digitalizada del RNG actual tendrá un origen fundamentalmente cuántico, que puede
cuantificare como sigue.
La tensión de salida digitalizada, V, del detector y TIA tendrá una distribución de probabilidad de fluctuación con valor
RMS, Ov, que puede expresarse como la raíz-suma-cuadrada (RSS) de: una fluctuación de RMS de ruido electrónico,
Oei; una fluctuación de RMS de ruido de disparo de número de fotones, Odisparo.v; y una fluctuación de RMS cuántica,
O q,v:
Figure imgf000012_0004
Observando que el número medio de fotones detectado por intervalo de muestreo, ñ, es proporcional a la potencia
óptica media, P, del SOA, las contribuciones de ruido electrónico, ruido de disparo de número de fotones, y ruido
cuántico de número de fotones a la entropía del flujo de bits digitalizado pueden determinarse midiendo Ov como una
función de P, y ajustando el resultado al modelo fenomenológico:
Figure imgf000013_0001
En este punto a, b, y c son constantes para una anchura de intervalo de tiempo de digitalización particular, y tenemos
Figure imgf000013_0002
Un parámetro de señal a ruido cuántico se define como:
Figure imgf000013_0003
El RNG actual tiene un QSN =7,3 en el punto de operación típico (potencia óptica media, P) del SOA, que es mucho mayor que cualquier RNG competidor, la mayoría de los cuales se basan en señales de ruido de fotón único intrínsecamente muy pequeño o ruido de disparo. El RNG actual por lo tanto tiene un componente cuántico robusto de entropía dentro de su fuente óptica, que es una característica posibilitadora para tanto su tasa de bits muy alta, como las aseguraciones de seguridad de la imprevisibilidad de su salida.
En la práctica, la ganancia y factor de ruido del SOA no son constantes a través del ancho de banda óptico. Sin embargo, las expresiones anteriores pueden usarse para un ajuste fenomenológico a la fluctuación como una función de potencia óptica de salida de SOA, permitiendo que se aísle el componente de ruido cuántico.
En una realización, denominada en el presente documento como la realización de "RNG-básico", el RNG desvelado puede proporcionar un flujo de bits de salida a tasas de hasta 6 Gbps. Este flujo de bits tiene una entropía por bit que es de origen predominantemente cuántico, y puede pasar el conjunto de pruebas de aleatoriedad estadística SmalICrush en la biblioteca de software TestU01 (SmalICrush se describe en P. L'Ecuyer, R. Simard, "TestU01: A C library for empirical testing of random number generators", ACM Transactions on Mathematical Software (TOMS), v.33 n.4, p.22-es, agosto de 2007, que es más comprensivo que el conjunto de pruebas del NIST ("A Statistical Test Suite for Random and Pseudorandom Number Generators for Cryptographic Applications", NIST SP800-22 National Institute of Standards and Technology (2001)). En la realización de RNG básico, el ADC 908 en el extremo frontal 802 es un comparador, que produce un flujo de bits que tiene desviación y correlaciones indeseables. Este flujo de bits se introduce en el extremo trasero 804 que implementa algoritmos de acondicionamiento de envío por flujo continuo, para eliminar estas características cuando se produce el flujo de bits de salida, 806.
La Figura 10 representa en más detalle un "extremo trasero" de RNG representativo, 804, de acuerdo con la realización de "RNG-básico". De acuerdo con la realización básica de RNG, el extremo trasero de RNG 804 puede incluir un acondicionador 1002 configurado para aplicar algoritmos de envío por flujo continuo para producir bits aleatorios no desviados independientes de la entrada 910 proporcionada por el extremo delantero ADC, 802. El extremo trasero de RNG 804 puede incluir también hardware y/o software para implementar un modelo (no mostrado) para estimar la cantidad de entropía en la cadena de bits que surge de ruido cuántico en la fuente de luz térmica. El modelo puede estimar la cantidad de entropía cuántica variando la potencia alimentada a la fuente de luz, como se analiza en más detalle en relación con la Figura 14 a continuación. El extremo trasero de RNG 804 puede realizar también prueba de aleatoriedad básica del flujo de bits de salida. Una prueba de aleatoriedad de este tipo es la prueba de aleatoriedad FIPS 140-2, como se describe en la Publicación 140-2 de la Norma Federal de Procesamiento de Información (FIPS) (FIPS PUB 140-2), emitida por el Instituto Nacional de Normas y Tecnología en 2001 y actualizada en 2002.
Para el caso de bits aleatorios independientes con una desviación fija pero no necesariamente conocida, puede aplicarse el algoritmo de von Neumann (detalles del cuál pueden hallarse en J. von Neumann, "Various techniques used in connection con random digits", Appl. Math. Ser., Notes by G. E. Forstyle, Nat. Bur. Stad., vol. 12, págs. 36-38, 1951) a nivel de flujo para producir un flujo no desviado más corto de bits aleatorios independientes. Es una característica muy buena de este algoritmo que elimina el requisito de ajustar de manera precisa el punto de operación de la fuente de entropía para conseguir una salida no desviada. Sin embargo, la salida del comparador en el extremo frontal de RNG-básico puede tener la característica de que la desviación del siguiente bit depende del bit actual: hay correlaciones de corto alcance. Esto se denomina una fuente "ligeramente aleatoria", y se sabe que no hay algoritmo booleano, que se aplique al flujo de bits que pueda producir bits aleatorios no desviados independientes. Además, el uso del algoritmo de von Neumann en estas circunstancias puede introducir menos problemas que los que resuelve.
Sin embargo, razonando eso, debido a la ausencia de correlaciones de largo alcance, el fujo de bits de salida y una versión retardada de manera adecuada de sí mismos constituyen fuentes ligeramente aleatorias independientes, pueden aplicarse algoritmos conocidos para producir bits no desviados independientes. Tales algoritmos conocidos pueden incluir aquellos develados por, por ejemplo, U. V. Vazirani, "Towards a Strong Communication Complexity Theory or Generating Quasi-random sequences from two communicating semi-random sources", 15th Annual ACM Symp. on Theory of Computing, págs. 366-378, 1983. Específicamente, el acondicionador 1002 puede aplicar (a nivel de flujo) el XOR a nivel de bits del flujo de bits de salida con la versión retardada de sí mismo: cada "nuevo" bit, x, se realiza la operación XOR con el bit que es m posiciones de bit "más antiguo", x¡-m, para proporcionar el flujo de salida acondicionado y, =x, © x¡-m. En este punto, se selecciona el desplazamiento m para proporcionar una salida que pasa conjuntos de prueba estadísticos comprensivos, y una vez elegidos pueden fijarse. Este esquema tiene la característica que puede implementarse fácilmente con circuitos de lógica electrónica de alta velocidad sencillos. Un experto en la materia reconocería que en las secuencias de varios bits podría realizarse la operación XOR con los correspondientes bits en la secuencia de desplazamiento que da como resultado alguna compresión del flujo de bits, pero para esta divulgación únicamente realizamos XOR de únicos bits.
Para aplicaciones que pueden aceptar una cadena de bits aleatoria de envío por flujo continuo a 6 Gbps puede implementarse el extremo trasero en hardware como se muestra en la Figura 11. Asimismo, reconociendo que otras aplicaciones pueden requerir una interfaz de PC para el flujo de bits, puede implementarse una etapa de hardware adicional que acepta el envío por flujo continuo emitido mostrado en la Figura 11 y lo formatea como se muestra en la Figura 12, para proporcionar una salida que es legible directamente por un PC.
La Figura 11 es un diagrama de bloques que ilustra un extremo trasero ilustrativo, de acuerdo con algunas realizaciones. La señal analógica que fluctúa aleatoriamente del detector óptico en el extremo frontal puede amplificarse por un amplificador de transimpedancia 1102 y proporcionarse a una entrada del comparador 1110. La otra entrada del comparador puede establecerse por un usuario a un nivel de CC constante, de manera que la mitad del tiempo la entrada analógica es menor que este nivel de CC constante, y la mitad del tiempo es mayor.
La señal analógica del detector óptico puede ser intrínsecamente asíncrona. Para crear un flujo fijo de bits de salida el comparador requiere una señal de reloj periódica. Esta señal puede originarse desde un oscilador de 6 GHz externo 1105, cuya salida se pasa a través de un filtro de paso banda de 6 GHz 1106, y que a continuación acciona la memoria intermedia de distribución de salida 1104. La memoria intermedia de salida 1104 crea un par complementario de pulsos de reloj que pasa a través de un par de bloques de CC 1108a y 1108b para eliminar cualquier nivel eléctrico de CC antes de accionar el comparador 1110.
El comparador 1110 puede recibir los pulsos de reloj complementarios y evaluar la amplitud de la señal analógica en cada ciclo de reloj. Si la señal analógica es mayor que la tensión de referencia emite un estado lógico complementario (por ejemplo, [1, 0]), y si la señal analógica es menor que la tensión de referencia emite el estado lógico complementario opuesto (por ejemplo, [0, 1]). En otra realización de este circuito, el comparador 1110 puede sustituirse por un convertidor de analógico a digital 1112 que emite un número mayor de bits cuyo valor depende de la magnitud de la diferencia entre la señal analógica y la tensión de referencia.
Las señales complementarias emitidas por el comparador 1110 pueden pasarse a través de un par de atenuadores de 1 dB 1114a y 1114b y bloques de CC 1116a y 1116b que establecen los niveles de tensión a los valores correctos para las entradas de la memoria intermedia de salida 1118. Esta memoria intermedia de distribución de salida 1118 puede emitir dos copias de las señales complementarias en su entrada. Una copia se dirige a una ruta larga 1120 y otra se dirige a una ruta corta 1122. Estas dos rutas pueden reunirse como las dos entradas a una XOR lógica 1124 que emite un único flujo de bits complementario que es la XOR de las dos entradas. Este flujo de datos complementario se pasa una vez más a través de un par de bloques de CC 1128a y 1128b y se pone a disposición del usuario en los puertos de salida 1130 y 1132. También se proporciona al usuario con una copia del reloj de 6 GHz en 1103 para los fines de sincronización. Otras realizaciones de este circuito pueden sustituir la XOR 1124 con otros procesos de acondicionamiento 1126.
La Figura 12 representa un circuito que puede procesar un flujo de bits, tal como el emitido desde el circuito representado en la Figura 11, en una forma adecuada para su interpretación por un ordenador, de acuerdo con algunas realizaciones. Este circuito recibe una cadena complementaria de bits elegidos aleatoriamente a 6 GHz en dos puertos de entrada 1202. El circuito puede recibir también una señal de reloj de entrada 1218 que está sincronizada al flujo de bits de entrada a 3 GHz en lugar de a 6 GHz. Esta señal de reloj puede pasarse a un divisor de frecuencia de uno a ocho 1212 que genera una señal de reloj complementaria a 375 MHz. Esta señal puede introducirse a la memoria intermedia de distribución de salida 1210 que puede generar dos copias idénticas de la señal de 375 MHz. Una copia puede usarse para activar un flip-flop de tipo D 1208 que almacena un bit de la fuente aleatoria 1202 en cada pulso de reloj. La salida complementaria del flip-flop es un único bit muestreado a 375 MHz, que puede pasarse a un demultiplexor de uno a cuatro 1204. La otra salida de la memoria intermedia de salida 1210 puede pasarse a un divisor de frecuencia de uno a dos 1206 para crear una señal de reloj a 187,5 MHz. El demultiplexor de uno a cuatro 1204 puede muestrear los datos de entrada a la tasa de datos de 375 MHz y crear una señal de salida paralela que es cuatro bits de ancho a un cuarto de la tasa de reloj. Esta señal de cuatro bits de anchura puede enviarse a un terminal de entrada-salida 1214 de Señalización Diferencial de Baja Tensión (LVDS) que recopila todas las señales de cuatro bits de anchura en un formato que puede interpretarse fácilmente por un ordenador 1216.
En otra realización, denominada en el presente documento como la realización "RNG-FQE (entropía cuántica completa)", el RNG desvelado puede proporcionar un flujo de bits de salida que tiene un bit de entropía mínima (definida a continuación) de origen cuántico por bit. Esta realización se ha demostrado a tasas fuera de línea de hasta 44 Gbps. En la realización RNG-FQE, el a Dc 908 en el extremo delantero 802 es un digitalizador de múltiples bits que emite palabras de ocho bits al extremo trasero 804 (este está en contraste a la realización básica de RNG, donde el ADC 908 en el extremo delantero 802 es un comparador sencillo que simplemente emite un flujo de bits un bit a la vez). Son posibles también palabras más largas o más cortas.
La Figura 13 es un extremo trasero 804 representativo de acuerdo con la realización RNG-FQE. Las palabras de ocho bits del ADC 908 se pasan a través de una primera etapa de acondicionamiento 1302, que emite el flujo 1303 de bits aleatorios no desviados independientes con la entropía completa de la fuente de luz 902 y el sistema de detección (904, 906). Esta primera etapa de acondicionamiento 1302 también proporciona robustez para la aleatoriedad de este flujo de bits: compensa automáticamente variaciones lentas en el So A o los puntos de operación de electrónica de detección. Esta compensación aplicada por la primera etapa de acondicionamiento puede implementarse usando el algoritmo desvelado en M. Blum, "Independent Unbiased Coin Flips from a Correlated Biased Source - A Finite State Markov Chain", Combinatorica 6 (2), 97-109 (recibido el 14 de febrero de 1985; revisado el 28 de diciembre de 1985). En contraste, puede ser necesario seleccionar cuidadosamente puntos de ajuste de desviación en la realización básica de RNG. Una segunda etapa de acondicionamiento 1304 puede aplicar una función de extractor aleatorio al flujo de bits, que produce un flujo de bits de salida más corto con entropía cuántica completa, 1305. Por último, si se desea, este flujo de bits 1305 puede introducirse a un generador de bits aleatorios determinístico criptográfico recomendado (Deterministic Random Bit Generator, DRBG) 1306 del NIST (Instituto Nacional de Normas y Tecnología), cuyo flujo de bits de salida 1307 puede usarse para fines criptográficos. La norma del NIST puede hallarse en "Recommendation for Random Number Generation Using Deterministic Random Bit Generators", National Institute of Standards and Technology Special Publication 800-90 A (2013). La etapa de DRBG final proporciona robustez de seguridad adicional y defensa en profundidad: la salida continuará siendo estadísticamente indistinguible de lo aleatorio incluso si hubiera un fallo dentro de la fuente de ruido cuántico.
Como se ha analizado anteriormente, la realización RNG-FQE puede usar un digitalizador de 8 bits como la salida de ADC del extremo delantero, en lugar del comparador (de un bit) del RNG-básico. Este digitalizador de 8 bits puede operar a una tasa de digitalización de 3 Gmuestras por segundo. Son posibles otros tamaños de palabra y tasas. Cada muestra puede producir una palabra de 8 bits que representa la tensión de salida del fotodetector y por lo tanto la potencia óptica de la fuente de luz. En un estado estable la distribución de las potencias muestreadas está caracterizado por una fluctuación de RMS que es una convolución de: ruido electrónico; ruido de disparo óptico; y ruido de Bose-Einstein (cuántico). Estos componentes de ruido pueden separarse midiendo la fluctuación como una función de la potencia óptica media, tal y como se muestra en la Figura 14.
La Figura 14 muestra las fluctuaciones de intensidad óptica de raíz-media-cuadrada (root-mean-square, RMS) en ^W en el eje Y vertical, y potencia óptica media emitida desde la fuente de luz de extremo frontal en îW en el eje X horizontal. La línea de datos 1404 muestra fluctuaciones de RMS observadas experimentalmente como una función de la potencia óptica usando una realización del QRNG desvelado. La línea de modelo 1410 muestra fluctuaciones de RMS previstas como una función de potencia óptica usando la ecuación previamente analizada para recuento de foto de NB:
Figure imgf000015_0001
Como puede observarse, hay correspondencia estrecha entre la línea de modelo 1410 y la línea de datos 1404, que indica que el modelo tiene buena potencia predictiva. Para los fines de esta figura, se emplearon los siguientes parámetros: número de fotones medio por muestra era igual a 4,3x106, potencia de operación típica se estableció a 1700 ^W, y el número de modos M se estableció a 8.000 (en este caso 8.000 modos longitudinales x 1 modo transversal para un total de 8.000 modos). La línea de ruido de disparo 1406 corresponde al primer término a la derecha de esta expresión—como se ha analizado anteriormente, este primer término corresponde a las fluctuaciones estadísticas (ruido de disparo) que estarían presentes incluso si los fotones fueran partículas clásicas distinguibles. La línea de ruido Bose-Einstein 1408 corresponde al segundo término a la derecha de esta expresión—como se ha analizado anteriormente, este segundo término corresponde a fluctuaciones cuánticas que surgen del fenómeno cuántico de emisión espontánea y amplitud mejorada cuántica ("agrupamiento") para fotones, como bosones idénticos, para emitirse en modos que ya contienen fotones.
A potencia óptica cero, 1402, la fluctuación RMS es dominada por un componente de ruido electrónico (ruido electrónico, ya que es distinto del ruido de disparo óptico, es constante independientemente de la potencia óptica. No se muestra en este gráfico, pero si lo fuera, sería una línea horizontal). En el punto de operación normal 1412 (a aproximadamente potencia óptica de 1700 îW) las fluctuaciones son dominadas por el componente cuántico.
Definiendo (como anteriormente) un parámetro de señal a ruido cuántico (QSN) como la relación de la fluctuación de Bose-Einstein a la convolución de los componentes de electrónica y ruido de disparo de la fluctuación, que dan como resultado un valor de QSN grande de 7,3 en el punto de operación normal, es decir la entropía de salida es fuertemente dominada por el ruido de origen cuántico, 1412. Para cuantificar esto, se evalúa la entropía de Shannon de la distribución de probabilidad de salida del digitalizador medido:
Figure imgf000016_0001
donde la suma corre a través del conjunto X de todas las salidas del digitalizador de 8 bits, y P(x) es la probabilidad medida de que la palabra x tenga lugar. En la potencia de operación normal y a una tasa de digitalización de 3 Gmuestras por segundo, esto da como resultado H = 4,89 bits. Sin embargo, para fines criptográficos estamos más interesados en la entropía mínima:
H ^ = - \o g 2Pm
Esta captura la probabilidad de que un adversario adivine la salida usando la estrategia óptima de tomar la salida más probable, que tiene probabilidad medida Pmax. Por tanto, H~ = 4,07 bits. Desde el análisis más anterior del QSN 99,6 % de esta mínima entropía es atribuible a ruido de Bose-Einstein (cuántico). Por lo tanto, la salida del digitalizador contiene 4,05 bits de entropía mínima cuántica por muestra de 8 bits bajo estas condiciones de operación. Esto establece los parámetros para la etapa de extractor aleatorio del extremo trasero, que se determinan monitorizando la potencia de salida óptica media de estado fijo y su varianza. En otro ejemplo, digitalizando a 12 Gmuestras por segundo con 4 bits por muestra, esta estimación de entropía produjo 3,78 bits de entropía mínima cuántica por muestra, y por lo tanto la tasa de bits aleatorios FQE de 44-Gbps FQE mencionada en cualquier otra parte en este documento.
Las palabras de salida del digitalizador no pueden usarse directamente como una fuente de bits aleatorios al extractor de entropía, debido a correlaciones y desviaciones. La primera etapa de acondicionamiento 1302 toma la salida del digitalizador, que puede modelarse como un proceso de Markov, y produce una salida de envío por flujo continuo 1303 de bits no desviados independientes, con la entropía de Shannon completa de la fuente, sin requerir conocimiento anterior de las probabilidades de transición de la fuente. Por lo tanto la presente divulgación permite la implementación de algoritmos de envío por flujo continuo para esta extracción que pueden realizarse en un FPGA. Ejemplos de algoritmos de envío por flujo continuo que pueden implementarse para esta extracción pueden hallarse en H. Zhao y J. Bruck, "Streaming algorithms for optimal generation of random bits", arXiv: 1209.0730 [cs.IT] (Septiembre de 2012). Estos algoritmos representan la generalización a procesos de Markov del algoritmo de envío por flujo continuo de von Neumann para no desviar un flujo de bits i.i.d. La primera etapa en este proceso es mapear la secuencia de salida del digitalizador (correlacionada) en 28 secuencias de símbolos de 8 bits independientes. Cada una de estas nuevas secuencias puede pensare como el resultado de lanzar repetidamente un dado de 28 lados sesgado, y a través de un algoritmo de árbol de conversión a binario, puede transformarse en múltiples secuencias de bits aleatorios. A continuación, usando una generalización de árbol binario del algoritmo de von Neumann, cada una de estas secuencias puede transformarse en una secuencia de bits aleatorios independientes no desviados. Por último, todos estos se recombinan (por concatenación) para producir una secuencia de salida global de bits no desviados independientes, que tiene un bit de la entropía de Shannon de fuente por bit de salida. Esta es una característica de seguridad de protección contra fallos importante del diseño: la primera etapa de acondicionamiento no puede producir más bits de salida que la entropía de Shannon de la fuente digitalizada. Puede realizarse prueba de aleatoriedad estadística en línea básica (prueba monobit, prueba de Póker, prueba de tandas, etc.) para verificar el funcionamiento correcto del sistema en este punto.
La implementación de FPGA de estos algoritmos posibilita tasas de procesamiento más rápidas. Para hacer esto para la etapa de von Neumann final (como se describe en el trabajo de Zhao y Bruck, anteriormente referenciado) puede crearse el árbol de decisión binaria completo en el FPGA. Cada nodo en el árbol representa un estado diferente del árbol de decisión en cuanto a la determinación de si debe ser un '1' o '0'. En lugar de ejecutar cada nodo secuencialmente como se hace en software, el diseño de hardware ejecuta todos los nodos en paralelo. Sin embargo, habrá únicamente un único nodo activo por nivel del árbol, por lo que el paralelismo máximo es log2(número de nodos), y únicamente cuando el número máximo de estados se requiera en el árbol mismo. La profundidad del árbol requerida depende de la apariencia no aleatoria de los datos y no puede determinarse con antelación. Este enfoque usa más recursos de los que serían necesarios con un enfoque en serie, pero permite que el motor acepte un nuevo bit de datos cada ciclo de reloj. Convertir en serie la ejecución reduciría la tasa a la que pudieran aceptarse datos y conduciría a una tasas de bits final inferiores. Se usan árboles análogos para las etapas Markov y de dado de n lados anteriores.
A continuación, la segunda etapa de acondicionamiento 1304 extrae la entropía mínima cuántica de la secuencia binaria de salida de la primera etapa de acondicionamiento 1302. El "lema de función de troceo sobrante" (analizado en, por ejemplo, D. R. Stinson, "Universal hash families and the left-over hash lemma, and applications to cryptography and computing", J. Combin. Math. Combin. Comput. 42, 3 (2002)), muestra que esta extracción puede realizarse usando funciones de función troceo universales para comprimir una secuencia binaria más larga en una más corta que la que tenía un bit de entropía mínima (cuántica) por bit (entropía cuántica completa). Ejemplos de tales funciones de función troceo universales se desvelan en, por ejemplo, J. L. Carter y M. N. Wegman, "Universal classes of hash functions", J. Comp. Sys. Sci. 18, 143 (1979)). Los parámetros de compresión (por ejemplo, elección de familia de función de troceo) se determinan por los parámetros medidos (por ejemplo, potencia óptica media y su varianza) de la salida digitalizada del extremo delantero. La segunda etapa de acondicionamiento 1304 puede implementar una función de función de troceo a nivel de flujo adecuada eficazmente en un FPGA o ASIC; por ejemplo una implementación de función de troceo criptográfica-CRC es particularmente adecuada (analizada en, por ejemplo, H. Krawczyk, "LFSR-based hashing and authentication", Lect. Notes Comp. Sci. 839, 129 (1994)). La extracción de aleatoriedad puede realizarse también en algoritmos tales como la familia SHA o AES (analizados en, por ejemplo, Y. Dodis et al., "Randomness extraction and key derivation using the CBC, Cascade and HMAC modes", Lect. Notes. Comp. Sci. 3152, 494 (2004)). Esto puede ser conveniente si estos algoritmos ya están disponibles en firmware, tal como para la etapa de post-procesaminto criptográfico recomendada del NIST.
Por ejemplo, en el segundo acondicionador 1304, puede realizarse una estimación de la entropía de una distribución para determinar la cantidad de entropía mínima cuántica por bit producida. Si la entropía es menor que 1 bit por bit producido, entonces la cadena de números aleatorios puede comprimirse usando una función de troceo de modo que está presente 1 bit de entropía cuántica en cada bit con función de troceo final. Por ejemplo, la probabilidad de la transición de un 1 a un 0 o un 0 a un 1 es preferentemente 0,5. Si fuera en su lugar pmax = 0,58 entonces la entropía mínima Hx = - log2(pmax) = - log2(0,58) = 0,786 bits de entropía mínima por bit producido. Una relación de compresión de bits finales a bits de entrada de 0,786 proporcionaría a continuación una cadena de números aleatorios con 1 bit de entropía por bit. La compresión se conseguiría, por ejemplo, introduciendo 256/0,786 bits en la función SHA256. Los 256 bits resultantes tendrían 1 bit de entropía por bit. Una generación de instancias bien diseñada de este generador de números aleatorios puede producir 1 bit de entropía por bit.
La salida de entropía cuántica completa de la segunda etapa de acondicionamiento 1304 se introduce a continuación a un generador de bits aleatorio determinístico criptográfico aprobado por el NIST (DRBG) 1306, la salida del cual puede usarse como bits aleatorios criptográficos. Un DRBG adecuado puede implementarse fácilmente en un FPGA o ASIC.
Un método representativo 1500 de generación de un flujo de bits aleatorio se ilustra en la Figura 15. En 1502, se selecciona una fuente de luz, en general una fuente de luz que produce un flujo de salida que tiene una correlación baja para retardos de disparo adecuados. En 1504, el flujo óptico de la fuente de luz se usa para producir una señal de intensidad óptica, usando típicamente un detector de ley de cuadrado tal como un fotodiodo. Se selecciona un retardo de señal en 1506, y se combinan señales retardadas y no retardadas basándose en la señal de intensidad óptica. En 1510, se proporciona un flujo de bits aleatorio como una entrada. Las señales combinadas pueden estar basadas en la señal óptica y una señal óptica ópticamente retardada (tal como producida usando fibra óptica como una línea de retardo) o una señal de fotodetector y una copia eléctricamente retardada de la fotoseñal. Pueden hacerse diversas clases de post procesamiento al flujo de bits aleatorio para reducir las imperfecciones (por ejemplo, desviación y/o correlaciones) y para extraer su entropía.
Casos de uso de ejemplo
Los RNG descritos en el presente documento pueden usarse en una diversidad de maneras y para una diversidad de aplicaciones. Por ejemplo:
Caso de uso 1: Generador de bits aleatorios criptográfico: un componente embebido para Módulos de Seguridad de Hardware (Hardware Security Modules, HSM) y dispositivos finales
Los números aleatorios son la base en la que se crea toda la criptografía. La dificultad de obtener suficiente entropía, especialmente en dispositivos de usuario final, es una debilidad de seguridad común, y se ha identificado como un problema desafiante en nuevas áreas de aplicación tales como ciber seguridad de infraestructura crítica. Los QRNG descritos en el presente documento pueden cumplir estas necesidades. Pueden producir un flujo de salida con una entropía extremadamente alta a una alta velocidad, y pueden construirse algunas realizaciones también de manera barata, usan muy poca potencia, y tienen un tamaño compacto. Podrían incorporarse también en HSM como una actualización de seguridad para sustituir los generadores de bits aleatorios determinísticos actualmente usados.
Caso de uso 2: Seguridad de centro de datos: SSL/TLS con secreto hacia delante
Las revelaciones recientes acerca de la vigilancia de correo electrónico y otro tráfico de red han conducido a algunos proveedores (por ejemplo, Google, y CloudFlare) a implementar SSL/TLS usando la opción "secreto hacia delante perfecto", es decir, establecimiento de clave de sesión Diffie-Hellman (DHE) efímera. Esta implementación requiere significativamente más entropía que el método de establecimiento de clave de sesión basado en RSA anterior, que es menos seguro. Esta tendencia hacia la implementación de secreto hacia delante perfecto es probable que crezca con el crecimiento de las preocupaciones de privacidad. Además, la defensa en profundidad añadida del uso de DHE habría mitigado el impacto de seguridad de la vulnerabilidad Heartbleed en OpenSSL, como se ha señalado por la Fundación de Frontera Electrónica. CloudFlare ha señalado la enorme cada vez mayor necesidad de aleatoriedad como un problema para la amplia implementación de DHE, especialmente en el entorno en la nube. Esto puede entenderse examinando en primer lugar las etapas en el método basado en RSA para el establecimiento de clave de sesión. La clave pública de RSA del servidor tiene dos funciones: permitir que el cliente autentique al servidor; y que el cliente encripte el secreto "pre-maestro" y lo transmita al servidor. (El secreto pre-maestro finalmente se vuelve la clave de sesión). Puesto que la clave pública del servidor puede permanecer válida durante un año o más, y cambiarla es costoso y problemático, su compromiso sería también el compromiso de cada clave de sesión que se haya establecido bajo ella. Con secreto perfecto hacia delante, la clave pública de RSA del servidor únicamente se usa para que el cliente autentique el servidor, pero se usa un procedimiento de DHE reciente en cada sesión para establecer el secreto pre-maestro y por lo tanto la clave de sesión. Tanto el servidor como el cliente requieren una fuente de bits aleatorios para implementar DHE. Esto puede ser particularmente estresante en el servidor, que puede tener que soportar la iniciación de varios miles, a múltiples decenas de miles sesiones de TLS únicas por segundo en un entorno en la nube. Con números aleatorios también requeridos para valores de número aleatorio utilizado solo una vez únicos de cada sesión, número de ID de sesión y vector de inicialización, el servidor puede requerir fácilmente números aleatorios a múltiples tasas de Gbps: el RNG actualmente desvelado puede mantener fácilmente estas tasas. Si el mismo cliente es un centro de datos o una parte distinta del centro de datos del servidor, el cliente puede requerir también una fuente de aleatoriedad a estas tasas altas. En el futuro, puede hacerse deseable cambiar claves de sesión a intervalos frecuentes durante una sesión para seguridad añadida: el compromiso de una única clave expondría únicamente un pequeño intervalo de un tráfico de sesión, pero no la sesión entera. Una condición necesaria para conseguir este nivel superior de seguridad de sesión sería correspondientes tasas de bits aleatorias más grandes: el RNG actualmente desvelado soportaría este concepto. SSL/TLS no es el único protocolo usado ampliamente que puede beneficiarse de aleatoriedad de alta tasa: SSH, IPsec y SIP todos tienen la opción de implementarse con secreto hacia delante perfecto.
Caso de uso 3: Almacenamiento de datos en la nube seguro
Servicios de almacenamiento de nube tales como Dropbox, iCloud etc. son una gran conveniencia, pero hay preocupaciones acerca de la seguridad y privacidad de información personal o propietaria en la nube. Un dispositivo de usuario basándose en el RNG actualmente desvelado en una memoria USB (u otra interfaz conveniente a un PC, tableta o teléfono inteligente) podría mitigar estas preocupaciones encriptando y autenticando datos, usando claves recientemente generadas, antes de cargarlas a la nube. Las claves se almacenarían en la memoria segura del dispositivo de usuario, permitiendo que se recuperen los datos y se verifiquen después de descarga, posiblemente a una plataforma informática diferente, por el usuario en el futuro.
Caso de uso 4: División de secreto umbral para almacenamiento de datos seguro robusto
Para algunas aplicaciones sensibles, una preocupación con el escenario del caso de uso 3 es su ausencia de robustez a corrupción accidental o maliciosa de los datos almacenados, o pérdida o robo de la clave del usuario. Si los datos encriptados almacenados se corrompen o el usuario pierde su clave, el usuario no puede recuperar los datos originales. El robo o copia de la clave del usuario expone potencialmente los datos encriptados a adversarios. Ejemplos de escenarios con estas preocupaciones incluyen copia de seguridad segura de datos para recuperación frente a desastres, y almacenamiento de claves maestras de encriptación (gestión de clave). Un dispositivo basado en el RNG actualmente desvelado puede mitigar estas preocupaciones a través de un único esquema de división secreta umbral, que ilustramos en este punto con el siguiente ejemplo de dos de tres. (Generalización a más comparticiones es sencilla). M es una cadena binaria que representa los datos a almacenarse de manera segura, encriptados bajo diferentes claves de encriptación, en tres ubicaciones de almacenamiento distintas: A, B y C. Las comparticiones de clave de encriptación, Ka (para la ubicación A), Kb (para la ubicación B), y Kc (para la ubicación C), satisfacen la propiedad de división de secreto
Figure imgf000018_0001
Por tanto, usando encriptación de almohadilla de un solo uso (por simplicidad de presentación) la ubicación de almacenamiento A recibe M©Ka, y de manera similar para las ubicaciones B y C. Las comparticiones de clave se construyen analizando el RNG emitido en tres "pre-comparticiones" de igual longitud, P, Q y R, y que forman
KA = P ® R
KB = P ® Q
Kc = Q © R
Cada una de las pre-comparticiones (P, Q y R) se almacena en una ubicación segura separada (p, q y r). Por tanto, con acceso a cualquier par de las pre-comparticiones (por ejemplo p y q), los datos originales, M, pueden recuperarse de los correspondientes datos almacenados encriptados (en este caso, de la ubicación de almacenamiento B). Sin embargo, el compromiso de una cualquiera de las pre-comparticiones no puede comprometer la confidencialidad de los datos encriptados almacenados. De manera similar, la corrupción de uno cualquiera de los conjuntos de datos encriptados almacenados está protegida a través de redundancia de las otras dos ubicaciones de almacenamiento.
Caso de uso 5: Distribución de clave cuántica (QKD)
El nodo transmisor en el protocolo QKD más ampliamente usado ("BB84") tiene una demanda voraz de números aleatorios. Para la seguridad es esencial que estos números aleatorios tengan entropía completa. (El uso de un generador de números pseudo-aleatorios ("PRNG") por ejemplo, daría como resultado claves con no más seguridad que el PRNG. Y los PRNG pueden diagnosticarse con facilidad destacable). Con eficacias de enlace típicas, para mantener una tasa de clave secreta de 1 Mbps, se requiere una tasa de reloj de QKD de 1 GHz. A continuación, cada señal cuántica emitida requiere: un bit de datos; un bit de base; y entre cuatro y ocho bits de "estado de señuelo". El transmisor QKD puede requerir por lo tanto números aleatorios de entropía total a tasas de 10 Gbps o mayores. Esto es muy desafiante con r Ng comerciales actualmente disponibles, pero puede mantenerse fácilmente mediante el RNG actualmente desvelado.
Caso de uso 6: Firmas de un solo uso
Las firmas de un solo uso (one-time signatures, OTS) se están considerando como una alternativa práctica a firmas digitales de RSA por varias razones. En primer lugar, OTS usan funciones de troceo criptográfico rápidas (por ejemplo, la familia SHA) y por lo tanto tienen sobrecarga computacional mucho inferior que las firmas RSA. Para aplicaciones donde es esencial baja latencia, tal como control de red eléctrica, esto puede ser un imperativo práctico. En segundo lugar, el creciente conocimiento de la vulnerabilidad de RSA del día actual y la criptografía de clave pública de curva elíptica a un posible ordenador cuántico futuro que ejecute el algoritmo de Shor está inspirando una nueva búsqueda para nuevos criptosistemas que son inmunes a Shor. Los esquemas OTS se consideran fuertes candidatos para firmas digitales dentro de una estructura de este tipo. Sin embargo, en contraste a firmas RSA, donde puede usarse una única clave de firma secreta para firmar muchos mensajes, los esquemas OTS requieren una clave de firma reciente para cada mensaje. Particularmente en situaciones de datos de envío por flujo continuo, los esquemas OTS pueden tener una alta demanda de aleatoriedad para generar claves de firma. La pre-distribución de una cantidad suficiente de claves de firma tiene preocupaciones logísticas y de seguridad. En contraste, estas dificultades pueden evitarse usando el RNG actualmente desvelado, que puede cumplir fácilmente la tasa de clave requerida para situaciones de datos de envío por flujo continuo.
Caso de uso 7: Simulación de Monte Carlo
Se usan a menudo generadores de números pseudo-aleatorios para simulación de Monte Carlo. Sin embargo, debido a la estructura algorítmica de las secuencias de bits de PRNG, han habido resultados notorios que hay artefactos de la estructura de PRNG. El RNG actualmente desvelado podría suministrar los números aleatorios requeridos a altas tasas para simulaciones a gran escala usando el método de Monte Carlo. La verdadera aleatoriedad evitaría estas preocupaciones del uso de generadores de números pseudo-aleatorios.
Caso de uso 8: Juegos
Se requieren números aleatorios para juegos y loterías. Para estas aplicaciones, el RNG actualmente desvelado podría suministrar aleatoriedad "de alta gama", con una "garantía cuántica" de equidad y resistencia a la manipulación.
Caso de uso 9: Inscripción para PKI basada en certificado y el Internet de las Cosas
En algunos casos, puede usarse un QRNG para facilitar y/o acelerar el proceso de inscripción en una infraestructura de clave pública (public key infrastructure, PKI) para su uso en inscribir personas u objetos tales como teléfonos. En un proceso de inscripción de infraestructura de clave pública, tienen que generarse pares de claves pública/privada únicos para cada persona o dispositivo, y hay varios lugares donde se requieren números aleatorios en el proceso. Este proceso puede hacerse más rápido, más seguro, y/o más conveniente usando un QRNG embebido en un dispositivo de inscripción (potencialmente portátil), tal como una Infraestructura de Clave Pública - Módulo de Seguridad de Hardware Cuántico (Public Key Infrastructure - Quantum Hardware Security Module, PKI-QHSM).
Para generar primos RSA, típicamente se usan algoritmos aleatorizados tales como Miller-Rabin. Estos algoritmos en primer lugar generan un número entero aleatorio grande candidato (que puede hacerse con un QRNG), a continuación someten el número entero aleatorio candidato a una prueba de primalidad contra otro número de prueba aleatorio (que podría generarse también con un QRNG). Este proceso se repite a continuación k veces con un número de prueba aleatorio diferente cada vez. Si alguno de las k pruebas falla, entonces el candidato se descarta y se genera uno nuevo. Si todas las k pruebas pasan, entonces el número candidato es primo, excepto con probabilidad menor que 2' k. Esta probabilidad (de composición no detectada) puede hacerse arbitrariamente pequeña haciendo k suficientemente grande. Los QRNg desvelados pueden facilitar este proceso generando números aleatorios grandes a una tasa rápida, mientras que también proporcionan aseguración de que los números generados son verdaderamente aleatorios.
Aunque se han descrito y mostrado realizaciones preferidas de la presente invención anteriormente en las figuras adjuntas, debería entenderse que la presente invención no está limitada las realizaciones desveladas, sino que es apta de numerosas reorganizaciones, modificaciones y sustituciones sin alejarse del alcance de la invención como se expone y define por las siguientes reivindicaciones.

Claims (15)

REIVINDICACIONES
1. Un generador de números aleatorios, que comprende:
una fuente de luz térmica (102; 202; 302; 402; 502; 602; 702) operable para producir un flujo óptico emitiendo fotones en un modo de campo óptico, donde el modo de campo óptico se rellena con fotones de acuerdo con una distribución de probabilidad de Bose-Einstein;
un primer detector (114; 206; 308a; 412; 504; 604; 704) operable para recibir una porción (114) del flujo óptico de la fuente de luz y para proporcionar una primera señal de detector basándose en el flujo óptico recibido; y
un sistema de salida operable para generar un flujo de bits no desviados independientes basándose en al menos la primera señal de detector a una tasa definida mediante un tiempo de intervalo de muestreo,
donde un número medio de fotones de la fuente de luz térmica detectados por el primer detector por tiempo de intervalo de muestreo es mayor que un número de modos de campo óptico producidos por la fuente de luz térmica.
2. El generador de números aleatorios de la reivindicación 1, que comprende adicionalmente una unidad de retardo (110; 210; 306; 408; 512; 616; 708) operable para emitir una señal retardada, y donde el sistema de salida comprende un comparador (118; 212; 312; 424; 514; 618; 712) operable para producir una señal de salida basándose en la primera señal de detector y la señal retardada.
3. El generador de números aleatorios de la reivindicación 2, donde la unidad de retardo comprende un retardo óptico (110; 306; 408), y donde la unidad de retardo es operable para recibir una porción (108) del flujo óptico de la fuente de luz y emitir un flujo óptico retardado que corresponde al flujo óptico recibido, comprendiendo adicionalmente el generador de números aleatorios un segundo detector (112; 308b; 410) que está configurado para recibir el flujo óptico retardado y para proporcionar una segunda señal de detector basándose en el flujo óptico retardado, donde el primer detector y el segundo detector están configurados como un par de detectores equilibrados.
4. El generador de números aleatorios de la reivindicación 2, donde
la unidad de retardo es una unidad de retardo eléctrico (512; 708) operable para recibir la primera señal de detector y emitir una señal eléctrica retardada que corresponde a la primera señal de detector, o
donde la unidad de retardo es una unidad de retardo digital (210; 216) operable para recibir la primera señal de detector y emitir una señal eléctrica retardada que corresponde a la primera señal de detector.
5. El generador de números aleatorios de la reivindicación 3, donde la unidad de retardo es configurable para retardar la primera señal de detector basándose en una estimación de la correlación cruzada entre la primera señal de detector y la señal retardada.
6. El generador de números aleatorios de la reivindicación 1, donde al menos uno de:
la fuente de luz térmica comprende un amplificador óptico de semiconductores;
la fuente de luz térmica comprende un diodo de emisión de luz;
los fotones emitidos por la fuente de luz térmica están restringidos a un único modo espacial transversal;
la fuente de luz térmica incluye un filtro de modo espacial para limitar el número de modos espaciales transversales incluidos en la señal óptica, donde además el filtro de modo espacial comprende una fibra óptica; y
el primer detector es un fotodiodo.
7. El generador de números aleatorios de la reivindicación 1,
donde el sistema de salida comprende una unidad de acondicionamiento digital operable para implementar al menos un algoritmo de acondicionamiento para eliminar al menos una de la desviación y correlaciones en la primera señal de detector; o
donde el sistema de salida comprende una unidad de acondicionamiento digital operable para implementar al menos un algoritmo de extracción de aleatoriedad para extraer entropía en la primera señal de detector.
8. Un método de generación de números aleatorios que usa una fuente de luz térmica (102; 202; 302; 402; 502; 602; 702), un primer detector (116; 206; 308a; 412; 504; 604; 704), y un sistema de salida, comprendiendo el método: proporcionar, mediante la fuente de luz térmica, un flujo óptico emitiendo fotones en un modo de campo óptico, donde el modo de campo óptico se rellena con fotones de acuerdo con una distribución de probabilidad de Bose-Einstein; recibir, en el primer detector, una porción (114) del flujo óptico de la fuente de luz;
proporcionar, por el primer detector, una primera señal de detector basándose en el flujo óptico recibido; y proporcionar, por el sistema de salida, un flujo de bits no desviados independientes basándose en al menos la primera señal de detector a una tasa definida por un tiempo de intervalo de muestreo,
donde un número medio de fotones de la fuente de luz térmica detectados por el primer detector por tiempo de intervalo de muestreo es mayor que un número de modos de campo óptico producidos por la fuente de luz térmica.
9. El método de la reivindicación 8, que comprende adicionalmente
proporcionar, mediante una unidad de retardo (110; 210; 306; 408; 512; 616; 708), una señal retardada; y proporcionar, por un comparador (118; 212; 312; 424; 514; 618; 712), una señal de salida basándose en la primera señal de detector y la señal retardada.
10. El método de la reivindicación 9, donde la unidad de retardo comprende un retardo óptico (110; 306; 408), y donde proporcionar la señal retardada comprende:
recibir, en la unidad de retardo, una porción (108) del flujo óptico de la fuente de luz; y
proporcionar un flujo óptico retardado que corresponde al flujo óptico recibido,
comprendiendo el método además:
recibir, en un segundo detector (112; 308b; 410), el flujo óptico retardado; y
proporcionar, por el segundo detector, una segunda señal de detector basándose en el flujo óptico retardado, donde el primer detector y el segundo detector están configurados como un par de detectores equilibrados.
11. El método de la reivindicación 9, donde
la unidad de retardo es una unidad de retardo eléctrico (512; 708), y donde proporcionar la señal retardada comprende: recibir, en la unidad de retardo, la primera señal de detector; y
proporcionar una señal eléctrica retardada que corresponde a la primera señal de detector, o
donde la unidad de retardo es una unidad de retardo digital (210; 616) y donde proporcionar la señal retardada comprende:
recibir, en la unidad de retardo, la primera señal de detector; y
proporcionar una señal eléctrica retardada que corresponde a la primera señal de detector.
12. El método de la reivindicación 11, donde la unidad de retardo es configurable para retardar la primera señal de detector basándose en una estimación de la correlación cruzada entre la primera señal de detector y la señal retardada.
13. El método de la reivindicación 8, donde al menos uno de:
la fuente de luz térmica comprende un amplificador óptico de semiconductores;
la fuente de luz térmica comprende un diodo de emisión de luz;
el primer detector es un fotodiodo;
los fotones emitidos por la fuente de luz térmica están restringidos a un único modo espacial transversal;
el método comprende adicionalmente implementar, por una unidad de acondicionamiento digital, al menos un algoritmo de acondicionamiento para eliminar al menos una de la desviación y correlaciones en la primera señal de detector; y
el método comprende adicionalmente implementar, por una unidad de acondicionamiento digital, al menos un algoritmo de extracción de aleatoriedad para extraer entropía en la primera señal de detector;.
14. El método de la reivindicación 8, donde la fuente de luz térmica incluye un filtro de modo espacial (105) para limitar el número de modos espaciales transversales incluidos en la señal óptica.
15. El método de la reivindicación 14, donde el filtro de modo espacial comprende una fibra óptica.
ES16831127T 2015-07-29 2016-07-22 Generadores de números aleatorios cuánticos Active ES2835075T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/812,623 US10019235B2 (en) 2011-09-30 2015-07-29 Quantum random number generators
PCT/US2016/043561 WO2017019507A1 (en) 2015-07-29 2016-07-22 Quantum random number generators

Publications (1)

Publication Number Publication Date
ES2835075T3 true ES2835075T3 (es) 2021-06-21

Family

ID=57885260

Family Applications (1)

Application Number Title Priority Date Filing Date
ES16831127T Active ES2835075T3 (es) 2015-07-29 2016-07-22 Generadores de números aleatorios cuánticos

Country Status (7)

Country Link
EP (2) EP3329359B1 (es)
JP (3) JP6647384B2 (es)
KR (1) KR102601718B1 (es)
CN (1) CN108139888A (es)
CA (1) CA2991785C (es)
ES (1) ES2835075T3 (es)
WO (1) WO2017019507A1 (es)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107193532B (zh) * 2017-06-27 2023-08-18 浙江九州量子信息技术股份有限公司 一种基于分时交替采样的高速量子随机数发生系统
KR102027686B1 (ko) * 2018-03-06 2019-10-01 순천향대학교 산학협력단 안전한 통신을 위한 가시광선을 이용한 순수난수 생성 장치 및 생성 방법
US11640480B2 (en) 2018-04-25 2023-05-02 British Telecommunications Public Limited Company Data message sharing
CN108449183A (zh) * 2018-05-04 2018-08-24 北京邮电大学 一种使用量子随机数的非对称加密方法
EP3804211A1 (en) * 2018-05-24 2021-04-14 British Telecommunications public limited company Cryptographic key generation and storage
WO2019223980A1 (en) * 2018-05-24 2019-11-28 British Telecommunications Public Limited Company Cryptographic key generation using multiple random sources
KR102153317B1 (ko) * 2018-06-20 2020-09-08 시옷랩주식회사 양자 난수열 기반의 암호 장치
CN108777614B (zh) * 2018-07-05 2023-08-18 清华大学 一种加解密装置和基于通用散列函数的加解密方法
CN108874366B (zh) * 2018-09-06 2024-01-30 西南大学 一种基于混沌激光熵源的高速物理随机数发生器
JP7052881B2 (ja) * 2018-10-19 2022-04-12 日本電気株式会社 乱数品質管理方法および装置
CN109672533B (zh) * 2019-01-28 2021-07-06 西南大学 一种基于半导体激光器混沌同步的高速密钥分发装置
US11216251B2 (en) 2019-03-20 2022-01-04 Raytheon Company Wideband photonic radio frequency (RF) noise generator
US10833768B2 (en) 2019-03-20 2020-11-10 Raytheon Company Photonic monobit analog-to-digital converter using coherent detection
CN110071943B (zh) * 2019-05-28 2021-07-27 中国电子科技集团公司第三十研究所 密钥真随机变化的复合型高安全ip保密通信方法
EP3992776B1 (en) * 2019-06-26 2023-11-15 Nippon Telegraph And Telephone Corporation Quantum random number generation device and quantum random number generation method
US20220391173A1 (en) * 2019-11-05 2022-12-08 Crypta Labs Ltd Quantum random number generator
CN111106867A (zh) * 2019-12-17 2020-05-05 太原理工大学 一种适用于连续变量量子随机数产生的探测模块
CN111093060A (zh) * 2019-12-20 2020-05-01 安徽问天量子科技股份有限公司 一种视频数据采集传输安全性的保护装置和保护方法
US10901695B1 (en) * 2020-03-03 2021-01-26 Randaemon Sp. Z O.O. Apparatus, systems, and methods for beta decay based true random number generator
CN111538476A (zh) * 2020-04-20 2020-08-14 佳缘科技股份有限公司 一种提高输出序列随机性的细粒度校正方法
CN112912838B (zh) * 2020-05-27 2022-04-22 华为技术有限公司 一种随机数生成装置及方法
CN111488993A (zh) * 2020-06-03 2020-08-04 世融能量科技有限公司 一种基于真空态涨落技术的高速量子随机数发生器
CN111650449B (zh) * 2020-06-10 2022-08-26 广州广电计量检测股份有限公司 一种低频噪声测试装置及方法
KR20220049208A (ko) * 2020-10-14 2022-04-21 주식회사 케이티 양자 암호키 분배 방법 및 장치
CN112200322A (zh) * 2020-11-05 2021-01-08 中国科学技术大学 一种量子随机数的应用管理系统及方法
CN112953709B (zh) * 2021-01-26 2022-06-10 四川轻化工大学 一种远距离高效光量子密钥传输方法及其系统
CN114024662B (zh) * 2021-12-21 2022-05-24 渔翁信息技术股份有限公司 随机数发生器
CN116382635B (zh) * 2023-06-05 2023-08-08 灿芯半导体(成都)有限公司 一种全数字、真随机数熵源系统

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5986790A (en) * 1996-03-05 1999-11-16 Fuji Xerox, Co., Ltd. Light source for optical communication, optical transceiver and optical communication network
JP2002164883A (ja) 2000-11-24 2002-06-07 Nippon Telegr & Teleph Corp <Ntt> 光秘話通信方法および装置
US6810062B2 (en) * 2001-04-11 2004-10-26 Axsun Technologies, Inc. Passive optical resonator with mirror structure suppressing higher order transverse spatial modes
US7519641B2 (en) * 2003-08-27 2009-04-14 Id Quantique S.A. Method and apparatus for generating true random numbers by way of a quantum optics process
JP4952461B2 (ja) * 2007-09-12 2012-06-13 ソニー株式会社 乱数生成装置および乱数生成方法
JP4759077B2 (ja) * 2009-08-03 2011-08-31 日本電信電話株式会社 乱数を発生させる装置および方法
GB0915000D0 (en) * 2009-08-27 2009-09-30 Univ Bruxelles Quantum random number generation
US8554814B2 (en) * 2010-08-20 2013-10-08 The Governing Council Of The University Of Toronto Random signal generator using quantum noise
US20120200422A1 (en) * 2011-02-09 2012-08-09 Baker Hughes Incorporated Use of Digital Transport Delay to Improve Measurement Fidelity in Swept-Wavelength Systems
JP5632330B2 (ja) 2011-05-19 2014-11-26 日本電信電話株式会社 高速カオス光信号生成光回路および高速カオス光信号生成方法
JP6040583B2 (ja) * 2012-06-14 2016-12-07 富士通株式会社 光伝送装置
KR101564954B1 (ko) * 2012-10-08 2015-11-02 에스케이 텔레콤주식회사 광원과 단일광자검출기를 이용한 난수 생성 방법 및 장치
JP5586805B1 (ja) * 2014-04-25 2014-09-10 雅紀 廣石 光子乱数生成器
CN104156194B (zh) * 2014-08-20 2017-04-19 中国科学技术大学 一种量子随机数产生方法及装置
CN104238996B (zh) * 2014-09-04 2017-08-11 清华大学 源无关量子随机数的产生方法及装置

Also Published As

Publication number Publication date
JP2021180038A (ja) 2021-11-18
EP3329359A4 (en) 2019-03-27
JP2020074152A (ja) 2020-05-14
EP3745254A1 (en) 2020-12-02
JP7264949B2 (ja) 2023-04-25
CA2991785C (en) 2023-11-14
CA2991785A1 (en) 2017-02-02
JP2018528520A (ja) 2018-09-27
EP3329359B1 (en) 2020-09-09
EP3329359A1 (en) 2018-06-06
JP6647384B2 (ja) 2020-02-14
KR102601718B1 (ko) 2023-11-14
WO2017019507A1 (en) 2017-02-02
KR20180035223A (ko) 2018-04-05
JP7025458B2 (ja) 2022-02-24
CN108139888A (zh) 2018-06-08

Similar Documents

Publication Publication Date Title
ES2835075T3 (es) Generadores de números aleatorios cuánticos
US11442698B2 (en) Quantum random number generators
Walenta et al. A fast and versatile quantum key distribution system with hardware key distillation and wavelength multiplexing
US8930429B2 (en) Network distributed quantum random number generation
Cao et al. Source-independent quantum random number generation
JP6456763B2 (ja) 光学系に基づく量子乱数発生の方法及びデバイス
Hughes et al. Practical free-space quantum key distribution over 10 km in daylight and at night
US9335973B2 (en) Quantum random number generator
Zhao et al. Security analysis of an untrusted source for quantum key distribution: passive approach
Zhang et al. 2.7 Gb/s secure key generation and distribution using bidirectional polarization scrambler in fiber
Bykovsky et al. Quantum cryptography and combined schemes of quantum cryptography communication networks
Benton et al. A compact free space quantum key distribution system capable of daylight operation
Shafi et al. Multi-bit quantum random number generator from path-entangled single photons
Moskovich An overview of the state of the art for practical quantum key distribution
Walenta et al. 1 Mbps coherent one-way QKD with dense wavelength division multiplexing and hardware key distillation
Wang et al. Design of a high-repetition rate photon source in a quantum key distribution system
Vybornyi et al. Backflash light as a security vulnerability in quantum key distribution systems
Ahmed et al. Chaos-Based RNG using Semiconductor Lasers with Parameters Variation Tolerance
Hughes et al. Network-Centric Quantum Communications
Xu Practical Issues in Quantum Cryptography
Mo et al. Towards high-rate quantum key distribution using quantum frames
Bienfang et al. Free-space quantum key distribution at GHz repetition rates