Einzelnen Beitrag anzeigen

Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#34

Re: "Sicheres" Passwort erzeugen...Wie?

  Alt 3. Dez 2005, 15:15
Randomize benutzt GetTickCount zur Initialisierung des Seeds für Random(). So wie du das jetzt machst ist es also wenig sinnvoll. Wenn deine Schleife mit 1000 Durchläufen auf Rechner X mit 1Ghz noch länger als 1 Millisekunde dauert so könnte es auf Rechner Y mit 5Ghz nur noch < 1ms dauern. In dieser Zeit hat sich der Wert von GetTickCount() nicht geändert, ergo 1000 mal gleicher Seed, ergo immer der gleiche Psudozufall mit Random().

Du solltest Randomize; nur einmal zum Start einer Session aufrufen. Besonders bei sehr häufigem Aufruf von Randomize() besteht also die Gefahr das Random() eben keinen Pseudozufall mehr erzeugen kann, sondern einfach mit GetTickCount() identisch ist. Du zerstörst quasi mit deinem Vorgehen die korrekte Funktionalität von Random().

Gruß Hagen
  Mit Zitat antworten Zitat