de.phhsnews.com


de.phhsnews.com / Wie Computer Zufallszahlen generieren

Wie Computer Zufallszahlen generieren


Computer generieren Zufallszahlen für alles von Kryptographie über Videospiele bis hin zu Glücksspielen. Es gibt zwei Kategorien von Zufallszahlen - "echte" Zufallszahlen und Pseudozufallszahlen - und der Unterschied ist wichtig für die Sicherheit von Verschlüsselungssystemen.

Computer können echte Zufallszahlen erzeugen, indem sie einige externe Daten wie Mausbewegungen oder Lüftergeräusche beobachten , die nicht vorhersehbar ist und Daten daraus erstellt. Dies wird als Entropie bezeichnet. In anderen Fällen erzeugen sie Pseudozufallszahlen, indem sie einen Algorithmus verwenden, so dass die Ergebnisse zufällig erscheinen, auch wenn dies nicht der Fall ist.

Dieses Thema ist in letzter Zeit umstrittener geworden und viele Leute fragen sich, ob Intels eingebauter Hardware-Zufallszahlengenerator ist Chip ist vertrauenswürdig. Um zu verstehen, warum es nicht vertrauenswürdig ist, müssen Sie verstehen, wie Zufallszahlen überhaupt geniert werden und wofür sie verwendet werden.

Welche Zufallszahlen werden für

verwendet Zufallszahlen wurden verwendet seit vielen tausend Jahren. Ob es darum geht, eine Münze zu werfen oder einen Würfel zu werfen, das Ziel besteht darin, das Endergebnis einer zufälligen Chance zu überlassen. Zufallsgeneratoren in einem Computer sind ähnlich - sie sind ein Versuch, ein unvorhersehbares, zufälliges Ergebnis zu erzielen.

VERWANDT: Was ist Verschlüsselung und wie funktioniert es?

Zufallsgeneratoren sind nützlich für viele verschiedene Zwecke. Abgesehen von offensichtlichen Anwendungen wie Zufallszahlen für Glücksspiele oder unvorhersehbare Ergebnisse in einem Computerspiel zu erzeugen, ist Zufälligkeit für die Kryptographie wichtig.

Kryptographie erfordert Zahlen, die Angreifer nicht erraten können. Wir können nicht immer und immer wieder dieselben Nummern verwenden. Wir wollen diese Zahlen auf eine unvorhersehbare Art und Weise erzeugen, damit Angreifer sie nicht erraten können. Diese Zufallszahlen sind für die sichere Verschlüsselung unerlässlich, unabhängig davon, ob Sie Ihre eigenen Dateien verschlüsseln oder einfach eine HTTPS -Website im Internet verwenden.

Wahre Zufallszahlen

Sie fragen sich vielleicht, wie ein Computer funktioniert tatsächlich eine Zufallszahl erzeugen. Woher kommt diese "Zufälligkeit"? Wenn es nur ein Stück Computercode ist, ist es dann nicht möglich, dass die vom Computer generierten Zahlen vorhersehbar sind?

Im Allgemeinen gruppieren wir die generierten Zufallszahlen in zwei Typen, je nachdem wie sie generiert werden: "True" random Zahlen und Pseudozufallszahlen.

Um eine "echte" Zufallszahl zu erzeugen, misst der Computer eine Art von physikalischem Phänomen, das außerhalb des Computers stattfindet. Zum Beispiel könnte der Computer den radioaktiven Zerfall eines Atoms messen. Nach der Quantentheorie gibt es keine Möglichkeit, sicher zu wissen, wann radioaktiver Zerfall auftreten wird, also ist dies im Wesentlichen "reine Zufälligkeit" aus dem Universum. Ein Angreifer würde nicht vorhersagen können, wann radioaktiver Zerfall auftreten würde, so dass er den zufälligen Wert nicht kennen würde.

Für einen mehrtägigen Beispiel könnte der Computer auf atmosphärisches Rauschen zurückgreifen oder einfach den exakten verwenden Drücken Sie die Tasten auf Ihrer Tastatur als Quelle für unvorhersehbare Daten oder Entropie. Ihr Computer könnte beispielsweise bemerken, dass Sie nach genau 2 Uhr nachmittags eine Taste mit exakt 0,23423523 Sekunden gedrückt haben ... Nehmen Sie genug Zeit für diese Tastenbetätigungen und Sie haben eine Entropiequelle, die Sie verwenden können, um ein "wahres" Zufallsbild zu erzeugen Nummer. Sie sind keine vorhersehbare Maschine, daher kann ein Angreifer den genauen Zeitpunkt nicht erraten, wenn Sie diese Tasten drücken. Das / dev / random-Gerät unter Linux, das Zufallszahlen generiert, "blockiert" und gibt erst dann ein Ergebnis zurück, wenn es genug Entropie gesammelt hat, um eine echte Zufallszahl zurückzugeben.

Pseudozufallszahlen

Pseudozufallszahlen sind eine Alternative zu "Wahre" Zufallszahlen. Ein Computer könnte einen Startwert und einen Algorithmus verwenden, um Zahlen zu erzeugen, die zufällig erscheinen, aber tatsächlich vorhersagbar sind. Der Computer sammelt keine zufälligen Daten aus der Umgebung.

