Hier im Forum ist echt viel Halbwissen unterwegs :-/
Damit wir das ein für alle mal geklärt haben... keins der folgenden Verfahren ist kryptografisch sicher:
>$hash = md5($password);
>$hash = sha1($password);
>$hash = sha1(md5($password . $salt) . $salt);
>$hash = hash("sha512", $password, $salt);
Um einen sicheren Hash eines Passworts zu erstellen, der als "unknackbar" (Anführungszeichen sind wichtig!) bezeichnet werden kann, benötigt man folgende Dinge:
1. Eine erprobte Hashfunktion, die möglichst langsam ist (=> SHA256 oder SHA512)
2. Einen Salt, der min. so lang ist, wie die Ausgabe der Hashfunktion (=> 32-64 Byte)
3. Viele tausend Iterationen (=> 1-2 Sekunden Rechenzeit pro Hash)
Einer der wenigen professionellen und gleichzeitig einfachen Wege ist PBKDF2.
Passend zum Artikel haben wir hier eine Pure-PHP Implementierung: http://pastebin.com/5KynURz3
Nun macht man...
>$salt = Crypto::random(32);
>$hash = base64_encode( Crypto::pbkdf2($_GET["password"], $salt, 32, 65536) );
...und speichert den Salt, sowie den Hash in der Datenbank.
Beim Login prüft man dann wiederrum mit:
>$salt = $row["salt"];
>$hash = $row["hash"];
>$matches = ($hash === base64_encode( Crypto::pbkdf2($_GET["password"], $salt, 32, 65536) ));
Und fertig. Ein nach heutigen Maßstäben supersicherer Hash, der in Milliarden Jahren nicht gebrochen wird, und selbst bei kurzen Passwörtern immer noch bestimmt mehrere Monate benötigt.
Oder man verwendet eben die neuen BCrypt-Funktionen - da kann man sich auch die zigtausend Iterationen sparen, weil man ohnehin nur wenige Tausend Hashes pro Sekunde berechnen kann.
1 mal bearbeitet, zuletzt am 13.09.12 18:04 durch c3rl.
Benutzer wird von Ihnen ignoriert. Anzeigen
Kommentare: 727 | letzter Beitrag 20:29 Uhr
Kommentare: 568 | letzter Beitrag 14:41 Uhr
Kommentare: 251 | letzter Beitrag 17:14 Uhr
Kommentare: 182 | letzter Beitrag 20:49 Uhr
Kommentare: 170 | letzter Beitrag 08:02 Uhr
E-Mail an news@golem.de

Ein Smartphone, das in einer halben Minute geladen ist, soll ein neuer Energiespeicher ermöglichen. Die Entwicklerin kam auf die Idee, weil sie sich über den dauernd leeren Akku ihres Mobiltelefons geärgert hat.

Nach einem Entwurf des Architekturbüros NBBJ will Amazon eine extravagante neue Konzernzentrale bestehend aus drei riesigen Gewächshauskugeln und Bürohochhäusern errichten.

Störfeuer von Sony: Kurz vor der Enthüllung der nächsten Xbox hat Sony ein Video veröffentlicht, das zumindest einen verschwommenen Blick auf das Gehäuse der Playstation 4 gewährt.

Eine offene Spielumgebung, sehr schnelle Autos und spannende Verfolgungsjagden kündigt EA für Need for Speed Rivals an. Das Rennspiel auf Basis der Frostbite-3-Engine erscheint auch für die Next-Gen-Konsole.

Eine Preissenkung bei den Software-Lizenzen hilft Windows 8-Geräten. Ihr Anteil soll auf 10 bis 20 Millionen steigen.

Der Chaos Computer Club hat das Grundgesetz als Open Data veröffentlicht. Die dafür eingerichtete Plattform steht auch anderen Nutzern offen, die weitere Dokumente aus der Verwaltung dort veröffentlichen sollen.