![перефразирование ввода с помощью openssl в mac os x по сравнению с linux](https://rvso.com/image/1552366/%D0%BF%D0%B5%D1%80%D0%B5%D1%84%D1%80%D0%B0%D0%B7%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%B2%D0%B2%D0%BE%D0%B4%D0%B0%20%D1%81%20%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E%20openssl%20%D0%B2%20mac%20os%20x%20%D0%BF%D0%BE%20%D1%81%D1%80%D0%B0%D0%B2%D0%BD%D0%B5%D0%BD%D0%B8%D1%8E%20%D1%81%20linux.png)
Я могу выполнить следующую команду в своем скрипте на Linux:
openssl dgst -sha256 \
-mac HMAC \
-macopt hexkey:xxxx
Но эта команда не выполняется на Mac OS с ошибкой
неизвестная опция '-mac'
Я пробовал просматривать страницы руководства и интернет, но не могу найти способ выполнить подобную задачу с помощью версии OpenSSL для Mac?
решение1
Какая это версия macOS? В более старых версиях (10.11) есть старый, openssl
который не работает
$ /usr/bin/openssl version
OpenSSL 0.9.8zh 14 Jan 2016
$ /usr/bin/openssl dgst -sha256 -mac HMAC -macopt hexkey:DEADBEEF
unknown option '-mac'
...
в то время как более новые (10.13) вместо этого имеют LibreSSL, который не выдает ошибку для вашей команды. На старых компьютерах Mac вы, возможно, могли бы установить openssl
через систему портов (Fink, Homebrew, MacPorts).