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?

171
demandé sur hendry 2010-07-29 03:41:05

6 réponses

echo affiche normalement une nouvelle ligne, qui est supprimée avec -n. Essayez ceci:

echo -n foobar | sha256sum
249
répondu mvds 2015-06-03 02:46:20

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.

65
répondu Farahmand 2014-04-12 07:48:15

Si la commande sha256sum n'est pas disponible (sur mavericks par exemple), vous pouvez utiliser :

echo -n "foobar" | shasum -a 256

39
répondu Sucrenoir 2014-01-30 17:37:01

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".

26
répondu Nicholas Knight 2010-07-28 23:48:14

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.

7
répondu Thomas Owens 2010-07-28 23:43:44

Echo produit un caractère de retour à la ligne de fin qui est également haché. essayez:

/bin/echo -n foobar | sha256sum 
7
répondu Nordic Mainframe 2010-07-28 23:44:54