Python-hashlib模块
一、hashlib提供了常用的摘要算法,如SHA1、MD5等等。MD5速度很快,生成固定的128 bit字节,通常用一个32位的16进制字符串表示
二、生成MD5摘要
import hashlib def message_md5(str1): md = hashlib.md5() #创建一个md5对象 md.update(str1.encode()) #将字符串转化为二进制,再生成128位二进制摘要 res = md.hexdigest() #将摘要转化为32位16进制 return res res = message_md5('123456') print(res) #原始数据很长时,可分别加密 def message2_md5(str1, str2): md = hashlib.md5() md.update(str1.encode()) md.update(str2.encode()) res = md.hexdigest() return res res = message2_md5('123', '456') #结果和 message_md5('123456')一致 print(res) #加盐,先修改原始数据再加密,使得其他人在知道原始数据的情况下也无法得到密文 def message1_md5(str1, salt='hello'): str1 = str1 + salt md = hashlib.md5() md.update(str1.encode()) res = md.hexdigest() return res res = message1_md5('123456') print(res)