Rechercher de vrais générateurs de nombres aléatoires


Connaissez les chiffres que vous générez sur la base des données imprévisibles du monde physique - cette pensée simple complique l'homme à travers tout le chemin de la cryptographie moderne. Les générateurs de nombres pseudo-aléatoires (PRNG) basés uniquement sur des algorithmes mathématiques sont prévisibles ou soumis à des influences externes, de sorte que les générateurs matériels utilisant diverses sources d'entropie sont considérés comme la norme de sécurité absolue.


Cependant, mĂȘme les gĂ©nĂ©rateurs de nombres alĂ©atoires rĂ©els (RNG) qui collectent des donnĂ©es imprĂ©visibles Ă  partir de phĂ©nomĂšnes physiques ont des inconvĂ©nients: ils peuvent ĂȘtre encombrants, lents et coĂ»teux Ă  produire. Il n'y a aucune garantie que le systĂšme propriĂ©taire n'est pas ouvert Ă  des services spĂ©ciaux - par consĂ©quent, les dĂ©veloppeurs de FreeBSD ont refusĂ© d'utiliser directement les gĂ©nĂ©rateurs matĂ©riels intĂ©grĂ©s aux puces Intel.


L'évolution des méthodes de cryptage a conduit à la nécessité de créer des générateurs plus avancés - ils seront discutés aujourd'hui.


Il y a 100 ans, pour obtenir des nombres aléatoires, ils ont lancé des dés, distribué des cartes, collecté des nombres dans un chapeau. En 1927, le statisticien Leonard Henry Caleb Tippett a publié la premiÚre «table aléatoire» du monde - 41 600 nombres - obtenue en collectant des données sur la région des églises anglaises.


En 1955, RAND Corporation a publiĂ© un livre qui, pendant de nombreuses annĂ©es, est devenu l'une des principales sources de donnĂ©es alĂ©atoires - « Un million de nombres alĂ©atoires avec un Ă©cart type de 100 000 » . Peut-ĂȘtre que personne n'a lu le livre d'une couverture Ă  l'autre - presque tout son texte est composĂ© de chiffres Ă  cinq chiffres.


Avec le dĂ©veloppement de l'Ăšre informatique pour RNG, nous avons commencĂ© Ă  utiliser des actions utilisateur significatives et dĂ©nuĂ©es de sens: frappes sur le clavier, clics de souris, etc. Cependant, cette approche donne une petite vitesse pour obtenir des bits alĂ©atoires. Le problĂšme est que tout ce qui se passe Ă  l'intĂ©rieur de l'ordinateur ne peut pas ĂȘtre considĂ©rĂ© comme vraiment alĂ©atoire. DĂšs le dĂ©but, les ordinateurs ont Ă©tĂ© conçus pour ĂȘtre prĂ©visibles. Les sources de l'environnement - par exemple, les actions des utilisateurs - ont Ă©galement leurs limites, au moins dans le temps.
Des exigences de sécurité élevées ont donné naissance à plusieurs nouvelles approches complémentaires de la génération de nombres aléatoires.


Générateur de jouets



L'Electronic Frontier Foundation ( EFF ), engagée dans la lutte pour les droits de l'homme en matiÚre de nouvelles technologies de communication, a proposé un moyen simple de créer des mots de passe sécurisés basés sur l'utilisation d'un générateur physique de nombres aléatoires.


La méthode est vraiment simple - elle est basée sur les dés.


Nous lançons cinq dĂ©s en mĂȘme temps et notons les nombres rĂ©sultants. Disons que les cubes sont situĂ©s de gauche Ă  droite comme ceci: 4, 3, 4, 6, 3. Ouvrez la longue liste de mots de l' EFF pour trouver le mot correspondant Ă  cĂŽtĂ© de 43463. Il s'agit du mot «panoramique».


La procédure est répétée cinq fois. En conséquence, nous obtenons quelque chose comme un coup de main panoramique nectar prédécoupé de banane smith - une phrase secrÚte qui a environ 221 073 919 720 733 357 899 776 variations.


En utilisant des mnĂ©moniques, l' expression est facile Ă  retenir. Étant donnĂ© la prĂ©sence de 2⁷⁷ alternatives Ă  la force brute, il sera extrĂȘmement difficile de trouver votre mot de passe.


Chaoskey



Kate Packard, développeur Debian actif, chef de projet X.Org, créateur de XRender, XComposite et XRandR, en collaboration avec Bdale Garby, directrice du projet Linux Hedlett-Packard Linux, promoteur de données ouvertes, a développé un générateur de nombres aléatoires ChaosKey peu coûteux mais fiable.


