一、hashlib模块
用于加密相关的操作,主要提供SHA1, SHA224, SHA256, SHA383, SHA512 ,MD5算法
###摘要算法#######
不定长的字符串转化为定长的密文,但是密文不能转为明文
import hashlib obj = hashlib.md5() obj.update("hello". encode("utf-8")) print(obj.hexdigest())
但是这样加密容易被破解,即通过撞库可以反解,可以自定义K来再做加密
import hashlib obj = hashlib.md5("sb".encode("utf-8")) #自定义k obj.update("hello". encode("utf-8")) print(obj.hexdigest())
注意:
import hashlib obj = hashlib.md5() obj.update("hello". encode("utf-8")) obj.update("jinling". encode("utf-8")) print(obj.hexdigest()) #a5db63877d165ac8337de580c9757b91
等同于:
import hashlib obj = hashlib.md5() obj.update("hellojinling". encode("utf-8")) print(obj.hexdigest()) #a5db63877d165ac8337de580c9757b91
二、sha256加密也很常用,和md5用法一样
import hashlib obj = hashlib.sha256() obj.update("hellojinling". encode("utf-8")) print(obj.hexdigest())