Cloudflare воведе дистрибуиран генератор на случаен број

Компанијата Cloudflare презентирани услуга Лига на ентропија, за да се обезбеди чие функционирање е формиран конзорциум од неколку организации заинтересирани за обезбедување висококвалитетни случајни броеви. За разлика од постоечките централизирани системи, Лигата на ентропијата не се потпира на еден извор и користи ентропија за да генерира случајна секвенца. примени од неколку неповрзани генератори контролирани од различни учесници во проектот. Поради дистрибуираната природа на проектот, компромитирањето или мешањето на еден или два од изворите нема да доведе до компромис на конечниот случаен број.

Треба да се напомене дека генерираните случајни броеви се класифицирани како јавно достапни секвенци кои не можат да се користат за генерирање клучеви за шифрирање и во области каде што случајниот број мора да се чува во тајност. Услугата има за цел да обезбеди случајни броеви кои не можат да се предвидат однапред, но откако ќе се генерираат, овие броеви стануваат јавно достапни, вклучително и за проверка на валидноста на минатите случајни вредности.

Јавните случајни броеви се генерираат на секои 60 секунди. Секој број е поврзан со свој секвенционен број (круг), со кој во секое време и од кој било сервер учесник можете да ја добиете еднаш генерираната вредност. Ваквите случајни броеви може да се користат во дистрибуирани системи, криптовалути и блокчејн, во кои различни јазли мора да имаат пристап до еден генератор на случаен број (на пример, кога се генерира доказ за завршената работа), како и при спроведување на разни лотарии и за генерирање случајни примероци во процесот на ревизија на премин избори.

За да работите со услугата и да ги распоредите вашите сопствени јазли предложи алатки Дранд, напишана во Go и објавена под лиценцата МИТ. Drand работи во форма на заднински процес кој комуницира со надворешни генератори кои учествуваат во дистрибуираната мрежа и колективно генерира збирна случајна вредност. Збирната вредност се генерира со користење на методите криптографија на прагот и биланеарна конјугација. Генерирањето на збирна случајна вредност може да се изврши на системот на корисникот без вклучување на централизирани агрегатори.

Drand може да се користи и за доставување локално генерирани приватни случајни броеви до клиентите. За пренос на случаен број, се користи шемата за шифрирање ECIES, во рамките на која клиентот генерира приватен и јавен клуч. Јавниот клуч се пренесува на серверот од Drand. Случајниот број е шифриран со користење на дадениот јавен клуч и може да го гледа само клиентот кој го поседува приватниот клуч. За да пристапите до серверите, можете да ја користите алатката „drand“ (на пример, „drand get public group.toml“, каде што group.toml е листа на јазли за анкета) или Web API (на пример, можете да користите „ завиткајте https://drand.cloudflare.com /api/public“ или пристапете од JavaScript користејќи ја библиотеката DrandJS). Метаподатоците на барањето се испраќаат во формат TOML, а одговорот се враќа во JSON.

Во моментов, пет компании и организации се приклучија на иницијативата Лига на ентропија и обезбедуваат пристап до нивните генератори на ентропија. Учесниците вклучени во проектот се лоцирани во различни земји и користат различни методи за добивање ентропија:

  • облаци, ЛаваРанд, случајни вредности се формираат врз основа на непредвидливи проток на течност во лава светилки, чии слики се обезбедени како влезна ентропија за CSPRNG (Криптографски безбеден генератор на псевдослучајни броеви);
  • EPFL (Ecole Polytechnique Federale de Lausanne), УРанд,
    се користи стандарден локален генератор /dev/urandom, кој користи влез од тастатура, движење на глувчето, сообраќајни текови итн. како извори на ентропија.

  • Универзитетот во Чиле, УЧиле, мрежа од сеизмички сензори се користи како извор на ентропија, како и податоци од радио преноси, активност на Twitter, промени во блокчејнот Ethereum и домашен хардверски генератор RNG;
  • Kudelski Security, ChaChaRand, обезбедува CRNG (Cryptographic Random Number Generator) базиран на шифрата ChaCha20;
  • Protocol Labs, InterplanetaryRand, случајните податоци се извлекуваат од фаќачите на шум и се комбинираат со Linux PRNG и генератор на псевдо-случајни броеви вграден во процесорот.

Во моментов, независните учесници започнаа 8 јавни точки за пристап до API, преку кои можете да го дознаете и тековниот збирен случаен број (на пример, „curl https://drand.cloudflare.com/api/public“) и да го одредите вредност во одреден момент во минатото („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

Извор: opennet.ru

Додадете коментар