Le périphérique open source, ChaosKey 1.0, a été dévoilé lors de la conférence DeConf16 Debian. Le but du développement est d'ajouter une véritable entropie au générateur de nombres aléatoires, de fournir un haut niveau de sécurité et de réduire le prix au minimum.


Il est impossible d'accĂ©der Ă  distance Ă  ChaosKey et vous ne pouvez pas remplacer le firmware mĂȘme lorsque l'appareil est connectĂ© via USB Ă  un ordinateur. Pour ce faire, vous devez obtenir un accĂšs physique, ouvrir le gadget et connecter les deux contacts Ă  l'intĂ©rieur.


Le RNG complet lui-mĂȘme ressemble Ă  un petit lecteur flash USB et occupe un connecteur USB. La conception de la carte est minimaliste - elle n'a en fait qu'un processeur et des transistors pour gĂ©nĂ©rer du bruit. Le dĂ©bit de donnĂ©es alĂ©atoire est d'environ mĂ©gaoctets par seconde.


Et sur le prix. L'appareil peut ĂȘtre commandĂ©, mais tous les schĂ©mas et micrologiciels sont accessibles au public - les dĂ©veloppeurs eux-mĂȘmes recommandent Ă  tout le monde de crĂ©er et d'amĂ©liorer ChaosKey.


Z1FFER



Un autre générateur de nombres aléatoires open source à faible coût qui plaira à tous les amateurs de bricolage. Tout le monde peut assembler et démonter l'appareil, ainsi que s'assurer qu'il n'a pas de portes dérobées intégrées.


Z1FFER n'est pas un produit fini et n'est fourni avec aucun logiciel (les auteurs ne partagent que quelques scripts et instructions de démarrage). Il est conçu pour fonctionner sur la plate-forme Arduino, mais sa fiabilité n'a pas été prouvée par le piratage de l'extérieur. L'appareil est principalement destiné à ceux qui veulent «ressentir» personnellement la technologie de génération de nombres à l'aide de fer.


Z1FFER utilise le bruit thermique de la résistance, doublant le signal, ce qui conduit à une augmentation exponentielle de la complexité de prédiction de la séquence de bits.


QRBG121



Ce serait un pĂ©chĂ© de ne pas mentionner dans ce fil le gĂ©nĂ©rateur de nombres alĂ©atoires QRBG121, qui pour une raison inconnue est devenu une fois la mascotte de l'une des cartes d'image de Runet. QRBG121 (Quantum Random Bit Generator), peut-ĂȘtre, en effet, est tendre pour quelqu'un, mais le plus intĂ©ressant est cachĂ© Ă  l'intĂ©rieur de la boĂźte.


L'effet aléatoire dans le dispositif dépend du processus physique quantique du rayonnement photonique dans les semi-conducteurs et de la détection ultérieure de photons individuels à l'aide d'un photomultiplicateur . Dans ce processus, les photons sont détectés au hasard, indépendamment les uns des autres. Les informations de synchronisation des photons détectés sont utilisées pour générer des bits. Une caractéristique unique de cette méthode est qu'elle n'utilise qu'un seul détecteur de photons pour obtenir à la fois des zéros et des uns.


Lampes Ă  lave dans Cloudflare



CloudFlare, qui affirme lui-mĂȘme que «environ 10% du trafic mondial» passe par son rĂ©seau, protĂšge les projets Internet des attaques DDoS, mais il a Ă©galement besoin d'une protection. Le trafic qui passe par les rĂ©seaux CloudFlare est cryptĂ© - et une centaine de lampes Ă  lave colorĂ©es sur le mur d'entropie y contribuent.


Une lampe à lave est un récipient en verre rempli d'huile transparente et de paraffine translucide. L'ampoule à incandescence située dans la partie inférieure du réservoir chauffe et illumine le contenu du cylindre, et un mouvement «semblable à de la lave» de paraffine dans l'huile se produit. La paraffine est légÚrement plus lourde que l'huile, mais avec un peu de chaleur, elle devient plus légÚre et flotte.


Le mouvement des liquides est surveillé par plusieurs caméras prenant des instantanés. Les instantanés sont convertis en nombres, à partir desquels des clés de chiffrement sont ensuite générées. Pour une trame, 16 384 bits d'entropie sont obtenus.


