Also wenn ich eine Demoanwendung schreiben müsste dann würde ich es so machen:
Man wähle einen zufälligen String mit maximal 8 Ziffern.
Aus diesem String wird mit MD5 ein Hash erstellt.
Dabei hilft z.B. diese Webseite:
http://www.hashgenerator.de/
Hier einige Beispiele:
Code:
23449ce8ea5e51c73d43784b13028a52 - 8 Ziffern (100000000 Möglichkeiten)
51f6f8fe03a390d3de50ad49913d4b66 - 6 Ziffern (1000000 Möglichkeiten)
131ab68be139f348e6aa22bab7e16627 - 5 Buchstaben A-Z (11881376 Möglichkeiten)
Jetzt soll ein Programm dem nur der Hashwert bekannt ist den ursprünglichen String (Passwort, Pin) per Bruteforce ermitteln.
Mit genau solch einem Programm habe ich ein paar Tests gemacht.
Bei einem Intel Core i7 720QM mit TurboBoost 2.8 GHz sind das etwa die Zeiten:
- 23449ce8ea5e51c73d43784b13028a52 (08154711) nach 8154712 Versuchen, 25 Sekunden
- 51f6f8fe03a390d3de50ad49913d4b66 (123459) nach 123460 Versuchen, 0.150 Sekunden
- 131ab68be139f348e6aa22bab7e16627 (ZAPPY) nach 11434955 Versuchen, 25 Sekunden