hashlib模块和hmac模块
hashlib模块
一、导入方式
import hashlib
二、作用
无论你丢什么字符串,他都会返回一串 固定长度的字符串
三、模块功能
3.1 经常使用
import hashlib
m = hashlib.md5() #生成一个对象
m.update(b'123')
m.update(b'456')
print(m.hexdigest())
--------------------------------------------------------
e10adc3949ba59abbe56e057f20f883e
import hashlib
m = hashlib.md5() #生成一个对象
m.update(b'123456')
print(m.hexdigest())
----------------------------------------------------------
e10adc3949ba59abbe56e057f20f883e #两个字符串都一样
注意:
- 变成固定的字符串
- 相同的字符串哈希后结果一样
- 叠加性
hmac模块
一、导入方式
import hmac
二、作用
对密码加密,可以加盐
三、模块功能
3.1 经常使用
# 1
import hmac
m = hmac.new(b'a') #加盐
m.update(b'123')
m.update(b'456')
print(m.hexdigest())
--------------------------------------------------------
3e391a1d7bf574cec59679244a2904fe
# 2
import hmac
m = hmac.new(b'a')
m.update(b'123456')
print(m.hexdigest())
----------------------------------------------------------
3e391a1d7bf574cec59679244a2904fe
# 3
import hmac
m = hmac.new(b'abc') #与1,2不同,他的字符串就不同
m.update(b'123456')
print(m.hexdigest())
------------------------------------------------------------
8c7498982f41b93eb0ce8216b48ba21d