字串的 MD5 雜湊值

該模組實現了許多不同安全雜湊和訊息摘要演算法的通用介面。包括 FIPS 安全雜湊演算法 SHA1,SHA224,SHA256,SHA384 和 SHA512(在 FIPS 180-2 中定義)以及 RSA 的 MD5 演算法(在 Internet RFC 1321 中定義)。

為每種型別的雜湊命名了一個建構函式方法。全部返回具有相同簡單介面的雜湊物件。例如:使用 sha1() 建立 SHA1 雜湊物件。

hash.sha1()

此模組中始終存在的雜湊演算法的建構函式是 md5()sha1()sha224()sha256()sha384()sha512()

你現在可以使用 update() 方法使用任意字串提供此物件。在任何時候你都可以使用 digest()hexdigest() 方法詢問它到目前為止連線到字串串聯的摘要。

hash.update(arg)

使用字串 arg 更新雜湊物件。重複呼叫相當於一次呼叫,並連線所有引數:m.update(a); m.update(b) 相當於 m.update(a + b)。

hash.digest()

返回到目前為止傳遞給 update() 方法的字串的摘要。這是一個 digest_size 位元組字串,可能包含非 ASCII 字元,包括空位元組。

hash.hexdigest()

digest() 類似,但摘要以雙倍長度的字串形式返回,僅包含十六進位制數字。這可用於在電子郵件或其他非二進位制環境中安全地交換值。

這是一個例子:

>>> import hashlib
>>> m = hashlib.md5()
>>> 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'
>>> m.hexdigest()
'bb649c83dd1ea5c9d9dec9a18df0ffe9'
>>> m.digest_size
16
>>> m.block_size
64

要麼:

hashlib.md5("Nobody inspects the spammish repetition").hexdigest()
    'bb649c83dd1ea5c9d9dec9a18df0ffe9'