Hey,
ich habe mir überlegt auf meinem Server von MD5 zu Whirlpool zum Hashen von Passwörtern zu wechseln. Jetzt habe ich nur ein Problem, alle Passwörter in der Datenbank sind derzeit noch im MD5 Format und ich müsste sie erstmal wieder zurück zur "Normalform" bringen, bevor ich sie dann wieder mit Whirpool hashe. Nur mit welchem MySQL Befehlt kann ich das direkt in PHPMyAdmin erledigen ? Sonst hätte ich nur die Idee scriptseitig durch alle Passwörter zu loopen und sie wieder umzuwandeln. Und ich habe da noch eine Frage. Gibt es einen MySQL Befehl mit dem ich ein Feld mit Whirpool hashen kann oder müsste ich das vom Script aus erledigen? Denn die ganzen User zurücksetzen möchte ich eigentlich nicht.
Würde mich über Hilfe freuen
Alle Passwörter aus einer Tabelle entcrypten (MD5)
- Oskaar1994
- Geschlossen
- Erledigt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
Du kannst doch in dein Script einbauen, dass die User beim Connecten ein neues Passwort eingeben müssen.
Dann Updatest du die Tabelle und fertig.Soweit ich weiß gibt es keinen MySQL Befehl für Whirpool
-
Du kannst doch in dein Script einbauen, dass die User beim Connecten ein neues Passwort eingeben müssen.
Dann Updatest du die Tabelle und fertig.Soweit ich weiß gibt es keinen MySQL Befehl für Whirpool
Sowas probiere ich halt zu umgehen, da viele es sicher nicht kapieren würden wieso sie ein neues Passwort eingeben müssen und dann wahrscheinlich einige denken ees wäre ein Bug oder ähnliches.
-
Dann schreibst du dazu das aufgrund eines Scriptupdates ein neues Passwort gefordert wird.
-
MD5 ist immernoch keine Verschlüsselung, es ist ein Hash (kann man auch als Prüfsumme sehen, welche aus den eingegebenen Daten berechnet wird). Diesen kannst du nicht einfach so wieder in Klartext setzen, einzigste Möglichkeit wäre Brute-Forcen
Machs so wie T4125Gamer: gesagt hat, das sollte die einfachste Möglichkeit sein
-
Ein bisschen umständlich.
Du fragst ab, ob der Spieler sich erfolgreich eingeloggt hat. Lässt das eingegebene Passwort abspeichern, neu hashen und die Tabelle updaten. Dann braucht man auch nicht ein "neues" einzugeben.
-
Machs doch so:
Du machst einen neuen Eintrag in der mysql Tabelle für ein neues Passwort.
Dann im Script das es so abläuft: Sie loggen sich normal ein, du speicherst das passwort neu ab in der normalen Form. Problem gelöst soweit. Dann löscht du das Passwort in Md5 form.
Dann fragst du ab ob ein passwort (md5) vorhanden ist wenn nicht das andere.Hoffe ich hab mich verständlich ausgedrückt.. ( artikulationsprobleme maybe .. )
-
Beitrag von IPrototypeI ()
Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar. -
Ich habe mir mal was kleines gebastelt aber es funktioniert noch nicht ganz.
CMD:convertpasswords(playerid, params[])
{
if(!isAdmin(playerid, 5)) return 0;
mysql_function_query(dbhandle,"SELECT MD5(`password`),`id` FROM `user`",true,"ConvertPasswords","","");
return 1;
}
public ConvertPasswords()
{
new rows,fields;
cache_get_data(rows, fields);
new pass[35],passID;
for(new i = 0; i != rows; i++)
{
cache_get_field_content(i,"password",pass,dbhandle,35);
passID = cache_get_field_content_int(i,"id",dbhandle);
}
return 1;
}
Es zeigt statt dem eigentlichen Passwort "NULL". Was mache ich falsch ? -
Du kannst MD5 nicht mehr einfach in Klartext wandeln, das ist ja der Sinn des ganzen...
mach eine neue Spalte mit default Null namens PW Version.
Versucht sich nun ein Spiler einzuloggen schaust du ob PW Version auf 0 ist wenn ja überprüfst du das Angegebene Passwort als MD5 wenn nein als Whirlpool. Ist der Wert 0 und das PW ist Korrekt setzt du PW Version auf 1 und das Klartext PW wird mit Whirlpool verschlüsselt und in die mysql tabelle geupdated.
Wichtig ist nur, dass du beim registieren direkt Whirlpool nutzt und PW Version auf 1 setzt.
-
Ich kapier nur nicht ganz wieso das nicht geht, denn beim Login klappt das ja auch ?
-
Beim Login wird das Passwort im Klartext gehasht durch MD5. Du kannst die Prüfsumme aber nicht mehr in Klartext verwandeln.
-
Ok, danke für die Info, dann muss ich mir etwas anderes überlegen
-
Es wurden doch schon genügend Vorschläge geschrieben. Eine andere Möglichkeit gibt es nicht.
-
Oder du hascht alle alten pws nochmal mit WP and alle neuen erst mit MD5 und dann WP. Sollte man aber eigentlich nicht tun.
-
Ich hätte eine Möglichkeit, du hast doch eine Passwort abfrage, wenn diese richtig ist, tuhst du einfach inputtext auslesen
-
Oder du hascht alle alten pws nochmal mit WP and alle neuen erst mit MD5 und dann WP. Sollte man aber eigentlich nicht tun.
Ist es dann noch möglich sie zu enthashen ? Und wie genau soll ich das dann machen, wenn ich MD5 nur in einer Query verwenden kann, oder geht das noch anders ?
-
Naja send mir mal PN deine Teamspeak daten, erkläre ich dir wie ich das meine
-
Ist es dann noch möglich sie zu enthashen ? Und wie genau soll ich das dann machen, wenn ich MD5 nur in einer Query verwenden kann, oder geht das noch anders ?
Nein, ist es immer noch nicht, aber das wüsste man, wenn man @seegras:' Post mal durchgelesen hätte... -
Ich habe eine Möglichkeit, mit der müsste es ganz simpel gehen