用Erlang计算MD5哈希

sad*_*sad 1 erlang hash hex md5 cryptography

我一直试图用erlang编写md5-digest算法,却不知道如何实现此步骤,

1. creating 16 octet MD5 hash of X where X is a string.
Run Code Online (Sandbox Code Playgroud)

有人可以帮忙吗?

这是否意味着:

Create a 16 byte(32-hex digits) of base - 8(octet) which is md5 of X. ?
Run Code Online (Sandbox Code Playgroud)

谢谢!

Ham*_*ani 5

使用crypto模块和hash功能,您可以计算出MD5,它是一个16字节的摘要算法。

crypto:hash(类型,数据)->摘要

Type = md5

Data = iodata()

Digest = binary()
Run Code Online (Sandbox Code Playgroud)

它获得一个md5原子作为Type和一个iodata()Data,并返回一个binary()Digest。以下代码段是一个简单的示例:

crypto:hash(md5, "put-your-string-here").
Run Code Online (Sandbox Code Playgroud)

查看加密文档以获取更多信息。

同样,为了将返回的二进制值转换为十六进制字符串,标准库中没有函数,但是它只要几行代码就很简单,该线程对此进行了很好的解释。