Dies ist nicht unbedingt eine schlechte Sache in jeder Situation. Wenn Sie beispielsweise ein Videospiel spielen, spielt es keine Rolle, ob die Ereignisse in diesem Spiel durch "echte" Zufallszahlen oder Pseudozufallszahlen verursacht werden. Auf der anderen Seite, wenn Sie Verschlüsselung verwenden, möchten Sie keine Pseudozufallszahlen verwenden, die ein Angreifer erraten könnte.

Angenommen, ein Angreifer kennt den Algorithmus und den Startwert, den ein Pseudozufallszahlengenerator verwendet. Angenommen, ein Verschlüsselungsalgorithmus erhält eine Pseudozufallszahl aus diesem Algorithmus und generiert daraus einen Verschlüsselungsschlüssel, ohne zusätzliche Zufälligkeit hinzuzufügen. Wenn ein Angreifer genug weiß, könnte er rückwärts arbeiten und die Pseudozufallszahl bestimmen, die der Verschlüsselungsalgorithmus in diesem Fall gewählt haben muss, um die Verschlüsselung zu durchbrechen.

Der NSA und der Hardware-Zufallszahlengenerator von Intel

Um den Entwicklern die Arbeit zu erleichtern Um sichere Zufallszahlen zu generieren, enthalten Intel-Chips einen hardwarebasierten Zufallszahlengenerator, der als RdRand bekannt ist. Dieser Chip verwendet eine Entropiequelle auf dem Prozessor und stellt der Software Zufallszahlen zur Verfügung, wenn die Software sie anfordert.

Das Problem ist, dass der Zufallszahlengenerator im Wesentlichen eine Blackbox ist und wir nicht wissen, was in ihm passiert. Wenn RdRand eine NSA-Hintertür enthält, wäre die Regierung in der Lage, Verschlüsselungsschlüssel zu knacken, die nur mit Daten erzeugt wurden, die von diesem Zufallszahlengenerator geliefert wurden.

Dies ist ein ernstes Problem. Im Dezember 2013 entfernten die FreeBSD-Entwickler die Unterstützung für die direkte Verwendung von RdRand als Quelle der Zufälligkeit und sagten, dass sie ihm nicht vertrauen könnten. [Quelle] Die Ausgabe des RdRand-Geräts würde in einen anderen Algorithmus eingegeben werden, der zusätzliche Entropie hinzufügt, wodurch sichergestellt wird, dass alle Hintertüren im Zufallszahlengenerator keine Rolle spielen. Linux arbeitete bereits auf diese Weise, indem es die zufälligen Daten, die von RdRand kamen, weiter zufallsgenerierte, so dass es selbst bei einer Hintertür nicht vorhersehbar wäre. [Quelle] In einer kürzlichen AMA ("Ask Me Anything") auf Reddit hat Intel CEO Brian Krzanich keine Fragen zu diesen Bedenken beantwortet. [Source]

Das ist natürlich nicht nur ein Problem mit Intel-Chips. Die Entwickler von FreeBSD haben Via's Chips auch namentlich genannt. Diese Kontroverse zeigt, warum Zufallszahlen, die wirklich zufällig und nicht vorhersagbar sind, so wichtig sind.


Um Zufallszahlengeneratoren zu erzeugen, sammeln sie "Entropie" oder scheinbar zufällige Daten aus der physischen Welt um sie herum. Für Zufallszahlen, die nicht wirklich müssen zufällig sein, sie können nur einen Algorithmus und einen Startwert verwenden.

Bildquelle: rekre89 auf Flickr, Lisa Brewster auf Flickr, Ryan Somma auf Flickr, Huangjiahui auf Flickr


Die billigsten Möglichkeiten, um Baseball zu streamen (auch wenn Sie kein Kabel haben)

Die billigsten Möglichkeiten, um Baseball zu streamen (auch wenn Sie kein Kabel haben)

Nur weil Sie Kabel losgeworden sind, bedeutet das nicht, dass Sie nicht ohne Baseball für gehen müssen die ganze Saison. Hier sind einige Möglichkeiten, wie Sie MLB-Spiele live sehen können, ohne für Kabel bezahlen zu müssen. Das Abschneiden des Kabels belastet die Sportfans im Allgemeinen sehr, da die meisten Spiele in Kabelnetzen ausgestrahlt werden und nur sehr wenige Kanäle verfügbar sind Abholung mit einer Antenne kostenlos.

(how-top)

Was ist

Was ist "wsappx" und warum läuft es auf meinem PC?

Der Prozess "wsappx" ist Teil von Windows 8 und 10, und Sie können sehen, dass er im Hintergrund oder sogar läuft Verwenden einer erheblichen Menge an CPU- und Festplattenressourcen. Es bezieht sich auf den Windows Store und die neue "Universal" -App-Plattform von Microsoft. VERWANDT: Was ist dieser Prozess und warum läuft er auf meinem PC?

(how-top)