Jako ze to forum przegląda wiele osób pewnie ktoś będzie miał jakaś koncepcje a mianowicie rozchodzi mi się o mała wskazówkę lub coś więcej... Przechodząc do sedna sprawy;
Chce napisać panel gracza do gry takiej jak minecraft (może słyszeliście), znalazłem odpowiedni plugin do tej gry który zapisuje hasła i loginy do MySQL'a rejestracja użytkownika odbywa się in-game (link do dokumentacji pluginu https://github.com/CypherX/xAuth/wiki). Wszystko ładnie pięknie gdyby nie funkcja która hashuje te hasła (link do niej https://github.com/CypherX/xAuth/wiki/Password-Hashing). Umiem napisać prosty skrypt z logowaniem, lecz tutaj chyba trochę się przeliczyłem a czy kolwiek się nie podaje . Czy ktoś mógłby dać mi jakaś wskazówkę jak wkomponować skrypt hasujacy z pluginu do systemu logowania?
Plugin przy rejetracji tworzy w DB tabele o nazwie: accounts z takimi polamii jak: id, playername, password, email, registerdate, registerip, lastlogindate, lastloginip, active
Poniżej jak wygląda DB tabela accounts

Zastosował bym szyfrowanie sha1 () gdyby nie to ze rejestracja odbywa sie w grze i to wlasnie w grze gracze rejestruja swoje acc tym samym plugin hashuje za pomoca algorytmu whirpool
poniżej dla leniwych to co autor pluginu zostawil w dokumentacji:
function encryptPassword($password) { $hash = hash('whirlpool', $salt . $password); }
function checkPassword($realPass, $checkPass) { //check for old encryption (md5 or whirlpool) if ($realPass == $hash) { // change password to new encryption? return true; } else return false; } // xAuth 2 encryption // extract salt $hash = hash('whirlpool', $salt . $checkPass); }
Oraz schemat jak przebiega hashowanie:
Example
Plaintext: password
Hashed: cb5ef15b400cef07addb37e00e2cdd6d1b508a2a26f0befcb0f9d8fd03c1d67be1690eba2287c4f7
6a590f2feae654ce5aee9943a23babb8e56381fe3214a48ad8754a1fd9eb
How does it work?
1. First, the salt is created by taking the first 12 characters of a randomly generated Whirlpool hash.
400cef07addb
2. Next, the salt and plaintext password are combined and hashed.
400cef07addbpassword
cb5ef15b37e00e2cdd6d1b508a2a26f0befcb0f9d8fd03c1d67be1690eba2287c4f76a590f2feae6
54ce5aee9943a23babb8e56381fe3214a48ad8754a1fd9eb
3. Finally, the salt is inserted into the previously generated hash at a position determined by the length of the plaintext password.
cb5ef15b400cef07addb37e00e2cdd6d1b508a2a26f0befcb0f9d8fd03c1d67be1690eba2287c4f7
6a590f2feae654ce5aee9943a23babb8e56381fe3214a48ad8754a1fd9eb
wydaje mi się ze funkcji checkPassword używa sie do sprawdzenia zgodności haseł ( zwraca wartość logiczną ) a tej drugiej do hashowania ( zwraca ciąg znakowy),
nie wiem do czego w dalszej części skryptu logowania przypisać te 2 zmienne $realPass, $checkPass no jeszcze jest sprawa zhashowanego hasła w bazie danych ;/
No i następne i najważniejsze jak to sensownie wkomponować w skrypt logowania;/
Z gory dziekuje za jaka kol wiek pomoc ja zabieram sie dalej za to moze metoda prob i bledow jakos dodjde do konca. pozdrawiam