> Erlang中文手册 > md5_final/1 完成一个 MD5 上下文的计算并返回计算后的 MD5 值

erlang:md5_final/1

完成一个 MD5 上下文的计算并返回计算后的 MD5 值

用法:

md5_final(Context) -> Digest

完成一个 MD5 上下文的更新,并返回最后计算得出的一个 MD5 消息摘要。

Context = erlang:md5_init(),
Data = "123456",
NewContext = erlang:md5_update(Context, Data),
erlang:md5_final(NewContext).

erlang:md5_final/1 跟 erlang:md5_init/0、erlang:md5_update/2 共同计算出的消息摘要值跟直接用 erlang:md5/1 计算出的消息摘要值一样:

Context = erlang:md5_init(),
Data = "123456",
NewContext = erlang:md5_update(Context, Data),
MD5Value1 = erlang:md5_final(NewContext),
MD5Value2 = erlang:md5(Data),
MD5Value1 =:= MD5Value2.

Erlang 输出的 md5 值是 一个 16 位二进制,需要额外转换才是我们平时看到的 32 位字符串,具体请查看 erlang:md5/1 里的介绍。