답변1
-hmac
키를 매개변수로 전달합니다(매뉴얼 보기), 따라서 명령에는 키의 HMAC가 필요합니다 -hex
. hexkey:...
대시로 시작하지 않고 openssl
파일 이름 뒤에 옵션이 없으므로 파일 이름으로 처리되므로 다음 -out
도 파일 이름입니다.
-mac hmac
16진수 문자열로 제공된 키를 사용하여 HMAC를 얻으려면 및 를 사용해야 합니다 -macopt hexkey:<key>
. -hmac <key>
및 을 함께 사용하면 -mac hmac
작동하지 않으며 가 -macopt
필요합니다 -mac hmac
.
시험:
openssl dgst -sha256 -hmac abc <<< "message"
openssl dgst -sha256 -hmac abc -macopt hexkey:12345678 <<< "message"
openssl dgst -sha256 -mac hmac -macopt hexkey:616263 <<< "message"
perl -MDigest::HMAC=hmac_hex -MDigest::SHA=sha256 \
-le 'print(hmac_hex("message\n", "abc", \&sha256))'
제공된 모든 해시는 99592e56fcde028fb41882668b0cbfa0119116f9cf111d285f5cedb000cfc45a
무작위 온라인 HMAC 계산기의 메시지 message\n
, 키 abc
또는 616263
16진수 와 일치합니다. (여기서 끝에 개행 문자가 있음을 참고하십시오 message
.)
그래서 당신이 원하는 것 같습니다
openssl dgst -sha256 -mac hmac -macopt hexkey:$(cat mykey.txt) -out hmac.txt /bin/ps
암호화에 관해 이야기하고 있기 때문에 이것은 어렵습니다. OpenSSL은 항상 사용하기 쉬운 인터페이스를 갖고 있지 않습니다. 따라서 제 말을 그대로 받아들이는 것보다 적어도 두 번은 직접 모든 것을 확인하는 것이 좋습니다.
답변2
openssl dgst -sha256 -hmac -hex-마콥트16진수 키:$(cat mykey.txt) -out hmac.txt /bin/ps
답변3
iOS(또는 Mac OS...)를 사용 중이고 제가 글을 쓰는 데 지치셨다면 2센트입니다.
https://apps.apple.com/it/app/hmac-sha256generator/id6448465719?l=en