2 Replies
  1. 5

    Si dovrebbe essere il controllo e interrogare il database per una partita, non riportando i risultati in giù e il controllo a livello locale. Detto questo:

    $password = md5($_POST['password']);

    Poi cambiare anche:

    SELECT * FROM users WHERE username='$username' AND password='$password'

    Ma mi piacerebbe avere anche un’occhiata a utilizzando DOP invece di inserire i valori direttamente in una query SQL. Almeno si dovrebbe essere utilizzando mysql_real_escape_string per evitare gli attacchi di iniezione.

    • Vorrei anche raccomandare di non utilizzare MD5 in quanto fornisce praticamente nessuna protezione. bcrypt o PBKDF2
    • A destra, o usare il sale. Ma è meglio qualcosa di più forte con il sale.
  2. 0
        $salt=sha1($postpassword);
        $arr= strlen($postpassword);
        $count=ceil($arr/2);
        $stringarr=str_split($postpassword,$count);
        $password1=hash("sha512", $stringarr['0']); 
    
        $password2=$salt . ( hash( 'whirlpool', $salt . $stringarr['1'] ) );
        return $password1.$password2;
    • <?classe php password { // ottiene un nuovo hash di una password funzione pubblica stringbreak ($postpassword) { $salt=sha1($postpassword); $arr= strlen($postpassword); $count=ceil($arr/2); $stringarr=str_split($postpassword,$count); $password1=hash(“sha512”, $stringarr[‘0’]); $password2=$sale . ( hash (“gorgo”, $sale . $stringarr[‘1’] ) ); return $password1.$password2; } } ?>

Lascia un commento