Deux autres bureaux CloudFlare utilisent diffĂ©rentes mĂ©thodes pour obtenir des valeurs alĂ©atoires. À Londres, la camĂ©ra capture les mouvements de trois pendules chaotiques, et Ă  Singapour, ils ont installĂ© un compteur Geiger qui mesure la dĂ©sintĂ©gration radioactive d'un petit morceau d'uranium. Dans ce dernier cas, l'uranium est utilisĂ© comme «source de donnĂ©es», car le rayonnement radioactif est caractĂ©risĂ© par le caractĂšre alĂ©atoire de chaque Ă©vĂ©nement de dĂ©sintĂ©gration individuel.


Toutes ces méthodes de travail avec les données attirent l'attention sur les activités de l'entreprise, dont le travail reste souvent invisible pour les clients ordinaires.


Hotbits



HotBits est un site qui fournit à tout le monde de vrais nombres aléatoires générés à l'aide d'un compteur Geiger qui détecte les rayonnements ionisants. Vous remplissez un formulaire de demande sur le site indiquant le nombre d'octets aléatoires et choisissez la méthode préférée d'obtention des données. Une application préliminaire est nécessaire car le matériel HotBits vous permet de créer des données à une vitesse modeste d'environ 100 octets par seconde.


Une fois que des nombres alĂ©atoires ont Ă©tĂ© fournis au client, ils sont immĂ©diatement supprimĂ©s du systĂšme - les mĂȘmes donnĂ©es ne seront jamais envoyĂ©es Ă  diffĂ©rents utilisateurs (sauf, bien sĂ»r, si vous faites confiance aux HotBits).


