Génération d'un sha256 à partir de la ligne de commande Linux [fermé]
Je sais que la chaîne "foobar" génère le hachage SHA 256 c3ab8ff13720e8ad9047dd39466b3c8974e592c2fa383d4a3960714caef0c4f2
en utilisant
http://hash.online-convert.com/sha256-generator
Cependant le shell de ligne de commande:
hendry@x201 ~$ echo foobar | sha256sum
aec070645fe53ee3b3763059376134f058cc337247c978add178b6ccdfb0019f -
Génère un hachage différent. Ce qui me manque?
6 réponses
echo
affiche normalement une nouvelle ligne, qui est supprimée avec -n
. Essayez ceci:
echo -n foobar | sha256sum
Si vous avez installé openssl
, vous pouvez utiliser:
echo -n "foobar" | openssl dgst -sha256
Pour les autres algorithmes, vous pouvez remplacer -sha256
avec -md4
, -md5
, -ripemd160
, -sha
, -sha1
, -sha224
, -sha384
, -sha512
ou -whirlpool
.
Si la commande sha256sum n'est pas disponible (sur mavericks par exemple), vous pouvez utiliser :
echo -n "foobar" | shasum -a 256
echo -n
fonctionne et est peu susceptible de disparaître en raison de l'utilisation historique massive, mais selon les versions récentes de la norme POSIX , les nouvelles applications conformes sont " encouragées à utiliser printf
".
Je crois que echo
génère un retour à la ligne de fin. Essayez d'utiliser -n
comme paramètre pour faire écho pour ignorer le retour à la ligne.
Echo produit un caractère de retour à la ligne de fin qui est également haché. essayez:
/bin/echo -n foobar | sha256sum