URL: https://linuxfr.org/users/trim/journaux/onerng-generateur-de-nombres-aleatoires-open-hardware-source Title: OneRNG: générateur de nombres aléatoires open hardware/source Authors: Adrien Dorsaz Date: 2016年07月15日T11:55:16+02:00 License: CC By-SA Tags: random, rng, open_hardware et open_source Score: 19 Hello, Je rencontre actuellement des problèmes de disponibilités de nombres aléatoires sur ma machine d'auto-hébergement: depuis que j'ai mis en place DNSSEC avec bind9 en mode "inline-signing", mon entropie disponible chute souvent^1 et je pense que c'est la cause de certains soucis d'instabilités de mon serveur (bon, là, il a environ 700 entropies disponibles, mais dès que je fais une mise à jour dynamique DNS, il descend à 0 pendant quelques minutes). Comme je suis en train de développer un script python pour Let's Encrypt avec vérification DNS, je fais fréquemment des mises à jour dynamiques DNS et du coup tant que je ne développe pas ça va, mais dès que bind met à jour les signatures DNSSEC c'est galère. Mon projet est donc un peu bloqué tant que mon serveur DNS reste instable. Je me suis donc dit qu'il fallait chercher un moyen pour régler ce problème d'entropie. Comme cette machine ne semble pas avoir de matériel de génération d'entropie, la première solution avait été d'utiliser `[haveged](http://linux.die.net/man/8/haveged)`. Cet outil permet d'accroître l'entropie disponible par défaut sous Linux en utilisant plus de sources disponibles. Cette solution m'a permis de mettre plus rapidement en place DNSSEC (la première génération des signatures était vraiment très lente sinon). Pour l'instant, cette solution pourrait suffire, mais comme je souhaite mettre en place Let's Encrypt avec mise à jour des entrées DNS automatique, mon entropie pourra chuter souvent et mon serveur DNS ne répond plus pendant quelques minutes après la mise à jour dynamique (je ne suis pas sûr que ce soie lié à l'entropie disponible, mais c'est ce qui me semble le plus crédible pour l'instant). J'ai donc cherché sur le web si un matériel USB existait pour créer des nombres aléatoires (ma machine est un ordinateur portable, l'USB est le plus simple à utilser). Et là j'ai découvert le projet [OneRNG](http://onerng.info/). Le but de ce projet est de fournir un périphérique bon marché (40$) capable de générer des nombres aléatoires avec un design Open Hardware et des logiciels Open Source (voire les [informations techniques](http://moonbaseotago.com/onerng/)). Le périphérique peut utiliser deux sources d'entropies (voire les [fondements théoriques](http://moonbaseotago.com/onerng/theory.html)): * l'activité des ondes radio alentours * une "avalanche diode" qui génère des 0 et des 1 à une fréquence plus élevée que celle utilisée pour lire ces nombres Le périphérique correspondrait exactement à mes besoins, le projet nous donne les moyens de vérifier si le matériel correspond bien à ce qui a été prévu et le firmware est signé à l'intérieur de la puce. Le matériel est isolé par une petite cage de Faradet afin d'éviter que l'envirronnement perturbe le générateur et que le bruit généré ne soit pas utilisable par quelqu'un de l'extérieur. Par contre, il est clairement dit que les données transférées par l'USB ne sont pas protégées. Manque de chance, cher lecteur qui découvre en même temps que moi ce projet, le format USB de type A de leur matériel est en rupture de stock et un voyage en Chine devra être fait avant que le matériel soit à nouveau disponible (prévu en août, le voyage permettra la vérification de l'installation du firmware apparemment). L'autre format, insérable sur les pins USB d'une tour / d'un serveur est par contre disponible. Soyons donc patients et attendons le mois d'août pour Let's Encrypt (j'ai déjà dû renouvelé mon certificat pour 2 ans, ça pourra donc attendra donc 1 mois) et vos autres projets nécessitant beaucoup d'entropie :)