[b]Mal so ein gedanke:[/b]
Mal ganz davon abgesehen.... was ich mich grade frage.... gehen wir mal davon aus das die sicherheit bei einem langen und kurzen pw aus buchstaben (nur kleine) und Zahlen identisch wäre, sprich 32 Zeichen aus a-z & 0-9 sind genau so sicher wie 6 Zeichen aus a-z & 0-9 (Theorie / Annahme)
die sicherheit würde somit nur aus der Kompexität der Zeichenkette folgen.
.... und ich nun so vorgehe wie dein einer User...
Das ist mein beispiel PW : Tv\q\hww&oa#&[+f/ly(ö.{(.*-k$jt+
mit 32 Zeichen!
Dann haut dein User dieses PW in eine MD5 (oder andere Hash kodierung)
da folgt dann sowas raus: (Betrachtet werden mal nur md5 und SHA1, da diese noch häufig im web genutzt werden)
[b]md5 :[/b] c0b1bc3f6be0f9ca42cb80574913ed1f
ebenfalls 32 Zeichen
[b]sha1 :[/b] 25334ff903005eb7761b0da0e69007fcddfd7bcf
40 Zeichen
[i]je nach Bit Rate und Hash ändert sich die Anzahl der Zeichen, aber es ist ja nur ein Beispiel (beachte die Annahme oben bitte).[/i]
Was ist nun passiert:
Die Komplexität eines PW geht zu gunsten einer definierten Zeichenlänge verloren... da ein hash (jetzt mal abgesehen vom ilch algorythmus oder anderen Varainten mit Salt) nur aus Ziffern und buchstaben besethen (und dann i.d.r. auch nur aus kleinen oder großen)
Im Endeffekt bedeute dies, das er sich sein PW mit z.b. 32 Zeichen (sehr komplex) durch ein neues mit 32 Zeichen (beim MD5) (nicht mehr Komplex) ersetzt...
Also irgendwo ist da ein denk fehlers deines Users (von mehr sicherheit kann da nicht die rede sein)! Klar die länge bingt hier wieder sicherheit mit aber selbes könnte er mit einem kurzen PW (Komplex) auch erreichen und hat diesen unsinnigen Aufwand nicht mehr!
[b]
Wie geasgt, es ist ein beispiel mit einfachen Annahmen und ohne die Verwendung von Runden, Salt oder anderen besseren Algorithmen...
[/b]
Wirklich was bringen tut dieses vorgehen nur bei einfachen Passwörtern mit wenigen Zeichen.
Zum beispiel beim Passwort "Feuerwehr".
Sicherheit erstmal gleich null, da es per Rainbow Table sofort gekanckt wird. Als MD5 : 9dc5b538a08f4355b90b46d4be899fbb
Da der User aber bei der Eingabe in der Webseite, nun den Md5 eingibt...und somit 32 Zeichen statt 9, ergibt sich glücklciherweise ein Passwort mit besserer sicherheit (wenn es auch immernoch nicht komplex ist)....
Md5 des Md5: 664fc96c11b53ef176349f51f827d408
dieser wird natürlich im Rainbow Tab. so nicht gefunden...
________________________________________________
[b]Mal was zur Sicherheit von diesen Zeichenketten ohne komplexität:[/b]
[i]Bei einer Brute-Force-Attack also ohne Rainbow-table[/i]
Beispiel: 9dc5b538a08f4355b90b46d4be899fbb
[a-z] = 26 Zeichen
[0-9] = 10 Zeichen
Zusammen [b]36 Zeichen[/b], ein standard Hash (md5) hat immer 32 Zeichen
also ergibt sich
36 ^32 = 63340286662973277706162286946811886609896461828096 [Varianten]
Eine gute Software mit ordentlich Hardware kann per Brute-Force-Attack 2.096.204.400 (rund knapp 2,1 Milliarden) Wörter pro Sekunde probieren.
somit ergibt sich
36 ^32 / 2.096.204.400 = 30216655714954742822867029067781694671519.8488411225546516 [Sekunden]
(Um alle Möglichen Kombinationen zu probieren)
Das bedeutet, man braucht ca. 9.57528491 × 10^32 Jahre um das PW zu knacken
zum vergleich, dass Universum ist nur 13.7 * 10^10 Jahre alt!
So oder so, es ist völlig überzogen und unsinnig... aber wer es braucht... warum nicht :D
p.S Das gewählte Passwort (Tv\q\hww&oa#&[+f/ly(ö.{(.*-k$jt+ ), war noch tausend mal sicherer durch die mehrzahl der Sonderzeichen.... (Wie gesagt das vorgehen deines Users ist ein rückschritt im Thema sicherheit)
[b]Weil ich es echt nochmal wissen wollte[/b]
Alle Zeichen auf einem Standard Keyboard
Beispiel Passwort: Tv\q\hww&oa#&[+f/ly(ö.{(.*-k$jt+
[a-z] 26 Zeichen
[A-Z] 26 Zeichen
[0-9] 10 Zeichen
[!"§$%&/()=?`^°²³{[]}\´+*~#'äöü,.-_:;µ@] 38 Zeichen
*** Verdammt hab ÄÖÜ vergessen ***
Zusammen 100 Zeichen, wieder ein String mit 32 Zeichen
32 ^ 100 = 3273390607896141870013189696827599152216642046043064789483291368096133796404674554883270092325904157150886684127560071009217256545885393053328527589376 [Varianten]
32 ^ 100 / 2.096.204.400 = 1561579876416699568998705325123637347682622002913010195705767704760153063510731374709102839554150424047810740273019210821815494970760195452947 [sekunden]
macht: 4,94845372 × 10 ^ 133 Jahre
nochmal als Zahl:
49517373047206353659268941055417216758074010746861053897316327522835903840396098893616908915339625318613988466293100292421851058179864.1 Jahre
Ich glaube das erlebt keiner mehr