关闭。这个问题不符合 Stack Overflow guidelines 。它目前不接受答案。












想改善这个问题吗?更新问题,以便堆栈溢出为 on-topic

5年前关闭。



Improve this question




在 Erlang 中计算 HMAC-SHA1 的任何示例或库?

我试过加密模块,但显然不完全匹配。有什么例子吗?

最佳答案

为了扩展上一个答案,这里是 Python 中的 hmac 模块,它使用 SHA-1 算法和 key “hello”和消息“world”:

>>> import hashlib
>>> import hmac
>>> hmac.HMAC(key='hello', msg='world', digestmod=hashlib.sha1).hexdigest()
'8a3a84bcd0d0065e97f175d370447c7d02e00973'

这是 Erlang 中的等价物。我会使用一种更有效的方法将二进制 MAC 转换为典型代码中的十六进制摘要,但为了简洁起见,我使用了这个方法:
1> crypto:start().
ok
2> <<Mac:160/integer>> = crypto:hmac(sha, <<"hello">>, <<"world">>).
<<138,58,132,188,208,208,6,94,151,241,117,211,112,68,124,
  125,2,224,9,115>>
3> lists:flatten(io_lib:format("~40.16.0b", [Mac])).
"8a3a84bcd0d0065e97f175d370447c7d02e00973"

关于Erlang计算HMAC-SHA1的例子?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4193543/

10-16 10:31