> Erlang中文手册 > md5_update/2 用一个数据来更新一个 MD5 值

erlang:md5_update/2

用一个数据来更新一个 MD5 值

用法:

erlang:md5_update(Context, Data) -> NewContext

用一个数据 Data 来更新一个 MD5 值,并返回一个新的上下文 NewContext。

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

erlang:md5_update/2 经常跟 erlang:md5_init/0、erlang:md5_final/1 共同计算出一个消息摘要值,该值跟直接用 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 里的介绍。