Ako používame počítač ako generátor náhodných čísel

generátor náhodných číselPočítače generujú náhodné číslo pre všetko od kryptografie po videohry a hazardné hry. Existujú dve kategórie náhodných čísel - pravda náhodné čísla a pseudonáhodné čísla. A rozdiel je dôležitý pre bezpečnosť šifrovacích systémov. V tomto článku si povieme, ako používame počítač ako generátor náhodných čísel. Poďme začať!





Táto téma je v poslednom čase kontroverznejšia, spolu s mnohými ľuďmi, ktorí sa pýtajú, či je zabudovaný hardvérový generátor náhodných čísel od spoločnosti Intel dôveryhodný alebo nie. Aby ste pochopili, prečo to nemusí byť dôveryhodné, musíte to pochopiť. To, ako sa na prvom mieste generujú náhodné čísla, a na čo sa používajú.



Na čo sa používajú náhodné čísla generátor náhodných čísel

Náhodné čísla sa používajú už mnoho tisíc rokov. Či už je to hádzanie mincou alebo hádzanie kockami, cieľom je nechať konečný výsledok na náhodnej náhode. Generátor náhodných čísel v počítači je podobný. Sú pokusom o dosiahnutie nepredvídateľného náhodného výsledku.

Generátory náhodných čísel sú veľmi užitočné na rôzne účely. Okrem zrejmých aplikácií, ako je generovanie náhodných čísel na účely hazardných hier alebo vytváranie nepredvídateľných výsledkov v počítačových hrách, je náhodnosť pre kryptografiu skutočne dôležitá.



Kryptografia vyžaduje čísla, ktoré útočníci nedokážu uhádnuť. Nemôžeme iba stále používať rovnaké čísla. Chceme tieto čísla generovať veľmi nepredvídateľným spôsobom, aby ich útočníci nemohli odhadnúť. Tieto náhodné čísla sú dôležité pre bezpečné šifrovanie. či už šifrujete svoje vlastné súbory alebo iba používate stránku HTTPS na internete.



Skutočné náhodné čísla generátor náhodných čísel

Možno by vás zaujímalo, ako môže počítač v skutočnosti generovať náhodné číslo. Kde sa to deje? náhodnosť pochádzať z? Ak je to iba kúsok počítačového kódu, nie je možné, aby čísla, ktoré počítač generuje, boli predvídateľné?

Počítače generované náhodným číslom zvyčajne zoskupujeme do dvoch typov. Závisí to od spôsobu ich generovania: Pravdaže náhodné čísla a pseudonáhodné čísla.



zavesenie alebo zrútenie aplikácií v systéme Windows 10

Na vygenerovanie a pravda náhodné číslo, počítač zmeria určitý druh fyzikálneho javu, ktorý sa odohráva mimo počítača. Napríklad, počítač mohol merať rádioaktívny rozpad atómu. Podľa kvantovej teórie neexistuje žiadny spôsob, ako s istotou vedieť, kedy dôjde k rádioaktívnemu rozpadu. Toto je teda v podstate čistá náhodnosť z vesmíru. Útočník by nebol schopný predvídať, kedy dôjde k rádioaktívnemu rozpadu. Takže by nepoznali náhodnú hodnotu.



Ako príklad pre každý deň by sa počítač mohol spoliehať na atmosférický hluk alebo jednoducho použiť presný čas stlačenia klávesov na klávesnici ako zdroj nepredvídateľných údajov alebo entropie. Napríklad si váš počítač môže všimnúť, že ste stlačili klávesu presne o 0,234 353 sekundy po 14:00. Dosiahnite dostatok konkrétnych časov spojených s týmito stlačeniami kláves a získate zdroj entropie, ktorý môžete použiť na vygenerovanie pravda náhodné číslo. Nie ste predvídateľný stroj. Útočník teda nemôže odhadnúť presný okamih, kedy stlačíte tieto klávesy. Zariadenie / dev / random v systéme Linux, ktoré generuje náhodné čísla, blokov a nevráti výsledok, kým nezhromaždí dostatok entropie na vrátenie skutočne náhodného čísla.

Pseudonáhodné čísla generátor náhodných čísel

Alternatívou k sú pseudonáhodné čísla pravda náhodné čísla. Počítač mohol pomocou počiatočnej hodnoty a algoritmu vygenerovať čísla, ktoré sa zdajú byť náhodné, ale to je v skutočnosti predvídateľné. Počítač nezhromažďuje žiadne náhodné údaje z prostredia.

To nemusí byť v každej situácii nevyhnutne zlá vec. Napríklad, ak hráte videohru. Nezáleží na tom, či sú udalosti, ktoré sa v tejto hre vyskytnú, spôsobené pravda náhodné čísla alebo pseudonáhodné čísla. Na druhej strane. Ak používate šifrovanie, nechcete používať pseudonáhodné čísla, ktoré by útočník mohol uhádnuť.

Povedzme napríklad, že útočník pozná algoritmus a počiatočnú hodnotu, ktorú používa generátor pseudonáhodných čísel. Povedzme, že šifrovací algoritmus získa z tohto algoritmu pseudonáhodné číslo. A používa ho na generovanie šifrovacieho kľúča bez pridania akejkoľvek ďalšej náhodnosti. Ak útočník vie dosť, mohol by postupovať pozadu a určiť pseudonáhodné číslo. Šifrovací algoritmus musel v takom prípade zvoliť porušenie šifrovania.

NSA a generátor náhodných čísel hardvéru spoločnosti Intel

Uľahčiť vývojárom veci a pomôcť generovať bezpečné náhodné čísla. Čipy Intel obsahujú hardvérový generátor náhodných čísel známy ako RdRand. Tento čip využíva zdroj entropie na procesore a dáva softvéru náhodné čísla, keď ich softvér vyžaduje.

Problém je v tom, že generátor náhodných čísel je v podstate čierna skrinka a nevieme, čo sa v ňom deje. Keby RdRand obsahoval zadné vrátka NSA, vláda by bola schopná prelomiť šifrovacie kľúče. To bolo vygenerované iba s údajmi dodanými týmto generátorom náhodných čísel.

Je to vážna obava. V decembri 2013 vývojári FreeBSD odstránili podporu pre priame použitie RdRand ako zdroja náhodnosti s tým, že mu nemôžu dôverovať. [Zdroj] Výstup zariadenia RdRand by sa vložil do iného algoritmu, ktorý dodáva ďalšiu entropiu. To zaisťuje, že na zadných vrátkach v generátore náhodných čísel nezáleží. Linux už takýmto spôsobom fungoval, pričom ďalej náhodil náhodné údaje pochádzajúce z RdRandu, aby neboli predvídateľné ani v prípade, že existuje zadný vrátok. [Zdroj] V nedávnom AMA ( Spýtaj sa čokoľvek ) v spoločnosti Reddit, výkonný riaditeľ spoločnosti Intel Brian Krzanich neodpovedal na otázky týkajúce sa týchto obáv. [Zdroj]

Samozrejme to pravdepodobne nie je problém iba s čipmi Intel. Vývojári FreeBSD tiež pomenovali čipy Via. Táto polemika ukazuje, prečo je také dôležité generovať náhodné čísla, ktoré sú skutočne náhodné a nie sú predvídateľné.

Generovať pravda náhodné čísla, zhromažďujú sa generátory náhodných čísel entropia, alebo zdanlivo náhodné údaje z fyzického sveta okolo nich. Pre náhodné čísla, ktoré nie naozaj musia byť náhodné, môžu použiť iba algoritmus a počiatočnú hodnotu.

Záver

Dobre, to bolo všetko! Dúfam, že sa vám tento článok o generátore náhodných čísel páči a je pre vás užitočný. Dajte nám o tom spätnú väzbu. Tiež, ak sa chcete spýtať na ďalšie otázky týkajúce sa tohto miesta. Dajte nám potom vedieť v sekcii komentárov nižšie. Čoskoro sa ozveme.

Prajem vám skvelý deň!

Pozri tiež: NSFW: Význam a ako to v skutočnosti funguje

najlepšie launchery pre android 2017