Société Cloudflare service , pour assurer le fonctionnement duquel un consortium de plusieurs organisations intéressées par la fourniture de nombres aléatoires de haute qualité a été formé. Contrairement aux systÚmes centralisés existants, League of Entropy ne s'appuie pas sur une source unique et utilise l'entropie pour générer une séquence aléatoire, provenant de plusieurs générateurs indépendants contrÎlés par différents participants au projet. En raison de la nature distribuée du projet, la compromission ou la falsification d'une ou deux des sources n'entraßnera pas la compromission du nombre aléatoire final.
Il convient de noter que les nombres alĂ©atoires gĂ©nĂ©rĂ©s sont classĂ©s comme sĂ©quences accessibles au public qui ne peuvent pas ĂȘtre utilisĂ©es pour gĂ©nĂ©rer des clĂ©s de chiffrement et dans des zones oĂč le nombre alĂ©atoire doit ĂȘtre gardĂ© secret. Le service vise Ă fournir des nombres alĂ©atoires qui ne peuvent pas ĂȘtre prĂ©dits Ă l'avance, mais une fois gĂ©nĂ©rĂ©s, ces nombres deviennent accessibles au public, notamment pour vĂ©rifier la validitĂ© des valeurs alĂ©atoires passĂ©es.
Des nombres alĂ©atoires publics sont gĂ©nĂ©rĂ©s toutes les 60 secondes. Chaque numĂ©ro est associĂ© Ă son propre numĂ©ro de sĂ©quence (rond), par lequel Ă tout moment et depuis n'importe quel serveur participant, vous pouvez obtenir la valeur une fois gĂ©nĂ©rĂ©e. De tels nombres alĂ©atoires peuvent ĂȘtre utilisĂ©s dans les systĂšmes distribuĂ©s, les crypto-monnaies et les blockchains, dans lesquels diffĂ©rents nĆuds doivent avoir accĂšs Ă un seul gĂ©nĂ©rateur de nombres alĂ©atoires (par exemple, lors de la gĂ©nĂ©ration d'une preuve de travail effectuĂ©), ainsi que lors de la conduite de diverses loteries et pour gĂ©nĂ©rer des nombres alĂ©atoires. des Ă©chantillons en cours d'audit des Ă©lections de passage.
Travailler avec le service et dĂ©ployer vos propres nĆuds outils , Ă©crit en Go et publiĂ© sous licence MIT. Drand fonctionne sous la forme d'un processus en arriĂšre-plan qui communique avec des gĂ©nĂ©rateurs externes participant au rĂ©seau distribuĂ© et gĂ©nĂšre collectivement une valeur alĂ©atoire rĂ©capitulative. La valeur rĂ©capitulative est gĂ©nĂ©rĂ©e Ă l'aide des mĂ©thodes Đž . La gĂ©nĂ©ration d'une valeur alĂ©atoire rĂ©capitulative peut ĂȘtre effectuĂ©e sur le systĂšme de l'utilisateur sans l'intervention d'agrĂ©gateurs centralisĂ©s.
Drand peut Ă©galement ĂȘtre utilisĂ© pour fournir aux clients des nombres alĂ©atoires privĂ©s gĂ©nĂ©rĂ©s localement. Pour transmettre un nombre alĂ©atoire, le schĂ©ma de cryptage ECIES est utilisĂ©, au sein duquel le client gĂ©nĂšre une clĂ© privĂ©e et publique. La clĂ© publique est transfĂ©rĂ©e au serveur depuis Drand. Le nombre alĂ©atoire est cryptĂ© Ă lâaide de la clĂ© publique donnĂ©e et ne peut ĂȘtre consultĂ© que par le client propriĂ©taire de la clĂ© privĂ©e. Pour accĂ©der aux serveurs, vous pouvez utiliser l'utilitaire « drand » (par exemple, « drand get public group.toml », oĂč group.toml est une liste de nĆuds Ă interroger) ou l'API Web (par exemple, vous pouvez utiliser « curl https://drand.cloudflare.com /api/public" ou accĂšs depuis JavaScript en utilisant la bibliothĂšque ). Les mĂ©tadonnĂ©es de la demande sont envoyĂ©es au format TOML et la rĂ©ponse est renvoyĂ©e au format JSON.
Actuellement, cinq entreprises et organisations ont rejoint l'initiative League of Entropy et donnent accÚs à leurs générateurs d'entropie. Les participants inclus dans le projet sont situés dans différents pays et utilisent différentes méthodes pour obtenir l'entropie :
- Nuageux, , valeurs aléatoires basé sur des flux de fluides imprévisibles , dont les images sont fournies comme entropie d'entrée pour CSPRNG (Cryptographically Secure PseudoRandom Number Generator) ;
- EPFL (Ecole Polytechnique Fédérale de Lausanne), URand,
un générateur local standard /dev/urandom est utilisé, qui utilise la saisie au clavier, le mouvement de la souris, les flux de trafic, etc. comme sources d'entropie. - Université du Chili, , un réseau de capteurs sismiques est utilisé comme source d'entropie, ainsi que des données provenant d'émissions de radio, de l'activité de Twitter, des modifications apportées à la blockchain Ethereum et d'un générateur RNG matériel fait maison ;
- Kudelski Security, ChaChaRand, fournit un CRNG (Cryptographic Random Number Generator) basé sur le chiffre ChaCha20 ;
- Protocol Labs, InterplanetaryRand, des données aléatoires sont extraites de piÚges à bruit et combinées avec Linux Le générateur de nombres pseudo-aléatoires (PRNG) et le générateur de nombres pseudo-aléatoires intégré au processeur.
Actuellement, des participants indépendants ont lancé 8 points d'accÚs publics à l'API, grùce auxquels vous pouvez connaßtre à la fois le nombre aléatoire récapitulatif actuel (par exemple, « curl https://drand.cloudflare.com/api/public ») et déterminer le valeur à un certain moment dans le passé (« curl https://drand.cloudflare.com/api/public?round=1234 ») :
- https://drand.cloudflare.com:443
- https://random.uchile.cl:8080
- https://drand.cothority.net:7003
- https://drand.kudelskisecurity.com:443
- https://drand.lbarman.ch:443
- https://drand.nikkolasg.xyz:8888
- https://drand.protocol.ai:8080
- https://drand.zerobyte.io:8888
Source: opennet.ru
