Я знаю, що рядок "foobar" генерує хеш SHA-256 c3ab8ff13720e8ad9047dd39466b3c8974e592c2fa383d4a3960714caef0c4f2
за допомогою
http://hash.online-convert.com/sha256-generator
Однак оболонка командного рядка:
hendry@x201 ~$ echo foobar | sha256sum
aec070645fe53ee3b3763059376134f058cc337247c978add178b6ccdfb0019f -
Створює інший хеш. Що я пропускаю?
< foobar
- не те саме, що echo foobar |
. Еквівалент echo foobar |
був би, sha256sum <<< foobar
але це додає нову лінію до foobar так само, як echo
.
openssl dgst -sha256 foobar
працює для мене на MacOS High Sierra, тоді як echo -n foobar | openssl dgst -sha256
дав неправильну відповідь.
sha256sum < foobar
. Немає необхідності в коті , ехо , printf , ... Дивіться також Марне використання кота?