Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by gammatester,
7. Feb 2014
Dieser Code liefert allerdings Zahlen im Intervall random verwendete Interval
//...
Result := (Temp + 2147483648.0) / 4294967296.0;
end;
benutzen, und eine ähnliche Formel wenn man mehr als 32 Bit braucht.
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by gammatester,
31. Jan 2014
Passwörter sollte man nicht mit dem Delphi-Generator erzeugen, jedenfalls nicht algorithmisch nur mit einem Programm: Wenn der Sourcecode/PW-Algorithmus nicht gekannt ist, dann kann man nicht sicher sein, ob irgendetwas Unerwünschtes :) drin ist; wenn er bekannt ist, kann man ihn in (Milli-)Sekunden knacken, man probiert halt alle 2^32 Seeds aus (siehe zB hier für das super-geheime Passwort...
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by gammatester,
31. Jan 2014
Noch mal zum Thema Geschwindigkeit vs. Sicherheit bzw Periodenlänge: So einfach wie hier zusammengefaßt
ist die Lage nicht. Wenn man sich meine Tabelle http://www.wolfgang-ehrhardt.de/misc_de.html#prng ansieht, erkennt man das Delphi random nur ca 10% schneller als der Mersenne Twister ist, aber 30% langsamer als X0R4096 und immer noch 15% langsamer als mein 'Standard'-Generator Taus88. Selbst...
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by gammatester,
30. Jan 2014
Der in Delphi und Pascal ist seit langem der gleiche, ein linearer http://de.wikipedia.org/wiki/Kongruenzgenerator
x = a*x + 1 mod 2^32;
mit a = $08088405 = 134775813
Edit: der gleiche heißt hier, daß er sich seit TurboPascal 5/6/7 nicht geändert hat, nicht das er der gleiche wie in neueren FPC-Versionen ist.