Home / Linux / Hogyan generálják a számítógépek a véletlen számokat? (1. rész)

Hogyan generálják a számítógépek a véletlen számokat? (1. rész)

A számítógépek manapság rengeteg különböző célra generálnak minden másodpercben ’véletlenszerű’ számokat. Ilyen célok a titkosítás, a videójátékok elemei és az online szerencsejátékok is (gambling). Általánosságban megkülönböztethetünk ’valódi’ (true) véletlen számokat, és ’ pseudorandom’ (avagy hamis-igaz) véletlen számokat. Ez a különbség kiemelten fontos a biztonsági titkosítási rendszerek számára.

A véletlenszerű számok létrehozásának célja, hogy úgy hozzunk létre számokat, hogy abban ne legyen lekövethető, logikus rendszer. Ezt az elvet használják manapság a titkosítási eljárásokban, avagy egy olyan számrendszert vagy számkódot akarunk létrehozni, melyet a támadó nem tud csak úgy kitalálni vagy megfejteni. Nem használhatjuk tehát ugyanazokat a számokat újra és újra, mindig új számokra lesz szükségünk, hogy a támadók előtt maradjunk. Egy átlagos HTTPS weboldalnak is fejlett véletlen-szám generátorra van manapság szüksége, de ezt használja a Windows is, amikor saját fájljainkat akarjuk titkosítani.

A ’valódi’ véletlen számok

Sokan gondolkoznak azon, hogy vajon egy gép hogyan képes véletlenszerű számok generálására, hiszen az egész csak áramkör, ahol a 0 és 1 értékek változása nyomonkövethető. Ha az egész csak egy kód, akkor értelemszerűen meg lehet fejteni a kódot. A válasz igencsak érdekes.

A valódi véletlen számok létrehozásához a gép mindig elvégez valamilyen külső fizikai jelenséggel kapcsolatos mérést a számítógépen kívül. A számítógép például megmérheti a radioaktív bomlását egy atomnak. A kvantum-elmélet szerint nem lehet tudni pontosan sosem, hogy ez mikor fog bekövetkezni, így ez alapján a véletlen faktor már biztosítva van. A támadó biztos, hogy nem fogja tudni, hogy mikor következik be egy atom bomlása, tehát a véletlen érték forrását nem tudja meghatározni.

Az előbb olvasott módszer már egy kicsit elavult. A gépek manapság olyan dolgokat mérnek, mint az atmoszférikus zaj, vagy akár a billentyűleütések egzakt időpontja, és ezeket használja forrásként megjósolhatatlan számok kreálására. A számítógép például megfigyelheti, hogy pontosan 0.23423523 másodperccel 3 óra után ütötted le az ’F’ billentyűt. Néhány extra mérés, és a gép már el is készít egy ’valódi’ véletlen számot a gyűjtött adatok alapján. A támadónak esélye sincs, hogy kitalálja, hogy mi mikor ütjük le az ’F’ billentyűt, így a véletlen szám alapját nem tudja meghatározni.

A következő részben a ’pseudorandom’ véletlen számokkal fogunk foglalkozni!

Szerző yatoo

Olvastad?

A hatalmas szuperszámítógépek még mindig léteznek. De mire jók?

A szuperszámítógépek nagy felhajtást keltettek a 90-es években, hiszen az USA, Kína és sok más …

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük

A weboldal használatának folytatásával Ön elfogadja a cookie-k használatát További információk

A cookie beállítások ezen a weboldalon "cookie-k engedélyezve" beállításon vannak, hogy a lehető legjobb böngészési élményt nyújthassuk Önnek. Ha Ön folytatja ennek a weboldalnak a használatát anélkül, hogy megváltoztatná a cookie beállításokat, vagy az alábbi "Elfogadom" gombra kattint, akkor Ön hozzájárul a fentiekhez.

Bezárás