Cloudflare introduceerde een gedistribueerde generator van willekeurige getallen

Cloudflare-bedrijf gepresenteerd service Liga van Entropie, om de werking ervan te garanderen, is een consortium gevormd van verschillende organisaties die geïnteresseerd zijn in het verstrekken van willekeurige getallen van hoge kwaliteit. In tegenstelling tot bestaande gecentraliseerde systemen vertrouwt League of Entropy niet op één enkele bron en gebruikt het entropie om een ​​willekeurige reeks te genereren. ontvangen van verschillende niet-gerelateerde generatoren die worden beheerd door verschillende projectdeelnemers. Vanwege de gedistribueerde aard van het project zal het compromitteren of knoeien met een of twee van de bronnen niet leiden tot het compromitteren van het uiteindelijke willekeurige getal.

Opgemerkt moet worden dat de gegenereerde willekeurige getallen worden geclassificeerd als openbaar beschikbare reeksen die niet kunnen worden gebruikt om encryptiesleutels te genereren en in gebieden waar het willekeurige getal geheim moet worden gehouden. De dienst is bedoeld om willekeurige getallen te leveren die niet van tevoren kunnen worden voorspeld, maar zodra ze zijn gegenereerd, worden deze getallen openbaar beschikbaar, onder meer voor het controleren van de betrouwbaarheid van willekeurige waarden uit het verleden.

Elke 60 seconden worden openbare willekeurige getallen gegenereerd. Elk nummer is gekoppeld aan een eigen volgnummer (ronde), waarmee u op elk moment en vanaf elke deelnemende server de eenmaal gegenereerde waarde kunt verkrijgen. Dergelijke willekeurige getallen kunnen worden gebruikt in gedistribueerde systemen, cryptocurrencies en blockchains, waarin verschillende knooppunten toegang moeten hebben tot een enkele generator van willekeurige getallen (bijvoorbeeld bij het genereren van bewijs van uitgevoerd werk), maar ook bij het uitvoeren van verschillende loterijen en voor het genereren van willekeurige getallen. monsters tijdens het auditproces verkiezingen.

Om met de dienst te werken en uw eigen knooppunten in te zetten voorgesteld hulpmiddelen drand, geschreven in Go en vrijgegeven onder de MIT-licentie. Drand draait in de vorm van een achtergrondproces dat communiceert met externe generatoren die deelnemen aan het gedistribueerde netwerk en gezamenlijk een samenvattende willekeurige waarde genereert. De samenvattende waarde wordt gegenereerd met behulp van de methoden drempel cryptografie и bilineaire conjugatie. Het genereren van een samenvattende willekeurige waarde kan op het systeem van de gebruiker worden uitgevoerd zonder tussenkomst van gecentraliseerde aggregators.

Drand kan ook worden gebruikt om lokaal gegenereerde particuliere willekeurige getallen aan klanten te leveren. Om een ​​willekeurig getal te verzenden wordt gebruik gemaakt van het ECIES-encryptieschema, waarbij de client een private en publieke sleutel genereert. De publieke sleutel wordt vanuit Drand naar de server overgedragen. Het willekeurige getal wordt gecodeerd met behulp van de opgegeven openbare sleutel en kan alleen worden bekeken door de klant die eigenaar is van de privésleutel. Om toegang te krijgen tot de servers kunt u het hulpprogramma “drand” gebruiken (bijvoorbeeld “drand get public group.toml”, waarbij group.toml een lijst met knooppunten is om te pollen) of de Web API (u kunt bijvoorbeeld “ curl https://drand.cloudflare.com/api/public" of toegang vanuit JavaScript met behulp van de bibliotheek DrandJS). Metagegevens van verzoeken worden verzonden in TOML-indeling en het antwoord wordt geretourneerd in JSON.

Momenteel hebben vijf bedrijven en organisaties zich aangesloten bij het League of Entropy-initiatief en bieden ze toegang tot hun entropiegeneratoren. De deelnemers aan het project bevinden zich in verschillende landen en gebruiken verschillende methoden om entropie te verkrijgen:

  • Wolkvlam, LavaRand, willekeurige waarden gevormd gebaseerd op onvoorspelbare vloeistofstromen lava lampen, waarvan afbeeldingen worden geleverd als invoer-entropie voor CSPRNG (Cryptographically Secure PseudoRandom Number Generator);
  • EPFL (Ecole Polytechnique Federale de Lausanne), URand,
    er wordt een standaard lokale generator /dev/urandom gebruikt, die toetsenbordinvoer, muisbewegingen, verkeersstromen, enz. gebruikt als bronnen van entropie.

  • Universiteit van Chili, UChiliwordt een netwerk van seismische sensoren gebruikt als bron van entropie, evenals gegevens van radio-uitzendingen, Twitter-activiteit, wijzigingen in de Ethereum-blockchain en een zelfgemaakte hardware-RNG-generator;
  • Kudelski Security, ChaChaRand, biedt een CRNG (Cryptographic Random Number Generator) gebaseerd op het ChaCha20-cijfer;
  • Protocol Labs, InterplanetaryRand, willekeurige gegevens worden uit noise-catchers gehaald en gecombineerd met Linux PRNG en een generator voor pseudo-willekeurige getallen die in de CPU is ingebouwd.

Momenteel hebben onafhankelijke deelnemers 8 openbare toegangspunten tot de API gelanceerd, waarmee u zowel het huidige samenvattende willekeurige getal (bijvoorbeeld “curl https://drand.cloudflare.com/api/public”) kunt achterhalen als de waarde op een bepaald moment in het verleden (“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

Bron: opennet.ru

Voeg een reactie