Bonjour,

Lorsque j'utilise la fonction crypt() avec des mots de passe commençant par les mêmes 8 premiers caractères, php me retourne un hachage de 13 caractères (et ce peu importe l'encodage).
D'après le manuel 13 caractères c'est en cas d'erreur, mais je ne vois pas ou est mon erreur :/

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
$password_1 = 'abcdefgh123';
$password_2 = 'abcdefgh';
$password_3 = 'abcdefgh123456789';
$password_4 = 'abcdefghijklmoppqrst';
$password_5 = 'abcdefg';
echo $password_1.' -> '.crypt($password_1, '$2a$07$iwashere$').'<br>';
echo $password_2.' -> '.crypt($password_2, '$2a$07$iwashere$').'<br>';
echo $password_3.' -> '.crypt($password_3, '$2a$07$iwashere$').'<br>';
echo $password_4.' -> '.crypt($password_4, '$2a$07$iwashere$').'<br>';
echo $password_5.' -> '.crypt($password_5, '$2a$07$iwashere$');
exit;
me renvoie :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
abcdefgh123 -> $22IzqUtvHfJI
abcdefgh -> $22IzqUtvHfJI
abcdefgh123456789 -> $22IzqUtvHfJI
abcdefghijklmoppqrst -> $22IzqUtvHfJI
abcdefg -> $2MnRDUvYatck
Merci de m'éclairer