Walang nahanap na resulta
Wala kaming mahanap para sa terminong iyan sa ngayon, subukang maghanap ng iba pa.
Mabilis na bumuo ng random numbers gamit ang aming Number Generator. Magtakda ng saklaw, payagan o iwasan ang duplicates, at madaling ayusin ang mga resulta.
Mga random na numero
48, 9, 49, 11, 17, 22, 16, 37, 45, 41, 4, 36, 43, 10, 28, 27, 47, 25, 21, 33
Nagkaroon ng error sa iyong kalkulasyon.
Ang random number generator (RNG) o generator ng random na numero ay isang sistema o proseso na idinisenyo upang bumuo ng ganap na hindi mahuhulaang numero tuwing ito ay pinagagana. Ayon sa kahulugan nito, imposibleng matukoy ang isang pattern o mahulaan ang mga susunod na output base sa mga numerong nabuo na. Ang mga random na halagang ito ay maaaring mabuo gamit ang mga advanced na mathematical algorithm o mga espesyal na hardware device.
Ang pagbuo ng mga random na numero ay mahalaga para sa iba't ibang gawain, mula sa pang-araw-araw na software application hanggang sa mga kumplikadong laro sa computer. Halimbawa, gumagamit ang mga website ng mga random number generator upang dinamikong magpakita ng mga random na banner ad o mag-shuffle ng nilalaman. Sa larangan ng cybersecurity, ang cryptography ay lubos na umaasa sa mga random na numero upang lumikha ng mga natatangi at napakaligtas na cipher at encryption key.
Sa pangkalahatan, ginagamit ang pagbuo ng random na numero para gumawa ng mga captcha, mag-encrypt ng mga sensitibong data, bumuo ng mga cryptographic salt para sa ligtas na pag-imbak ng password, at magpatakbo ng mga random password generator. Ito rin ang nagsisilbing gulugod ng mga shuffling algorithm para sa mga online casino card game, awtomatikong paggawa ng desisyon, statistical sampling, at mga computer simulation.
Sa industriya ng gaming, mahalaga ang papel ng mga random number generator algorithm sa pagpapanatiling bago at hindi mahuhulaan ang daloy ng laro. Kahit na ulitin mo ang parehong level, tinitiyak ng RNG na hindi magiging magkatulad ang iyong karanasan. Habang ang pangunahing mapa o misyon ay maaaring hindi magbago, ang pagiging random ang nagdidikta sa dalas at lokasyon ng paglitaw ng mga kalaban, dinamikong pagbabago ng panahon, at ang paglitaw ng mga biglaang balakid. Ang patong na ito ng hindi pagiging mahuhulaan ang nagpapanatiling kapana-panabik at paulit-ulit na malalaro ang mga laro.
Tingnan ang sumusunod na sequence ng mga numero: 1 , 2 , 3 , 4 , 5. Talaga bang random ito?
Sa statistics, ang isang random na variable ay nagkakaroon ng tiyak na halaga bilang resulta ng isang independent na pagsubok. Ang pinakamahalaga, imposibleng tumpak na mahulaan ang paglabas ng isang partikular na halaga bago pa man ito aktwal na lumitaw.
Ipagpalagay natin na ang sequence sa itaas ay nabuo sa pamamagitan lamang ng pag-type sa itaas na hilera ng mga numero sa isang standard na keyboard. Sa kontekstong ito, ang kombinasyon ay ganap na hindi random. Bakit? Dahil pagkatapos ng numerong 5, ang susunod na numero, na 6, ay mahuhulaan nang may halos ganap na katiyakan.
Itinuturing lamang na tunay na random ang isang sequence kung walang kahit anong dependency o pag-asa ang mga indibidwal na simbolo o numero nito sa isa't isa.
Ang pangunahing kondisyon para sa isang patas at gumaganang random number generator ay dapat magkaroon ang bawat posibleng numero ng pantay-pantay na posibilidad na mapili. Tinitiyak nito ang buong kalayaan (independence); ang kasalukuyang resulta ay hindi naiimpluwensyahan ng mga numerong nabuo bago rito, at hindi rin nito maiimpluwensyahan ang mga numerong mabubuo pagkatapos nito.
Halimbawa, kapag nagpagulong ka ng isang patas na six-sided na dice sa unang pagkakataon, anumang numero mula 1 hanggang 6 ay may pantay na posibilidad na lumabas. Anuman ang iyong unang naging resulta, kapag pinagulong mo ang dice sa ikalawa, ikasandaan, o ikasanlibong pagkakataon, ang iyong tsansa na makuha ang eksaktong numerong iyon ay mananatiling ganap na hindi nagbabago.
Para sa marami, ang walang katapusang sequence ng mga digit sa mathematical constant na Pi (π) ay tila ganap na random at hindi nauulit. Ipagpalagay na may isang hypothetical na generator na umaasa sa bit representation ng Pi, simula sa isang hindi isiniwalat na decimal point. Ang ganitong generator ay maaaring magmukhang hindi mahuhulaan sa karaniwang user at maaari pa ngang pumasa sa ilang statistical randomness test. Gayunpaman, ang pag-asa sa Pi para sa cryptography ay lubhang mapanganib. Kung matuklasan ng isang attacker ang partikular na bahagi ng Pi na ginagamit, madali nilang mahuhulaan ang lahat ng nauna at susunod na digit, na agad na isasakripisyo ang seguridad ng sistema.
Upang matiyak ang matataas na pamantayan sa seguridad, ipinakilala ng U.S. National Institute of Standards and Technology (NIST) ang "Statistical Test Suite for Random and Pseudorandom Number Generators for Cryptographic Applications." Kasama sa matibay na suite na ito ang 15 natatanging statistical test na idinisenyo upang mathematically na sukatin ang tunay na pagiging random ng mga bit na ginagawa ng parehong hardware at software generators.
Sa pangkalahatan, may dalawang pangunahing uri ng random number generators: ang True Random Number Generators (TRNG) at Pseudorandom Number Generators (PRNG). Habang ang mga TRNG ay umaasa sa mga hindi mahuhulaang pisikal na phenomenon upang bumuo ng mga numero, ang mga PRNG ay ganap na umaasa sa mga mathematical algorithm.
Ang isang True Random Number Generator (TRNG) ay umaasa sa mga espesyal na hardware device na kumukuha ng mga microscopic na pisikal na proseso upang bumuo ng mga random na numero. Ang pisikal na pagiging hindi mahuhulaan na ito ay tinatawag na entropy—ang matematikal na sukat ng puro at walang-halong kaguluhan.
Kumukuha ng entropy ang mga true random number generator mula sa mga napakahirap hulaang pisikal na phenomenon, tulad ng:
Dahil sa kanilang ganap na pagiging hindi mahuhulaan, ang mga True RNG ay ang itinuturing na gold standard para sa mga high-security na aplikasyon, ligtas na komunikasyon, at advanced na data encryption sa buong mundo.
Gumagamit ang mga hardware-based system na ito ng mga external na pinagmumulan ng entropy upang mangalap ng mga hindi mahuhulaang data, na bumubuo sa paunang lihim na halaga (kilala bilang "seed") na kailangan upang ligtas na makabuo ng secure na mga random na numero.
Sa kabilang banda, ang Pseudorandom Number Generator (PRNG) algorithm ay kadalasang ginagamit sa mga sitwasyon kung saan ang mahigpit na cryptographic na seguridad ay hindi pangunahing alalahanin. Sa halip, ginagamit ang ganitong uri ng randomness upang maiwasan ang pag-uulit at lumikha ng mga nakaka-engganyong karanasan ng user. Ang pagpapatupad ng PRNG technology ay higit na mas mabilis at mas abot-kaya dahil hindi ito nangangailangan ng external na hardware at madaling isama sa standard na program code. Bagaman ang output ay ganap na deterministic at nakabatay sa isang nakatakdang algorithm, ito ay perpektong akma para sa mga video game, simulation, at mga pangunahing software application.
Umaasa ang isang PRNG sa iisang paunang seed value upang mathematically na makuha ang pseudo-random sequence nito. Sa kabilang banda, ang TRNG ay patuloy na gumagawa ng mga high-quality na random na numero sa pamamagitan ng patuloy na pagkuha ng bagong entropy mula sa mga hindi mahuhulaang pisikal na source.
May mga partikular na kahinaan ang pseudorandom number generation. Epektibo lamang ang mga algorithm na ito dahil ang kanilang mga output ay mukhang random sa mga hindi sanay na mata. Gayunpaman, kung matuklasan ng isang tao ang inisyal na seed value na ginamit para sa isang partikular na PRNG sequence, maaari niyang perpektong mahulaan ang bawat susunod na numero na mabubuo.
Ang mga "Speedrunner"—mga mahilig sa laro na naglalayong tapusin ang mga video game nang pinakamabilis hangga't maaari—ay madalas na sinasamantala ang mismong kahinaang ito sa isang teknik na tinatawag na "RNG manipulation." Sa pamamagitan ng reverse-engineering sa seed, mapipilit nila ang laro na kumilos sa paraang mahuhulaan, na nakakatipid ng mahalagang oras. Sa paglalaro, ang manipulasyong ito ay hindi nakakapinsala at bihirang magdulot ng mga kritikal na isyu.
Subalit, sa mundo ng cybersecurity, ang kakayahang mahulaan ang mga random na numero ay mapaminsala—lalo na kapag gumagawa ng mga cryptographic security key.
Kung matuklasan ng isang malisyosong attacker ang inisyal na seed value na ginamit upang bumuo ng RSA keys para sa mga TLS certificate, maaari nilang i-decrypt ang secure na network traffic. Ibig sabihin, madali nilang maa-intercept ang mga password, pinansyal na data, at iba pang lubhang sensitibong personal na impormasyon na ipinapadala sa internet.
Sa mga napakadelikadong senaryong ito, isang pambihirang secure na paraan ng pagkuha ng mga random na numero—tulad ng isang True Random Number Generator—ay talagang kinakailangan.
Nag-aalok ang Google ng sarili nitong built-in na tool para sa pagbuo ng random na numero na pinapagana ng JavaScript. Ang madaling ma-access na tool na ito ay lubhang kapaki-pakinabang para sa mabibilis at pang-araw-araw na gawain, tulad ng pagpapagulong ng virtual na dice habang naglalaro ng mga board game kasama ang mga kaibigan at pamilya. Madali mong maa-access ang native PRNG na ito sa pamamagitan lamang ng pag-type ng search query na "random number generator" nang direkta sa Google.
Isa sa mga pinakaluma at pinakakilalang algorithm para sa mga pseudorandom number generator ay ang Linear Congruential Method (LCM) o Linear Congruential Generator (LCG). Ipinanukala ni Derrick Henry Lehmer noong 1949, ang algorithm na ito ay perpektong akma para sa mga simple at hindi security-critical na aplikasyon, bagaman wala itong anumang cryptographic strength.
Upang matagumpay na makabuo ng isang sequence ng mga numero gamit ang mathematical model na ito, dapat mong tukuyin ang apat na pangunahing parameter:
m > 0, modulo
0 ≤ a ≤ m, ang multiplier
0 ≤ c ≤ m, ang increment
0 ≤ X₀ ≤ m, ang inisyal na numero
Ang mismong pseudorandom number sequence ay kinakalkula nang paulit-ulit gamit ang sumusunod na mathematical formula:
Xₙ₊₁ = (aXₙ + c) mod m
Napakahalagang tandaan na ang pagiging epektibo at ang nakikitang randomness ng paraang ito ay ganap na nakadepende sa maingat na pagpili ng mga inisyal na parameter na ito.
Halimbawa, kung gagamitin natin ang sumusunod na hindi maayos na napiling set ng parameter:
X₀ = 3, a = 4, c = 5, m = 6
makakabuo tayo ng isang paulit-ulit at maikling sequence ng
3, 5, 1, 3, 5, 1
na malinaw na hindi mukhang random.
Subalit, kung papalitan natin ang mga parameter sa mas malaki at mas maingat na piniling set:
X₀ = 2, a = 85, c = 507, m = 1356
Ang distribusyon ng mga resulta ay agad na magiging mas hindi mahuhulaan at pantay-pantay. Malinaw nitong inilalarawan kung bakit dapat mong piliin ang mga seed number para sa algorithmic generator na ito nang may labis na pag-iingat:
2, 677, 1100, 443, 194, 725, 1112, 107, 110, 365, 344, 1271, 62, 353, 680, 1355, 422, 1121, 872, 47, 434, 785, 788, 1043, 1022, 593, 740, 1031, 2, 677, 1100, 443, 194, 725, 1112, 107, 110, 365, 344, 1271, 62, 353, 680, 1355, 422, 1121, 872, 47, 434, 785, 788, 1043, 1022, 593, 740, 1031, 2, 677, 1100, 443, 194, 725, 1112, 107, 110, 365...
Kahit na ang isang mahusay na na-optimize na Linear Congruential Generator ay kayang gumawa ng statistically acceptable na pseudorandom sequence, ito ay pangunahing mahina. Dahil ang mga LCG ay natural na nahuhulaan kung ang mga parameter ay alam o napansin, kulang ang mga ito sa tibay na cryptographic at hindi kailanman dapat gamitin para protektahan ang mga sensitibong data.
Ang mga generator na umaasa sa mga linear congruential method ay unang matagumpay na na-crack ni Jim Reeds noong 1977, at sumunod si Joan Boyar noong 1982 (na nakompromiso rin ang mga quadratic at cubic generator). Ang kanilang pananaliksik ay tiyak na nagpatunay na ang mga congruential algorithm ay walang silbi para sa modernong cryptography. Gayunpaman, sa kabila ng mga depektong ito sa seguridad, ang mga LCG ay nananatiling napakahalaga para sa mga non-cryptographic na aplikasyon tulad ng mga scientific simulation at statistical modeling. Ang mga ito ay computationally efficient at patuloy na nagpapakita ng mahusay na statistical performance sa iba't ibang empirical na pagsubok.
Gumagamit ang QRBG121 ng tunay na quantum randomness. Ang device ay ganap na umaasa sa quantum physical na proseso ng paglabas ng mga photon sa loob ng mga semiconductor at ang kasunod na pag-detect sa bawat indibidwal na photon. Dahil ang mga photon ay inilalabas at nade-detect nang ganap na random at walang kinalaman sa isa't isa, ang tumpak na impormasyon sa oras ng mga microscopic na kaganapang ito ay mapagkakatiwalaang mako-convert sa napakaligtas na mga random na bit.
Tanyag na gumagamit ang punong tanggapan ng Cloudflare sa San Francisco ng isang pader ng mga klasikong "lava lamp" bilang isang napakaepektibong pinagmumulan ng entropy. Ang isang tradisyonal na lava lamp ay binubuo ng isang salamin na sisidlan na puno ng transparent na langis at translucent na wax (paraffin). Natural na mas siksik (denser) ang wax kaysa sa langis, ngunit habang unti-unti itong pinapainit ng bumbilya sa ibaba, nababawasan ang density nito, umaangat, lumalamig, at lumulubog sa isang tuluy-tuloy at nakakabighaning siklo.
Dahil ang fluid dynamics ay labis na magulo (chaotic), halos imposibleng mahulaan ang patuloy na paggalaw ng mga likido. Patuloy na kumukuha ng mga snapshot ang ilang high-resolution na camera mula sa nagbabagong pader na ito ng mga lava lamp. Ang pixel data mula sa napakagulong (chaotic) mga snapshot na ito ay inilalagay sa isang computer, na nagko-convert sa visual noise para maging secure na mga encryption key.
Gumagamit din ng magagandang pisikal na entropy source ang iba pang internasyonal na opisina ng Cloudflare. Sa London, kinukuhanan ng mga camera ang hindi mahuhulaang paggalaw ng isang three-pendulum chaotic system. Samantala, umaasa naman ang opisina sa Singapore sa isang Geiger counter upang sukatin ang radioactive decay ng isang hindi nakakapinsalang piraso ng uranium. Nagsisilbing perpektong "data source" ang uranium dahil ang eksaktong oras kung kailan magde-decay ang sinumang solong radioactive atom ay natural na isang random na pangyayari sa quantum mechanics.
Ang HotBits ay isang online na serbisyo na nagbibigay ng mga tunay na random na numero na binubuo ng isang hardware na Geiger counter na nagrerehistro ng background na ionizing radiation. Maaari lamang punan ng mga user ang isang request form sa HotBits website, tukuyin ang gusto nilang dami ng random na byte, at pumili ng delivery method. Upang matiyak ang pinakamataas na cryptographic na seguridad, sa sandaling maihatid na ang hinihinging random na mga numero sa user, permanenteng binubura ang mga ito mula sa sistema ng HotBits.
Salungat sa Latin na pinagmulan nito ("vacuus" na nangangahulugang walang laman), ang isang physical vacuum ay hindi kailanman ganap na walang laman. Pinamamahalaan ng Heisenberg uncertainty principle ng quantum mechanics, ang vacuum ay isang magulong (chaotic) espasyo kung saan ang mga subatomic na "virtual particle" ay patuloy na lumilitaw at nawawala.
Sa pamamagitan ng pagsasamantala sa phenomenon na ito, ang mga Canadian na physicist ay lumikha ng isang napakabilis at structurally elegant na random number generator na ganap na nakabatay sa mga vacuum fluctuation. Gumagamit ang sistema ng isang high-frequency pulsed laser, isang siksik na refractive medium (tulad ng diyamante), at isang napakasensitibong photon detector. Habang dumaraan ang mga laser pulse sa diyamante, ang mga partikular na katangian ng bawat pulse ay natatanging binabago ng mga hindi mahuhulaang quantum vacuum fluctuation na nararanasan sa daanan ng mga photon.
Habang kumakalat ang radiation, lumalabas ang mga natatanging spectral line. Dahil nakaugat ang mga nagaganap na vacuum fluctuation sa puro quantum na kaguluhan, ang mga katangian ng mga spectral line na ito ay nagbabago sa ganap na hindi mahuhulaan at hindi mauulit na mga paraan sa bawat pagkakataon—na nagreresulta sa ganap na randomness.
Ang makabagong pamamaraang ito ay magandang pinagsasama ang microscopic na pagiging compact ng physical na bagay at ang hindi mahuhulaang thermal noise.
Matagumpay na nakabuo ang mga mananaliksik ng isang True Random Number Generator gamit ang isang static random-access memory (SRAM) cell. Ang nagpapabago rito ay ang memory cell ay inilimbag gamit ang mga espesyal na electronic ink na tinimpla sa pamamagitan ng mga semiconducting carbon nanotube. Kinukuha ng physical system ang mga ambient na pagbabago sa thermal noise sa loob ng mga nanotube na ito upang tuloy-tuloy na bumuo ng mga tunay na random na bit.
Dahil maaaring i-print nang direkta ang carbon nanotube generator na ito sa mga flexible na plastic substrate, nagbubukas ito ng pintuan para sa malawakang inobasyon. Maaari itong madaling isama sa pinaliit na flexible electronics, mga health-tracking na wearable sensor, murang disposable security label, at maging sa mga smart na damit.
Nagmungkahi ang Electronic Frontier Foundation (EFF) ng isang napakasimple at low-tech na paraan upang lumikha ng labis na ligtas na cryptographic na password gamit ang isang pisikal na TRNG: ang karaniwang six-sided dice.
Halimbawa, pinapagulong mo ang limang dice nang sabay-sabay at itinala mo ang mga lumabas na numero mula kaliwa pakanan. Kung tumapat ang mga dice sa 6, 3, 1, 3, at 1, ang huli mong makukuha ay 63131. Sunod, kumonsulta sa opisyal na EFF Diceware word list sa kanilang website upang hanapin ang partikular na salitang itinalaga sa 63131. Sa pagkakataong ito, ang salita ay "turbofan."
Uulitin mo ang buong prosesong ito nang ilang beses—kadalasan ay lima o anim—upang lumikha ng isang ligtas na "passphrase" na binubuo ng ilang random na salita. Ang huling resulta ay maaaring maging katulad nito: "turbofan purge unfitting try pruning." Dahil nabuo ang parirala ng puro pisikal na entropy, ito ay matibay sa matematika (mathematically secure) laban sa mga brute-force attack. Bukod pa rito, gamit ang mga pangunahing mnemonic memory technique, ang mga nakapupukaw na random na pariralang ito ay nakakagulat na madaling tandaan para sa mga tao.
Sa isang kahanga-hangang pagpapakita ng katalinuhan, ipinakita ng mga mananaliksik sa University of Geneva noong 2014 na ang isang pang-araw-araw na consumer device ay maaaring gumana bilang Quantum Random Number Generator (QRNG), partikular sa pamamagitan ng paggamit ng built-in na camera ng isang standard na Nokia N9 smartphone.
Ang konsepto ay nakakagulat na matalino: ang camera sensor ng smartphone ay ginamit para bilangin ang eksaktong dami ng mga light particle (photon) na tumatama sa bawat indibidwal na pixel, gamit ang isang standard na LED bilang pangunahing pinagmumulan ng liwanag. Sa loob lamang ng isang microsecond, ang bawat pixel sa 8-megapixel sensor ay nakatukoy ng humigit-kumulang 400 na photon. Sa pamamagitan ng sabay-sabay na pagkuha sa napakalaking dami ng hindi mahuhulaang quantum light data na ito sa milyon-milyong pixel, matagumpay na nakuha ng mga mananaliksik ang isang siksik at napakaligtas na sequence ng mga purong random na numero.