hashlib模块

import hashlib

'''
用于加密相关的操作,3.x里代替了md5模块和sha模块,主要提供SHA1,SHA224,SHA256,SHA384,SHA512,MD5算法
也称摘要算法,把明文变为密文,但不能逆向,也就是说密文不能变回明文
'''

obj = hashlib.md5('asddsa'.encode('utf-8')) # md5加盐,在这里可以自行定义,所以可以更好的防止撞库
obj.update('admin'.encode('utf-8'))
print(obj.hexdigest()) # 'admin':21232f297a57a5a743894a0e4a801fc3把不定长明文变成定长(32位)密文,一一对应
# md5加盐后的结果:9aa1b9a4e800c06afb61006a9c243859;相当于'asddsaadmin'

msg = hashlib.md5()
msg.update('asddsa'.encode('utf-8'))
msg.update('admin'.encode('utf-8'))
print(msg.hexdigest()) # 9aa1b9a4e800c06afb61006a9c243859这个结果和上面md5加盐一样,下面的admin是在asddsa的基础上进行的计算,也就是'asddsaadmin'


# 用法和MD5一样,只不过位数不同,sha256是64位
f1 = hashlib.sha256('asddsa'.encode('utf-8'))
f1.update('admin'.encode('utf-8'))
print(f1.hexdigest()) # 1c76c7d2427107dbd313a66c3176d89b83f1eefcec090cf3aeeb046ffab52e9c

 

上一篇:python2.7中的字符编码问题


下一篇:今日学习笔记