Mac OS X と Linux で OpenSSL を使用して入力を再ハッシュする

Mac OS X と Linux で OpenSSL を使用して入力を再ハッシュする

Linux 上のスクリプトで次のようなコマンドを実行できます。

openssl dgst -sha256 \
             -mac HMAC \
             -macopt hexkey:xxxx

しかし、このコマンドはMac OSではエラーで失敗します

不明なオプション '-mac'

マニュアルページやオンラインで調べてみましたが、Mac バージョンの openssl を使用して同様のタスクを実行する方法が見つかりません。

答え1

opensslこれはmacOSのどのバージョンですか?古いリリース(10.11)には、失敗する古い

$ /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) 経由でインストールできる可能性があります。

関連情報