Kuidas me arvutit juhusnumbrite generaatorina kasutame

Arvutid genereerivad juhusliku arvu kõike alates krüptograafiast kuni videomängude ja hasartmängudeni. Juhuslikke arve on kahte kategooriat - tõsi juhuslikud arvud ja pseudojuhuslikud arvud. Ja erinevus on oluline krüptimissüsteemide turvalisuse jaoks. Selles artiklis räägime sellest, kuidas me arvutit juhuslike arvude generaatorina kasutame. Alustagem!





See teema on viimasel ajal vaieldavamaks muutunud. Koos paljude inimestega tekib kahtlus, kas Inteli sisseehitatud riistvara juhuslike arvude generaatori kiip on usaldusväärne või mitte. Et mõista, miks see ei pruugi olla usaldusväärne, peate mõistma. See, kuidas juhuslikke numbreid üldse genereeritakse ja milleks neid kasutatakse.



Milleks juhuslikke numbreid kasutatakse | juhuslike arvude generaator

Juhuslikke numbreid on kasutatud mitu tuhat aastat. Olgu selleks mündi klappimine või täringu veeretamine, eesmärk on jätta lõpptulemus juhusliku juhuse hooleks. Juhuslike arvude generaator arvutis on sarnane. Need on katsed saavutada ettearvamatut, juhuslikku tulemust.

Juhuslike arvude generaatorid on väga kasulikud mitmel erineval eesmärgil. Peale ilmsete rakenduste nagu juhuslike arvude genereerimine hasartmängude jaoks või arvutimängus ettearvamatute tulemuste loomine, on juhuslikkus krüptograafia jaoks tõesti oluline.



Krüptograafia jaoks on vaja numbreid, mida ründajad ei oska arvata. Me ei saa kasutada samu numbreid ikka ja jälle. Tahame need numbrid genereerida väga ettearvamatul viisil, nii et ründajad ei oska neid ära arvata. Need juhuslikud numbrid on turvalise krüptimise jaoks olulised. kas krüpteerite oma faile või kasutate lihtsalt HTTPS-i saiti Internetis.



Tõelised juhuslikud numbrid | juhuslike arvude generaator

Võib tekkida küsimus, kuidas arvuti saab juhusliku arvu tegelikult genereerida. Kus see toimub juhuslikkus pärit? Kui see on vaid jupp arvutikoodi, kas pole siis võimalik, et arvuti genereeritud numbrid võivad olla prognoositavad?

Me tavaliselt rühmitame juhusliku arvu genereeritud arvutid kahte tüüpi. See sõltub nende loomise viisist: Tõsi juhuslikud arvud ja pseudojuhuslikud arvud.



ares viisardi repo URL

Et genereerida a tõsi juhuslik arv, mõõdab arvuti teatud tüüpi füüsikalisi nähtusi, mis toimuvad väljaspool arvutit. Näiteks võiks arvuti mõõta aatomi radioaktiivset lagunemist. Kvantteooria kohaselt ei saa kuidagi kindlalt teada, millal radioaktiivne lagunemine toimub. Nii et see on sisuliselt nii puhas juhuslikkus universumist. Ründaja ei oska ennustada, millal toimub radioaktiivne lagunemine. Nii et nad ei teaks juhuslikku väärtust.



Igapäevase näite saamiseks võib arvuti tugineda atmosfäärimürale või kasutada ettearvamatute andmete või entroopia allikana lihtsalt klaviatuuri klahvidele vajutamise täpset aega. Näiteks võib teie arvuti märgata, et vajutasite klahvi täpselt 0,23423523 sekundit pärast kella 14.00. Haarake piisavalt palju nende klahvivajutustega seotud konkreetseid aegu ja teil on entroopia allikas, mida saate kasutada a genereerimiseks tõsi juhuslik arv. Sa ei ole etteaimatav masin. Nii et ründaja ei oska täpselt arvata, millal neid klahve vajutate. / Dev / random seade Linuxis, mis genereerib juhuslikke numbreid, plokid ja tagastab tulemuse alles siis, kui see kogub piisavalt entroopiat, et anda tagasi tõeliselt juhuslik arv.

