Cloudflare esitteli hajautetun satunnaislukugeneraattorin

Cloudflare Company esitetty palvelu Entropian liiga, jonka toiminnan varmistamiseksi on muodostettu konsortio useista korkealaatuisten satunnaislukujen tuottamisesta kiinnostuneista organisaatioista. Toisin kuin olemassa olevat keskitetyt järjestelmät, League of Entropy ei luota yhteen lähteeseen ja käyttää entropiaa satunnaisen sekvenssin luomiseen, otettu vastaan useista toisiinsa liittyvistä generaattoreista, joita ohjaavat eri projektin osallistujat. Projektin hajautetun luonteen vuoksi yhden tai kahden lähteen vaarantaminen tai peukalointi ei johda lopullisen satunnaisluvun kompromisseihin.

On huomioitava, että luodut satunnaisluvut luokitellaan julkisesti saatavilla oleviksi sarjoiksi, joita ei voida käyttää salausavaimien luomiseen, ja alueille, joilla satunnaisluku on pidettävä salassa. Palvelun tavoitteena on tarjota satunnaislukuja, joita ei voida ennustaa etukäteen, mutta kun ne on luotu, ne tulevat julkisesti saataville muun muassa menneiden satunnaisarvojen luotettavuuden tarkistamiseksi.

Julkisia satunnaislukuja luodaan 60 sekunnin välein. Jokaiseen numeroon liittyy oma järjestysnumeronsa (pyöreä), jonka avulla voit milloin tahansa ja miltä tahansa osallistuvalta palvelimelta saada kerran luodun arvon. Tällaisia ​​satunnaislukuja voidaan käyttää hajautetuissa järjestelmissä, kryptovaluutoissa ja lohkoketjuissa, joissa eri solmuilla on oltava pääsy yhteen satunnaislukugeneraattoriin (esimerkiksi luotaessa todisteita tehdystä työstä), sekä erilaisten arpajaisten ja satunnaisten luomiseen. näytteitä läpikulkuvaalien tarkastusprosessissa.

Työskentely palvelun kanssa ja ota käyttöön omia solmuja ehdotettu työkaluja Drand, kirjoitettu Go-kielellä ja julkaistu MIT-lisenssillä. Drand toimii taustaprosessin muodossa, joka kommunikoi hajautettuun verkkoon osallistuvien ulkoisten generaattoreiden kanssa ja muodostaa kollektiivisesti yhteenvedon satunnaisarvon. Yhteenvetoarvo muodostetaan menetelmillä kynnyssalaus и bilineaarinen konjugaatio. Yhteenvedon satunnaisarvon generointi voidaan suorittaa käyttäjän järjestelmässä ilman keskitettyjen aggregaattoreiden osallistumista.

Drandia voidaan käyttää myös paikallisesti luotujen yksityisten satunnaislukujen toimittamiseen asiakkaille. Satunnaisluvun lähettämiseen käytetään ECIES-salausjärjestelmää, jossa asiakas luo yksityisen ja julkisen avaimen. Julkinen avain siirtyy palvelimelle Drandilta. Satunnaisluku on salattu annetulla julkisella avaimella ja vain yksityisen avaimen omistava asiakas voi nähdä sen. Palvelimiin pääsemiseksi voit käyttää "drand" -apuohjelmaa (esimerkiksi "drand get public group.toml", jossa group.toml on lista kyselyyn soveltuvista solmuista) tai Web API -sovellusta (voit esimerkiksi käyttää " curl https://drand.cloudflare.com /api/public" tai käytä JavaScriptiä kirjaston avulla DrandJS). Pyynnön metatiedot lähetetään TOML-muodossa ja vastaus palautetaan JSON-muodossa.

Tällä hetkellä viisi yritystä ja organisaatiota on liittynyt League of Entropy -aloitteeseen ja tarjoavat pääsyn entropiageneraattoreihinsa. Hankkeen osallistujat sijaitsevat eri maissa ja käyttävät erilaisia ​​menetelmiä entropian saamiseksi:

  • pilvenleima, LavaRand, satunnaiset arvot muodostettu perustuu arvaamattomiin nestevirtauksiin laavalamput, jonka kuvat toimitetaan syöttöentropiana CSPRNG:lle (Cryptographically Secure PseudoRandom Number Generator);
  • EPFL (Ecole Polytechnique Federale de Lausanne), URand,
    käytetään tavallista paikallista generaattoria /dev/urandom, joka käyttää näppäimistön syöttöä, hiiren liikettä, liikennevirtoja jne. entropian lähteinä.

  • Chilen yliopisto, UChile, seismisten anturien verkkoa käytetään entropian lähteenä sekä dataa radiolähetyksistä, Twitter-toiminnasta, Ethereum-lohkoketjun muutoksista ja kotitekoisesta RNG-laitteistosta;
  • Kudelski Security, ChaChaRand, tarjoaa CRNG:n (Cryptographic Random Number Generator), joka perustuu ChaCha20-salaukseen;
  • Protocol Labs, InterplanetaryRand, satunnaisdata poimitaan kohinan sieppaajista ja yhdistetään Linux PRNG:hen ja prosessoriin sisäänrakennettuun näennäissatunnaisten lukugeneraattoriin.

Tällä hetkellä riippumattomat osallistujat ovat julkaisseet 8 julkista pääsypistettä API:lle, joiden kautta voit selvittää sekä nykyisen yhteenvedon satunnaisluvun (esim. "curl https://drand.cloudflare.com/api/public") ja määrittää arvo tietyllä menneisyyden hetkellä ("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

Lähde: opennet.ru

Lisää kommentti