python中hashlib库加密事件(md5)
1、hashlib库实战
hashlib是设计安全散列和消息摘要,提供多个不同的加密算的接口,如:SHA1、SHA224、SHA256、SHA384、SHA512、MD5等。
针对---字符串的基本用法:
import hashlib
m=hashlib.md5()
m.update('heiheihei'.encode('utf-8'))
print(m.hexdigest())#返回十六进制数字字符串
输出结果:
针对---字典加密的用法:
from urllib import parse import hashlib import time def sign():
dict1={'name':'lyl','age':18,'sex':'girl','address':'xian','time':time.time()} #'time':time.time()不加时间每次的加密那个数字都一样,加了时间就每次加密不一样。
data=sorted(dict1.items(),key=lambda item:item[0]) #sored()对dict1里面的{key:value}进行排序,排序不是永久的,sort()排序是永久改变的,dict1.items()待排序的对象
#key=lambda item:item[0]为对前面的对象中的第二维数据(即value)的值进行排序,key=lambda变量:变量[维数] 。维数可以按照自己的需要进行设置
data1=parse.urlencode(data) #加密
m=hashlib.md5() #创建hash对象,md5(message-Digest Algorithm 5):消息摘要算法,得出一个128位的密文
m.update(data1.encode('utf-8')) #更新data1对象以字符串参数的形式 print(m.hexdigest()) #返回十六进制数字字符串 sign()
输出结果: