nl.phhsnews.com


nl.phhsnews.com / Hoe computers willekeurige getallen genereren

Hoe computers willekeurige getallen genereren


Computers genereren een willekeurig nummer voor alles, van cryptografie tot videogames en gokken. Er zijn twee categorieën van willekeurige getallen - "echte" willekeurige getallen en pseudowillekeurige getallen - en het verschil is belangrijk voor de beveiliging van versleutelingssystemen.

Computers kunnen echt willekeurige getallen genereren door bepaalde externe gegevens te observeren, zoals muisbewegingen of ventilatorruis , wat niet voorspelbaar is en er gegevens van maken. Dit staat bekend als entropie. Op andere momenten genereren ze "pseudorandom" -nummers door een algoritme te gebruiken, zodat de resultaten willekeurig lijken, ook al zijn ze dat niet.

Dit onderwerp is recent controversiëler geworden, waarbij veel mensen zich afvroegen of Intel's ingebouwde hardware-generator voor willekeurige getallen chip is betrouwbaar. Om te begrijpen waarom het misschien niet betrouwbaar is, moet u eerst begrijpen hoe willekeurige getallen worden genereeerd en waarvoor ze worden gebruikt.

Welke willekeurige nummers worden gebruikt voor

willekeurige getallen zijn gebruikt voor vele duizenden jaren. Of het nu gaat om een ​​munt slaan of een dobbelsteen gooien, het doel is om het eindresultaat willekeurig te laten. Willekeurige nummergeneratoren in een computer zijn vergelijkbaar - ze zijn een poging om een ​​onvoorspelbaar, willekeurig resultaat te bereiken.

GERELATEERD: Wat is codering en hoe werkt het?

Willekeurige nummergeneratoren zijn nuttig voor veel verschillende doelen. Naast voor de hand liggende toepassingen zoals het genereren van willekeurige getallen met het oog op gokken of het maken van onvoorspelbare resultaten in een computerspel, is willekeur van belang voor cryptografie.

Cryptografie vereist getallen die aanvallers niet kunnen raden. We kunnen niet dezelfde nummers steeds opnieuw gebruiken. We willen deze nummers op een zeer onvoorspelbare manier genereren, dus aanvallers kunnen ze niet raden. Deze willekeurige getallen zijn essentieel voor veilige codering, of u nu uw eigen bestanden codeert of alleen een HTTPS website op internet gebruikt.

Ware willekeurige getallen

U vraagt ​​zich misschien af ​​hoe een computer kan eigenlijk een willekeurig nummer genereren. Waar komt deze "willekeur" vandaan? Als het gewoon een stukje computercode is, is het dan niet mogelijk dat de nummers die de computer genereert, voorspelbaar zijn?

We genereren de computers met willekeurige getallen in twee typen, afhankelijk van hoe ze worden gegenereerd: "True" willekeurige getallen en pseudo-willekeurige getallen.

Om een ​​"echt" willekeurig getal te genereren, meet de computer een soort fysiek fenomeen dat buiten de computer plaatsvindt. De computer kan bijvoorbeeld het radioactieve verval van een atoom meten. Volgens de kwantumtheorie is er geen manier om zeker te weten wanneer radioactief verval zal plaatsvinden, dus dit is in wezen "pure willekeur" van het universum. Een aanvaller zou niet kunnen voorspellen wanneer radioactief verval zou plaatsvinden, dus zouden ze de willekeurige waarde niet weten.

Voor een meer dagelijks voorbeeld kan de computer vertrouwen op atmosferische ruis of gewoon de exacte tijd dat u toetsen op uw toetsenbord indrukt als een bron van onvoorspelbare gegevens of entropie. Uw computer kan bijvoorbeeld merken dat u na 2 uur op een toets drukt op exact 0,23423523 seconden ... Grijp genoeg van de specifieke tijden die zijn gekoppeld aan deze toetsaanslagen en u hebt een bron van entropie die u kunt gebruiken om een ​​"echte" willekeurige te genereren aantal. Je bent geen voorspelbare machine, dus een aanvaller kan niet precies raden wanneer je op deze toetsen drukt. Het / dev / random-apparaat op Linux, dat willekeurige getallen genereert, "blokkeert" en retourneert geen resultaat totdat het voldoende entropie heeft verzameld om een ​​echt willekeurig getal te retourneren.

Pseudorandom Numbers

Pseudorandom-getallen zijn een alternatief voor "Echte" willekeurige getallen. Een computer kan een seed-waarde en een algoritme gebruiken om getallen te genereren die willekeurig lijken, maar die in feite voorspelbaar zijn. De computer verzamelt geen willekeurige gegevens uit de omgeving.

Dit is niet per se slecht in elke situatie. Als u bijvoorbeeld een videogame speelt, maakt het niet echt uit of de gebeurtenissen in dat spel worden gevat door 'echte' willekeurige getallen of pseudo-willekeurige nummers. Als u daarentegen codering gebruikt, wilt u geen pseudowillekeurige nummers gebruiken die een aanvaller zou kunnen raden.

Laten we bijvoorbeeld zeggen dat een aanvaller het algoritme en de seed-waarde kent die een pseudo-willekeurige nummergenerator gebruikt. En laten we zeggen dat een coderingsalgoritme een pseudorandomnummer krijgt van dit algoritme en het gebruikt om een ​​coderingssleutel te genereren zonder extra willekeur toe te voegen. Als een aanvaller genoeg weet, kunnen ze achterwaarts werken en het pseudo-willekeurige nummer bepalen dat het coderingsalgoritme in dat geval moet hebben gekozen, waarbij de codering is verbroken.

De NSA en de hardware-generator voor willekeurige getallen van Intel

Om het de ontwikkelaars en ontwikkelaars gemakkelijker te maken hulp bij het genereren van veilige willekeurige getallen, bevatten Intel-chips een op hardware gebaseerde willekeurige nummergenerator die bekend staat als RdRand. Deze chip maakt gebruik van een entropiebron op de processor en geeft willekeurige getallen aan software wanneer de software daarom vraagt.

Het probleem hierbij is dat de generator van willekeurige getallen in wezen een zwarte doos is en we weten niet wat erin gebeurt. Als RdRand een NSA-backdoor bevatte, zou de overheid coderingssleutels kunnen breken die werden gegenereerd met alleen gegevens die door die generator voor willekeurige getallen werden verstrekt.

Dit is een ernstige zorg. In december 2013 hebben de ontwikkelaars van FreeBSD de ondersteuning voor het gebruik van RdRand direct verwijderd als een bron van willekeur, waarbij ze zeiden dat ze het niet konden vertrouwen. [Bron] De uitvoer van het RdRand-apparaat zou worden ingevoerd in een ander algoritme dat extra entropie toevoegt, zodat elke achterdeur in de generator voor willekeurige getallen er niet toe doet. Linux werkte al op deze manier, verder randomiseren van de willekeurige gegevens afkomstig van RdRand zodat het niet voorspelbaar zou zijn, zelfs als er een achterdeur was. [Bron] In een recente AMA ("Ask Me Anything") op Reddit heeft Intel CEO Brian Krzanich geen vragen over deze zorgen beantwoord. [Source]

Natuurlijk is dit waarschijnlijk niet alleen een probleem met Intel-chips. De ontwikkelaars van FreeBSD hebben ook de namen van Via's chips bij naam genoemd. Deze controverse laat zien waarom het genereren van willekeurige getallen die echt willekeurig zijn en niet voorspelbaar zijn zo belangrijk is.


Voor het genereren van "echte" willekeurige getallen verzamelen willekeurige nummergeneratoren "entropie" of schijnbaar willekeurige gegevens uit de fysieke wereld om hen heen. Voor willekeurige getallen die niet echt willekeurig moeten zijn, kunnen ze gewoon een algoritme en een seed-waarde gebruiken.

Beeldcredits: rekre89 op Flickr, Lisa Brewster op Flickr, Ryan Somma op Flickr, huangjiahui op Flickr


Hoe kies ik de juiste monitor voor de monitor

Hoe kies ik de juiste monitor voor de monitor

Ik heb wat deprimerend nieuws voor u: de houder of standaard die bij uw monitor werd geleverd, is waarschijnlijk slecht. Oh, het zal het scherm ophouden en op je bureau gaan staan ​​... maar dat is het dan ook. De meeste standaard monitorstandaards van fabrikanten zijn barebones, missen opties voor zowel kijken als ergonomie (met een paar uitzonderingen voor premium en gaming -gemerkte modellen).

(how-top)

Zes manieren waarop de Amazone-echo nuttig kan zijn tijdens een spelnacht

Zes manieren waarop de Amazone-echo nuttig kan zijn tijdens een spelnacht

De Amazon-echo kan heel veel taken uitvoeren met alleen je stem, zoals het inschakelen van lichten, het instellen van alarmen en zelfs het afspelen van muziek. Maar wanneer het tijd is voor een game-avond in je huishouden, kan Alexa ook een enorme hulp zijn. Hier zijn enkele geweldige manieren waarop de Amazon Echo je kan helpen de volgende keer dat je de bordspellen hebt uitgeschakeld.

(how-top)