Pour obtenir des données encore plus fiables, il existe une ressource EntropyPool qui collecte et «mélange» des bits aléatoires à partir de diverses sources, y compris HotBits et random.org (cette ressource, à son tour, «extrait» l'entropie du bruit radio atmosphérique). Les personnes qui se soucient au maximum de la sécurité quantique peuvent ajouter le service en ligne Quantum Random Bit Generator aux ressources ci-dessus.


Fluctuations du vide quantique



Représentation schématique des écarts spatio-temporels par rapport au niveau des fluctuations de vide non perturbées du champ électrique
Source


Le vide, contrairement au nom («vacuus» - vide), ne peut pas ĂȘtre considĂ©rĂ© comme vraiment vide, car, en raison du principe d'incertitude de Heisenberg , des particules virtuelles naissent et meurent constamment - les soi-disant fluctuations quantiques, fluctuations du niveau d'Ă©nergie par unitĂ© de volume d'espace-temps.


Les physiciens canadiens ont conçu un générateur de nombres aléatoires rapide et structurellement simple basé sur les fluctuations du vide. Le générateur se compose d'un laser pulsé à haute fréquence de rayonnement, d'un milieu à indice de réfraction élevé (diamant) et d'un détecteur. En passant à travers un diamant, chaque impulsion sur le détecteur présente des caractéristiques différentes, en fonction des fluctuations du champ de vide qui se sont rencontrées sur le chemin des photons. Les raies spectrales apparaissent dans le spectre du rayonnement diffusé à la sortie, qui ne sont pas dans le spectre de la lumiÚre primaire, et en raison de l'imprévisibilité des fluctuations du vide, ces raies diffÚrent à chaque fois de maniÚre imprévisible.


Les physiciens disent qu'il n'y a mĂȘme pas de concept sur la façon dont il serait thĂ©oriquement possible de dĂ©velopper un dispositif pour prĂ©dire les fluctuations de l'Ă©nergie d'Ă©mergence et d'anĂ©antissement des particules virtuelles - c'est l'un des Ă©vĂ©nements les plus alĂ©atoires que nous observons dans l'Univers.


Il reste à rendre ce générateur suffisamment compact et bon marché pour commencer son utilisation de masse.


Serveur ANU Quantum Random Number



Une alternative basée sur la mesure des fluctuations du vide quantique est proposée par le site Internet ANU Quantum . Des nombres aléatoires open source sont générés en temps réel au Laboratoire du Center for Quantum Computing and Communication Technology, University of New South Wales (Sydney, Australie).


En mesurant les fluctuations du champ électromagnétique d'un vide, ANU Quantum permet à chacun de voir , d' écouter ou de télécharger des nombres quantiques aléatoires et d'évaluer la qualité des nombres générés en temps réel.


Aléa quantique série



Il n'y a pas beaucoup d'entreprises qui créent des dispositifs QRNG (Quantum Random Number Generator). Le leader dans cette direction s'appelle désormais la startup suisse ID Quantique (IDQ) , qui crée des générateurs de nombres aléatoires quantiques commerciaux depuis 2001. IDQ propose de nombreux formats QRNG, comme indiqué dans l'image ci-dessus. L'un des appareils les plus populaires de l'entreprise est USB Quantum , qui génÚre plus de nombres aléatoires que vous n'en aurez probablement besoin dans cette vie.



QuintessenceLabs est une autre entreprise connue dans ce domaine. La société affirme que sa version de l'appareil QRNG est si puissante qu'elle équivaut à 60 appareils IDQ.



ComScire est présent sur le marché des dispositifs QRNG depuis 1994. L'image ci-dessus montre la principale source de nombres aléatoires donnant un flux de données provenant du mélange de divers types de bruits de transistor à une vitesse de 128 Mbit / s.


Générateur de nanotubes de carbone



Les solutions de génération de matériel et de logiciel existantes ne conviennent pas particuliÚrement aux appareils portables. Northwestern a proposé une approche différente, combinant compacité et bruit thermique généré.


Les chercheurs ont construit un générateur de nombres aléatoires à partir d'une mémoire à accÚs aléatoire statique ( SRAM ), imprimée avec des encres spéciales contenant des nanotubes de carbone semi-conducteurs. La cellule mémoire utilise des fluctuations de bruit thermique pour générer des bits aléatoires.


Le gĂ©nĂ©rateur de nanotubes de carbone peut ĂȘtre imprimĂ© sur des substrats en plastique souple, ce qui lui permet d'ĂȘtre intĂ©grĂ© dans de minuscules appareils Ă©lectroniques flexibles - capteurs portables, Ă©tiquettes jetables, Ă©lĂ©ments de vĂȘtements intelligents. L'impression de cellules SRAM avec des nanotubes est un processus relativement peu coĂ»teux, qui leur permet d'ĂȘtre utilisĂ© dans la fabrication de produits Ă©lectroniques grand public.


Générateur de nombres aléatoires quantiques pour smartphone



En 2014, l'Université de GenÚve a été remarquée par le dispositif QRNG, qui utilise l'appareil photo huit mégapixels du smartphone Nokia N9.


La caméra du smartphone compte le nombre de photons incidents sur chaque pixel individuel. La source lumineuse est une LED réguliÚre. Le fonctionnement de la caméra et de la LED est régulé de sorte que chaque pixel de la caméra 8 MP détecte environ 400 photons en peu de temps. Le nombre de photons sur tous les pixels est converti en une séquence de nombres aléatoires à une vitesse de 1,25 Gbit / s.


Cette vitesse n'est pas un record. En 2011, Intel a montrĂ© que son gĂ©nĂ©rateur de processeur crĂ©e un flux de nombres alĂ©atoires Ă  une vitesse d'environ 3 Gbit / s. Cependant, tous les composants QRNG peuvent ĂȘtre intĂ©grĂ©s sur une puce pour quelques dollars et facilement ajoutĂ©s Ă  n'importe quel appareil Ă©lectronique portable, y compris les smartphones.


Vraie chance


Avec autant de sources de données, il est logique de vous demander: comment vérifiez-vous réellement les bits aléatoires?


Le National Institute of Standards and Technology des États-Unis a proposĂ© une «suite de tests statistiques pour les gĂ©nĂ©rateurs de nombres alĂ©atoires et pseudo-alĂ©atoires pour les applications cryptographiques». Il consiste en 15 tests statistiques , dont le but est de dĂ©terminer la mesure du caractĂšre alĂ©atoire des bits gĂ©nĂ©rĂ©s par des gĂ©nĂ©rateurs matĂ©riels ou logiciels.


L'un des tests statistiques les plus rigoureux a été proposé par le professeur George Marsaglia de la Florida State University. Les tests purs et durs comprennent 17 contrÎles différents, dont certains nécessitent des séquences trÚs longues: un minimum de 268 mégaoctets.


L'alĂ©atoire peut ĂȘtre vĂ©rifiĂ© Ă  l'aide de la bibliothĂšque TestU01 , prĂ©sentĂ©e par Pierre LÊ»Ecouillet et Richard Simard de l'UniversitĂ© de MontrĂ©al, incluant des tests classiques et quelques originaux, ainsi qu'Ă  travers la bibliothĂšque publique SPRNG .


Un autre service utile pour quantifier le caractÚre aléatoire est http://www.fourmilab.ch/random .


Et n'oublions pas le critĂšre le plus important - chaque bit suivant de la sĂ©quence de donnĂ©es alĂ©atoires doit ĂȘtre prĂ©dit avec une probabilitĂ© ne dĂ©passant pas la probabilitĂ© de rencontrer un dinosaure dans la rue;)

Source: https://habr.com/ru/post/fr408181/


All Articles