Pseudorandom arvud juhuslike arvude generaator

Pseudojuhuslikud numbrid on alternatiiviks tõsi juhuslikud arvud. Arvuti võiks juhuslike arvude genereerimiseks kasutada algväärtust ja algoritmi, kuid see on tegelikult ennustatav. Arvuti ei kogu keskkonnast juhuslikke andmeid.

See pole tingimata halb asi igas olukorras. Nagu, kui mängite videomängu. Pole tegelikult vahet, kas selles mängus toimuvad sündmused on põhjustatud tõsi juhuslikud arvud või pseudojuhuslikud numbrid. Teiselt poolt. Kui kasutate krüpteerimist, ei soovi te kasutada pseudorandom numbreid, mida ründaja võiks ära arvata.

Näiteks oletame, et ründaja teab algoritmi ja algväärtust, mida pseudorandomarvugeneraator kasutab. Ja ütleme nii, et krüpteerimisalgoritm saab sellest algoritmist pseudojuhusliku numbri. Ja kasutab seda krüptovõtme genereerimiseks, lisamata juhuslikkust. Kui ründaja teab piisavalt, võiksid nad töötada tagurpidi ja määrata pseudojuhusliku arvu. Krüpteerimisalgoritm peab olema sel juhul valinud, rikkudes krüptimise.

NSA ja Inteli riistvara juhuslike arvude generaator

Arendajate jaoks asjade lihtsustamiseks ja turvaliste juhuslike arvude loomiseks. Inteli kiibid sisaldavad riistvarapõhist juhuslike arvude generaatorit, mida nimetatakse RdRandiks. See kiip kasutab protsessoril entroopiaallikat ja annab tarkvarale juhuslikke numbreid, kui tarkvara seda nõuab.

Siin on probleemiks see, et juhuslike arvude generaator on sisuliselt must kast ja me ei tea, mis selle sees toimub. Kui RdRand sisaldaks NSA tagaukse, saaks valitsus krüptovõtmed murda. See loodi ainult selle juhusliku arvu generaatori edastatud andmetega.

See on tõsine mure. 2013. aasta detsembris eemaldasid FreeBSD arendajad RdRandi kasutamise juhuslikkuse allikana, öeldes, et nad ei saa seda usaldada. [Allikas] RdRandi seadme väljund sisestatakse teise algoritmi, mis lisab täiendava entroopia. See tagab, et juhuslike arvude generaatori mis tahes tagauksed ei oma tähtsust. Linux töötas juba niimoodi, randomiseerides RdRandilt saadud juhuslikke andmeid veelgi, nii et neid ei oleks võimalik ette aimata isegi tagaosa olemasolu korral. [Allikas] Hiljutises AMA-s ( Küsi mult midagi ) Redditis ei vastanud Inteli tegevjuht Brian Krzanich nende probleemidega seotud küsimustele. [Allikas]

Muidugi pole see tõenäoliselt ainult Inteli kiipide probleem. FreeBSD arendajad kutsusid Via kiipe ka nime järgi. See poleemika näitab, miks on juhuslike arvude genereerimine, mis on tõeliselt juhuslikud ja mida ei saa ette ennustada, nii oluline.

Genereerimiseks tõsi juhuslikud arvud, juhuslike arvude generaatorid kogunevad entroopia, või näiliselt juhuslikud andmed neid ümbritsevast füüsilisest maailmast. Juhuslike arvude puhul, mis seda ei tee tõesti peavad olema juhuslikud, võivad nad kasutada lihtsalt algoritmi ja algväärtust.

motorola seadme halduri uusima versiooni allalaadimine

Järeldus

Hästi, see oli kõik inimesed! Loodan, et teile meeldib see juhuslike arvude generaatori artikkel ja leiate, et see on teile kasulik. Andke meile selle kohta tagasisidet. Ka siis, kui soovite sellega seotud täiendavaid päringuid esitada. Seejärel andke meile sellest teada allpool olevast kommentaaride jaotisest. Pöördume teie poole varsti.

Head päeva!

Vaata ka: NSFW: tähendus ja kuidas see tegelikult töötab