Re: [ssfr] md5sum et md5() en php |
[ Thread Index |
Date Index
| More debianworld.org/shellscript-fr Archives
]
> steve a écrit :
>> http://andrey.mikhalchuk.com/2008/02/04/why-nix-md5sum-and-php-md5-do-not-match.html
>>
>> où il est dit que echo insère un \n en fin de chaîne ce qui fait que la
>> chaîne dont on veut calculer le md5 n'est pas la même qu'à l'origine.
>> Mais il est aussi dit sur cette page qu'il faut mettre l'option -n à
>> echo justement pour retirer le newline inséré par echo, ce que j'ai fait
>> mais toujours pas le même résultat, d'où ma venue ici.
>>
>> Je ne vois pas ce que j'ai fait de faux, une idée ?
>
> À part "chez moi ça marche", je vois pas trop...
Moi non plus.
> echo -n "toto" |md5sum
> f71dbe52628a3f83a77ab494817525c6 -
>
> php -r 'print(md5("toto"));'
> f71dbe52628a3f83a77ab494817525c6
Ai fait tous ces tests aussi.
> Ah, si en faisant le copier/coller, je vois le tiret, c'est pas lui qui fait ta différence ?
Non. D'ailleurs comment enlever ce tirait de la sortie ?
Dans mon script bash, j'ai
echo -n $chaine | md5sum
j'ai aussi essayé en mettant des guillemets car dans mon salt j'ai des
caractères spéciaux (* _ ) : ) :
echo -n "$chaine" | md5sum
et ça ne change rien.
> v1=$(echo -n "toto" |md5sum)
> v2=$(php -r 'print(md5("toto"));')
>
> [ "$v1" != "$v2" ] && echo "différent" || echo "idem"
> différent
>
> v1=$(echo -n "toto" |md5sum|cut -d ' ' -f 1)
> [ "$v1" != "$v2" ] && echo "différent" || echo "idem"
> idem
>
> (awk '{print $1}' marche aussi, et si tu préfère sed, c'est possible itou)
J'aimerai le faire en bash si possible. Allé j'y retourne.
Merci pour ton temps.