day⑥:hashlib模块
用于加密相关的操作,3.x里代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法
#!/usr/bin/env python
#coding=utf-8
# import hashlib
# a=hashlib.md5()
# a.update(b"abc")
# a.update(b"def")
#
# print(a.digest()) #二进制
# print(a.hexdigest()) #16进制
#
#
# b=hashlib.md5()
# b.update(b"abc")
# b.update(b"def")
#
# print(b.digest()) #二进制
# print(b.hexdigest()) #16进制
import hashlib
# ######## md5 ########
hash = hashlib.md5()
hash.update(b'admin')
print(hash.hexdigest())
# ######## sha1 ######## #sha1还可以通过递归暴力破解,官方建议不要用sha1, sha2之后的是破解不了的
hash = hashlib.sha1()
hash.update(b'admin')
print(hash.hexdigest())
# ######## sha256 ########
hash = hashlib.sha256()
hash.update(b'admin')
print(hash.hexdigest())
# ######## sha384 ########
hash = hashlib.sha384()
hash.update(b'admin')
print(hash.hexdigest())
# ######## sha512 ########
hash = hashlib.sha512()
hash.update(b'admin')
print(hash.hexdigest())
#还不够吊?python 还有一个 hmac 模块,它内部对我们创建 key 和 内容 再进行处理然后再加密
import hmac
a=hmac.new(b"secret_key")
a.update(b"test")
print(a.hexdigest())