Cloudflare prezantoi një gjenerator të numrave të rastësishëm të shpërndarë

Kompania Cloudflare prezantuar shërbim Lidhja e Entropisë, për të siguruar funksionimin e së cilës është formuar një konsorcium i disa organizatave të interesuara për ofrimin e numrave të rastit me cilësi të lartë. Ndryshe nga sistemet ekzistuese të centralizuara, League of Entropy nuk mbështetet në një burim të vetëm dhe përdor entropinë për të gjeneruar një sekuencë të rastësishme. marrë nga disa gjeneratorë të palidhur të kontrolluar nga pjesëmarrës të ndryshëm të projektit. Për shkak të natyrës së shpërndarë të projektit, komprometimi ose ngatërrimi i një ose dy burimeve nuk do të çojë në kompromis të numrit përfundimtar të rastësishëm.

Duhet të theksohet se numrat e rastësishëm të gjeneruar klasifikohen si sekuenca të disponueshme publikisht që nuk mund të përdoren për të gjeneruar çelësat e enkriptimit dhe në zonat ku numri i rastësishëm duhet të mbahet sekret. Shërbimi synon të sigurojë numra të rastësishëm që nuk mund të parashikohen paraprakisht, por pasi të krijohen, këta numra bëhen të disponueshëm publikisht, duke përfshirë kontrollin e vlefshmërisë së vlerave të rastësishme të kaluara.

Numrat publikë të rastësishëm gjenerohen çdo 60 sekonda. Secili numër shoqërohet me numrin e vet të sekuencës (rrumbullakët), me anë të të cilit në çdo kohë dhe nga çdo server pjesëmarrës mund të merrni vlerën e krijuar dikur. Numra të tillë të rastësishëm mund të përdoren në sisteme të shpërndara, kriptomonedha dhe zinxhirë bllokues, në të cilat nyje të ndryshme duhet të kenë akses në një gjenerues të vetëm numrash të rastësishëm (për shembull, kur gjenerojnë prova të punës së kryer), si dhe gjatë kryerjes së lotarive të ndryshme dhe për gjenerimin e rastësishëm mostra në procesin e auditimit të zgjedhjeve të kalimit.

Për të punuar me shërbimin dhe për të vendosur nyjet tuaja propozuar mjetet Drand, shkruar në Go dhe lëshuar nën licencën MIT. Drand ekzekutohet në formën e një procesi sfondi që komunikon me gjeneratorët e jashtëm që marrin pjesë në rrjetin e shpërndarë dhe gjeneron kolektivisht një vlerë përmbledhëse të rastësishme. Vlera përmbledhëse gjenerohet duke përdorur metodat kriptografia e pragut и konjugim bilinear. Gjenerimi i një vlere të rastësishme përmbledhëse mund të kryhet në sistemin e përdoruesit pa përfshirjen e grumbulluesve të centralizuar.

Drand mund të përdoret gjithashtu për të ofruar numra privatë të rastësishëm të krijuar në nivel lokal te klientët. Për të transmetuar një numër të rastësishëm, përdoret skema e enkriptimit ECIES, brenda së cilës klienti gjeneron një çelës privat dhe publik. Çelësi publik transferohet në server nga Drand. Numri i rastësishëm është i koduar duke përdorur çelësin publik të dhënë dhe mund të shikohet vetëm nga klienti që zotëron çelësin privat. Për të hyrë te serverët, mund të përdorni mjetin "drand" (për shembull, "drand get public group.toml", ku group.toml është një listë e nyjeve për të anketuar) ose API-në e Uebit (për shembull, mund të përdorni " përkulni https://drand.cloudflare.com /api/public" ose aksesoni nga JavaScript duke përdorur bibliotekën DrandJS). Të dhënat meta të kërkesës dërgohen në format TOML dhe përgjigja kthehet në JSON.

Aktualisht, pesë kompani dhe organizata i janë bashkuar nismës Lidhja e Entropisë dhe po ofrojnë akses në gjeneratorët e tyre të entropisë. Pjesëmarrësit e përfshirë në projekt janë të vendosur në vende të ndryshme dhe përdorin metoda të ndryshme për marrjen e entropisë:

  • shpërthim re, LavaRand, vlera të rastësishme janë duke u formuar bazuar në rrjedhjet e paparashikueshme të lëngjeve llambat lavë, imazhet e të cilave ofrohen si entropi hyrëse për CSPRNG (Cryptographically Secure PseudoRandom Number Generator);
  • EPFL (Ecole Polytechnique Federale de Lausanne), URand,
    përdoret një gjenerator standard lokal /dev/urandom, i cili përdor hyrjen e tastierës, lëvizjen e miut, flukset e trafikut, etj. si burime të entropisë.

  • Universiteti i Kilit, UKili, një rrjet sensorësh sizmikë përdoret si burim entropie, si dhe të dhëna nga transmetimet radiofonike, aktiviteti në Twitter, ndryshimet në zinxhirin e bllokut Ethereum dhe një gjenerator RNG harduerësh i bërë në shtëpi;
  • Kudelski Security, ChaChaRand, ofron një CRNG (Kryptographic Random Number Generator) bazuar në shifrën ChaCha20;
  • Protocol Labs, InterplanetaryRand, të dhënat e rastësishme nxirren nga kapësit e zhurmës dhe kombinohen me Linux PRNG dhe një gjenerator numrash pseudo të rastësishëm të integruar në CPU.

Aktualisht, pjesëmarrësit e pavarur kanë lançuar 8 pika aksesi publik në API, përmes të cilave mund të zbuloni numrin aktual përmbledhës të rastësishëm (për shembull, "curl https://drand.cloudflare.com/api/public") dhe të përcaktoni vlera në një moment të caktuar në të kaluarën (“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

Burimi: opennet.ru

Shto një koment