Also. Wenn man mit einem sicheren Zufallsgenerator ein Array[0..15] of Byte mit Bits füllt, so hat man ein 128 Bit Passwort. Es gibt also insgesammt 2^128 = 340282366920938463463374607431768211456 verschiedene 128 Bit Passwörter. Diese Schranke ist so hoch das bei heutigem Technik und Wissensstand es unmöglich ist alle Passwörter durchzuprobieren. Man benötigte dafür Millionen Jahre. Allerdings ist in dieser das Fortschreiten der Technologie für die nächsten 20 Jahre berücksichtigt. Die schlauen Mathematiker haben also den unwahrscheinlichen Fall angenommen das unser technischer Fortschritt in den nächsten 20 Jahren hyper-exponentiell vorranschreitet. Somit ist ein 128 Bit binäres Passwort für die nächsten 20 Jahre garantiert 100% sicher.
Nur, bei zeichenbsierten Paswörtern werden ja nur wenige Zeichen des gesamten
ASCII Zeichensatzes benutzt. Aus den 256 möglichen Zeichen pro Byte, benutzen die Buchstaben + Ziffern nur 36 Kombinationen. D.h. pro Byte wird nur 36/256'tel benutzt, dies sind nur 14%. Somit reduziert sich die Bit-Sicherheit solcher Passwörter. Zusätzlich komt noch die Verteilung der einzelnen Buchstaben im Passwort zu tragen. Kein Mensch gibt wahllose aufeinanderfolgende Buchstaben ein. Sondern er wird einen Namen, Text, Zitat oder ähnliches benutzen. Dies reduziert die Verteilung nochmals, da es zb. in der Deutschen Sprache nur 200.000 Wörter gibt von denen nur 5.000 umgangsprachlich permanant benutzt werden. D.h. ein Angreifer wird NICHT Bit für Bit jedes Passwort durchprobieren, sondern auf grund sogenannter Wortdatenbanken eine Dictionary Attack durchführen. Damit erhöht er drastisch die Wahrscheinlichkeiten möglichst schnell ein Passwort zu knacken. Diesem Umstand muß man Rechnung tragen, und exakt die (8 / 3.2) pro Zeichen tut dies. Denn pro Zeichen = 8Bit enthält ein englsicher Text nur 3.2 Bit an unkomprimierbarer Information !!
Gruß Hagen