[Вопрос перенесен сюда со stackoverflow, так как они сказали, что он не по теме.]
Мне нужен список/обзор программ командной строки.роднойв macOS, позволяющую вычислять контрольные суммы.
Мне известно следующее:
CRC-32:/usr/bin/crc32
MD2: /usr/bin/openssl dgst -md2
[Примечание: unknown option '-md2'
в моей системе возникает ошибка]
МД4:/usr/bin/openssl dgst -md4
MD5: /sbin/md5
или/usr/bin/openssl dgst -md5
МДЦ-2:/usr/bin/openssl dgst -mdc2
RIPEMD-160:/usr/bin/openssl dgst -ripemd160
ША:/usr/bin/openssl dgst -sha
SHA-1: /usr/bin/shasum -a 1
или/usr/bin/openssl dgst -sha1
SHA-224: /usr/bin/shasum -a 224
или/usr/bin/openssl dgst -sha224
SHA-256: /usr/bin/shasum -a 256
или/usr/bin/openssl dgst -sha256
SHA-384: /usr/bin/shasum -a 384
или/usr/bin/openssl dgst -sha384
SHA-512: /usr/bin/shasum -a 512
или/usr/bin/openssl dgst -sha512
Примечание: Согласноopenssl
страница руководстваBLAKE2B и BLAKE2S также можно рассчитать, но мне не удалось сделать это на macOS, ни с /usr/bin/openssl
версией по умолчанию, ни с самодельной /usr/local/bin/openssl
.
Это те, кого я знаю. Любые другиероднойспособы расчета дополнительных контрольных сумм из командной строки, например Adler-32, CRC-64, GOST, Whirlpool и т. д.?
Я знаю, что вы всегда можете установить такие программы, какрхашв /usr/local/bin
, но я пытаюсь сначала рассмотреть собственные методы. Это может также включать написание собственных функций с использованием собственныхбиблиотеки, как zlib
у Адлера-32.
решение1
Sha256 — это алгоритм по умолчанию openssl. OpenSSL-1.1.0 включает алгоритмы дайджестов сообщений blake2b и blake2s. Вы можете использовать эту команду, чтобы увидеть список поддерживаемых алгоритмов.
openssl list --digest-commands
Если вы используете последнюю версию openssl-1.1.0b (29 сентября 2016 г.), вы можете получить следующее:
blake2b512 blake2s256 gost md4
md5 mdc2 rmd160 sha1
sha224 sha256 sha384 sha512
Это значит, что вы можете использовать blake2b или blake2s как обычно.
openssl dgst -blake2b512 /path/to/file
openssl dgst -blake2s256 /path/to/file