hashlib模块 加密

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进制格式hash
10 print(len(m.hexdigest())) #16进制格式hash
11 
12 import hashlib
13 
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 hmac
2 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)
posted @ 2018-04-19 10:11  人无远虑  阅读(141)  评论(0编辑  收藏  举报