hashlib模块
用于加密相关的操作,3.x里代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法
1 import hashlib 2 3 m = hashlib.md5() 4 m.update(b"Hello") 5 m.update(b"It's me") 6 print(m.digest()) 7 m.update(b"It's been a long time since last time we ...") 8 9 print(m.digest()) #2进制格式hash10 print(len(m.hexdigest())) #16进制格式hash11 12 import hashlib13 14 m2 =hashlib.md5()15 m2.update('爆胎镇河妖'.encode(encoding='utf-8')) ##中文需要.encode(encoding='utf-8')16 print(m2.hexdigest)
1 import hashlib 2 3 # ######## md5 ######## 4 5 hash = hashlib.md5() 6 hash.update('admin') 7 print(hash.hexdigest()) 8 9 # ######## sha1 ########10 11 hash = hashlib.sha1()12 hash.update('admin')13 print(hash.hexdigest())14 15 # ######## sha256 ########16 17 hash = hashlib.sha256()18 hash.update('admin')19 print(hash.hexdigest())20 21 22 # ######## sha384 ########23 24 hash = hashlib.sha384()25 hash.update('admin')26 print(hash.hexdigest())27 28 # ######## sha512 ########29 30 hash = hashlib.sha512()31 hash.update('admin')32 print(hash.hexdigest())33
还不够吊?python 还有一个 hmac 模块,它内部对我们创建 key 和 内容 再进行处理然后再加密散列消息鉴别码,简称HMAC,是一种基于消息鉴别码MAC(Message Authentication Code)的鉴别机制。 使用HMAC时,消息通讯的双方,通过验证消息中加入的鉴别密钥K来鉴别消息的真伪;一般用于网络通信中消息加密,前提是双方先要约定好key,就像接头暗号一样,然后消息发送把用key把消息加密,接收方用key + 消息明文再加密,拿加密后的值 跟 发送者的相对比是否相等,这样就能验证消息的真实性,及发送者的合法性了。
1 import hmac2 h=hmac.new('天王盖地虎'.encode(encoding='utf-8'),'小鸡炖蘑菇'.encode(encoding='utf-8'))3 print(h.digest())4 print(h.hexdigest())
import hashlib m2 =hashlib.md5() m2.update('爆胎镇河妖'.encode(encoding='utf-8')) print(m2.hexdigest)