md5
md5 — MD5 message digest algorithm
自2.5版弃用:改用hashlib
模块。
该模块实现了RSA的MD5消息摘要
算法的接口(另请参阅Internet RFC 1321
)。它的使用非常简单:用于new()
创建一个md5对象。现在,您可以使用该update()
方法使用任意字符串来提供此对象,并且在任何时候您都可以要求它提供迄今为止馈送给它的字符串级联的摘要
(一种强类型的128位校验和,又称“指纹”)。使用该digest()
方法。
例如,要获取字符串的摘要'Nobody inspects the spammish repetition'
:
>>> import md5
>>> m = md5.new()
>>> m.update("Nobody inspects")
>>> m.update(" the spammish repetition")
>>> m.digest()
'\xbbd\x9c\x83\xdd\x1e\xa5\xc9\xd9\xde\xc9\xa1\x8d\xf0\xff\xe9'
更浓缩:
>>> md5.new("Nobody inspects the spammish repetition").digest()
'\xbbd\x9c\x83\xdd\x1e\xa5\xc9\xd9\xde\xc9\xa1\x8d\xf0\xff\xe9'
以下值作为模块中的常量提供,并作为由new()
以下内容返回的md5对象的属性提供:
md5.digest_size
结果摘要的大小(以字节为单位)。这总是16
。
md5模块提供以下功能:
md5.new([arg])
返回一个新的md5对象。如果存在arg
,update(arg)
则会进行方法调用。
md5.md5([arg])
出于向后兼容性的原因,这是该new()
函数的替代名称。
一个md5对象有以下方法:
md5.update(arg)
用字符串arg
更新md5对象。重复的调用相当于所有参数串联的单个调用:m.update(a m.update(b)相当
于m.update(a+b)。
md5.digest()
返回传递给该update()
方法的字符串的摘要。这是一个16字节的字符串,可能包含非ASCII字符,包括空字节。
md5.hexdigest()
就像digest()
除了摘要被返回为长度为32的字符串,只包含十六进制数字。这可以用于在电子邮件或其他非二进制环境中安全地交换该值。
md5.copy()
返回md5对象的副本(“克隆”)。这可用于有效计算共享初始子字符串的字符串摘要。