hashlib和hmac模块

1. 使用md5加密

import hashlib

m = hashlib.md5()
m.update(b"guangzhou")
print(m.hexdigest())
# d9d7a94326214718676cbf3f8c281141
m.update(b"shenzhen")
print(m.hexdigest())
# 8df7afb2e9be9bc19f8e79328eb8f0e3
m2 = hashlib.md5()
m2.update(b"guangzhoushenzhen")        # 将上面m的两次update内容拼接在一起
print(m2.hexdigest())
# 8df7afb2e9be9bc19f8e79328eb8f0e3     # 可以发现这里的MD5值和上面的一样,说明m的第二次update生成的值内容包括第一次的内容

 

2. 使用sha512加密

import hashlib

s512 = hashlib.sha3_512()
s512.update(b"guangzhoushenzhen")
print(s512.hexdigest())
# eab6ed733c356c87044b6ade0e471e842a290571f7c9c5b95b0d5f3d6a5b25b6135059b75ebfad070b46c09c8849523323522b9ce72bdd70497e0ceff5d21cb8

 

3. 使用hmac加密(它对我们创建 key和内容再进行处理然后再加密,更加安全)

import hmac

h = hmac.new("天王盖地虎".encode(encoding="utf-8"),"宝塔镇河妖".encode(encoding="utf-8"))
print(h.hexdigest())   #16进制加密
# 5f90dcd2211cd11601ce05195e3c5232

 

posted @ 2017-08-17 12:01  炉山假面目  阅读(127)  评论(0编辑  收藏  举报