LibraTool logoLibraTool

Тавлидкунандаи рақами тасодуфӣ-и ройгон

Рақамҳои тасодуфиро дар ҳар диапазон тавлид кунед, рӯйхати рақамҳои беназир созед ё завр партоед. Тасодуфияти криптографӣ амнро истифода мебарад.

Ҳамин ки бор шуд офлайн кор мекунад

🔒 Ҳар рақам аз тасодуфнокии рамзнокшудаи браузери шумо (crypto.getRandomValues) истифода мебарад — воқеан одилона, на Math.random()-и пешбинишаванда. Ҳеҷ чиз ба ҷое фиристода намешавад. Бо вуҷуди ин, ин рақамҳоро барои сохтани калидҳои рамзгузорӣ, токенҳои амниятӣ ё лотареяи танзимшуда/қиморбозӣ истифода набаред, ки манбаъҳои тасодуфии тафтишшуда ва сертификатшудаи сахтафзорро талаб мекунанд.

Бояд аз рӯйхат номи ғолибро интихоб кунед ё танга партоед? Абзори «Партофтани танга, чархи интихоб ва интихобкунандаи рӯйхат»-ро истифода баред →

Чӣ тавр он кор мекунад

Ҳар рақаме ки ин абзор тавлид мекунад аз crypto.getRandomValues меояд — манбаи бехатари криптографии тасодуфии браузер, ҳамон ки барои тавлиди калиди TLS истифода мешавад. Алгоритми намунагирии радкунии дастнавис болои он менишинад, то тарафдории модуло, ки татбиқи содаи Math.random() % range-ро озор медиҳад, аз ҷумла доираҳои васеътар аз 2^32 тавассути арифметикаи BigInt, бартараф кунад.

  1. 1
    Доира ва ҳолати худро танзим кунед
    Байни рақами ягона, рӯйхати дастаӣ (то 1000) ё нардбони бисёрбар (d4 то d100) интихоб кунед. Барои рӯйхатҳо инчунин метавонед қимматҳои беназирро талаб кунед ва ихтиёран натиҷаро болораванда мураттаб кунед.
  2. 2
    crypto.getRandomValues энтропияи хомро мекашад
    Ҳар рақам аз Uint32Array (ё BigUint64Array барои доираҳои васеътар аз 2^32) пуршуда аз ҷониби RNG-и криптографии браузер — на Math.random() — кашида мешавад. Намунагирии радкунӣ сипас қимматҳоеро ки тақсимотро каҷ мекунанд партофта мешавад, бинобар ин ҳар бутун дар доираи шумо эҳтимолияти дуруст баробар дорад.
  3. 3
    Ҳолати қиммати беназир Fisher-Yates ё пайгирии радкуниро истифода мебарад
    Вақте ки ҳолати беназир фаъол аст ва доира ба хотира мегунҷад (то 100,000 қиммат), абзор ҳавзи пурраро моддӣ карда, онро бо Fisher-Yates омехта мекунад. Барои доираҳои хеле калон он ба ҷои он қимматҳоро якто-як-то мекашад ва такрорҳоро мегузаронад — аз хароҷоти хотираи сохтани массиви миллиардвурудӣ канорагирӣ мекунад.
  4. 4
    Натиҷаҳо бо бозхӯрди аниматсионӣ фуруд меоянд ва дар таърихи сессия мемонанд
    Қимматҳои ниҳоӣ бо requestAnimationFrame бо аниматсия ба ҷои худ меафтанд (гардиши мошини бозигар барои рақамҳо, нардбони чархзанда барои ҳолати нардбон), сипас дар сабти таърихи лағжанда пайдо мешаванд, ки ҳар вақт метавонед нусхабардорӣ кунед. Ҳеҷ чиз браузери шуморо тарк намекунад.

Абзорҳои марбут

Саволҳои зуд-зуд додашаванда