Citat:
Ursprungligen postat av tartareandesire
Citat:
Ursprungligen postat av Jonas
Vad är problemet?
Det kommer fortf. att ge samma resultat när användaren skriver in sitt lösenord?
Den användare först och andra placeringen i arrayen. Den 3dje används inte vid lösenordsskapande eller lösenordsverifiering. Ja, kan klassas som osäkert eftersom sista tecknet inte kontrolleras.
|
Hehe, ni missuppfattar väl varandra lite grann. Hur som helst så är det som du antyder en olämplig metod då ett antal olika lösenord ger samma resultat.
|
Jo, men man kan ev. byta ut så att varje användare har en unik salt. Då fungerar det.
Eller så byter man ut str_split emot:
Kod:
function hashpass ($password, $salt)
{
$len = intval(strlen($password) / 2);
$oldpass1 = substr($password, 0, $len);
$oldpass2 = substr($password, $len);
$newpass = sha1($oldpass2 . $salt . $oldpass2);
return $newpass;
}
Kan alltid byta ut sha1() mot hash().
Kod:
function hashpass ($password, $salt)
{
$len = intval(strlen($password) / 2);
$oldpass1 = substr($password, 0, $len);
$oldpass2 = substr($password, $len);
$tohash = $oldpass2 . $salt . $oldpass2;
$newpass = hash('whirlpool', $tohash);
return $newpass;
}