python3中的md5加密,在hashlib模块中
import hashlib m5 = hashlib.md5() # 生成HASH对象,class '_hashlib.HASH' string = 'abcde' m5.update(string.encode('utf8')) md5value = m5.hexdigest() print(md5value)
HASH对象的 update方法,只能对二进制字节流进行加密,python3中,字符串默认为Unicode编码,需要将字符串encode后才能加密。
对包含中文的字符串,encode(”gbk”) 和 encode(”utf8″),md5后的值不一样。只有纯使用ASCII的字符的字符串, 使用GBK和UTF8时md5加密值是一样的。