Menschliche Gehirne sind schlechte RNG. Menschen sind schlecht darin, zufällige Werte in der Privatsphäre ihres Kopfes zu generieren. Sie können einfach nicht zufällig denken. obwohl sie sich davon überzeugen können.
Physikalische Prozesse sind andererseits ziemlich gute Entropiequellen. Nehmen Sie Ihre Mausbewegungen. Einige Dutzend Mal pro Sekunde misst die Maus, wie weit sie sich seit dem letzten Häkchen bewegt hat, und sendet diese Informationen an den Server. Wenn Ihre Hand zittert, geschieht dies in der Regel etwas regelmäßig, aber die Biologie ist so, dass jede Elementarbewegung einem gewissen Jitter ausgesetzt ist, der wesentlich größer ist als die Präzision der Maus. Selbst mit viel Training ist es für eine menschliche Hand sehr schwierig, genau dieselbe Bewegung wiederholt auszuführen (andernfalls würde es viel mehr Menschen wie Yehudi Menuhin geben). Die Quintessenz ist also, dass Mausbewegungsmaße eine gewisse Entropie enthalten. (Denken Sie daran, dass "Entropie" hier definiert ist als "das, was der Angreifer nicht weiß"; die Maus weiß sicherlich, wie viel sie sich bewegt hat, da diese Maus tatsächlich die Werte sendet, auf denen die RNG aufgebaut sind.)
Die andere Hälfte der Antwort ist Aggregation . Ein mausbasiertes RNG verwendet Hunderte oder sogar Tausende von Maßnahmen, akkumuliert sie alle und kondensiert sie zu einem geeigneten Samen, der die gesamte Entropie konzentriert. Dies ist einfach genug: Geben Sie einfach alle Werte einer kryptografischen Hash-Funktion zu, z. SHA-256, und Sie erhalten einen 256-Bit-Startwert mit der gesamten Quellentropie, wo immer er sich in den gemessenen Mausbewegungen versteckt hat. Hash-Funktionen sind dafür gut; Sie reduzieren die Größe, behalten aber die Entropie bei (bis zur Ausgabegröße der Hash-Funktion, aber 256 Bit sind für alle Zwecke mehr als ausreichend).
Ein Angreifer kann vermuten, dass der Benutzer Kreise macht, aber es wird schwierig sein, alle einzelnen Bewegungen richtig zu machen, zumal ihm die Psychologie nicht hilft: Der menschliche Benutzer selbst hat keine Ahnung, wie seine Handbewegungen werden Zahlen. Da es sich um Hunderte von Zahlen handelt, steigt die Anzahl möglicher Kombinationen (d. H. "Entropie") exponentiell an. Vergleichen Sie dies mit einem menschlichen Benutzer, der über ein neues Passwort nachdenkt: Der Benutzer wählt Buchstaben aus, die einem inneren "witzigen" Gedankengang folgen, den der Angreifer mehr oder weniger brutal erraten kann (z. B. wenn die Buchstaben alle Anfangsbuchstaben einiger Wörter in sind Bei einem Satz aus einem Buch kann der Angreifer automatisch alle Sätze aus allen Büchern versuchen, die er in elektronischem Format finden kann. und, was noch wichtiger ist, der menschliche Benutzer wird nicht die Mühe haben, mehr als ein Dutzend oder so "scheinbar zufällige" Zeichen zu produzieren.
In Passwörtern macht Länge keine Stärke - aber mangelnde Länge kann sehr effektiv bei der Verhinderung von Stärke sein.