python hashlib模块
hashlib
hashlib主要提供字符加密功能,将md5和sha模块整合到了一起,支持md5,sha1, sha224, sha256, sha384, sha512等算法
import hashlib d = 'good' # ######## md5 ######## hash = hashlib.md5() #md5不能反解,加密是固定的,就是关系是一一对应,所以有缺陷,可以被对撞出来hash.update(bytes(d,encoding='utf-8')) #要对哪个字符串进行加密,就放这里print('md5:',hash.hexdigest()) #拿到加密字符串# md5: 755f85c2723bb39381c7379a604160d8 # ######## sha1 ######## hash = hashlib.sha1() hash.update(bytes(d,encoding='utf-8')) print('sha1:',hash.hexdigest()) # sha1: fc19318dd13128ce14344d066510a982269c241b # ######## sha256 ######## hash = hashlib.sha256() hash.update(bytes(d,encoding='utf-8')) print('sha256:',hash.hexdigest()) # sha256: 770e607624d689265ca6c44884d0807d9b054d23c473c106c72be9de08b7376c # ######## sha384 ######## hash = hashlib.sha384() hash.update(bytes(d,encoding='utf-8')) print('sha384:',hash.hexdigest()) # sha384: c3fdd9a9527ab4346895bc0c78de4a81b56b846479aea64f4b88b1efe745d6cd9b6b13f92603808b6b2e967802c10c4e # ######## sha512 ######## hash = hashlib.sha512() hash.update(bytes(d,encoding='utf-8')) print('sha512:',hash.hexdigest()) # sha512: 10259bfe1a41058e4671d05a3b962b774c4b16946b4040bc055059d1859d5f15ec4d7f01ca3f7561632d00add6122d337022a151174e5b9cebf430254b8e9fa7
注意:hashlib 加密的字符串类型为二进制编码,直接加密字符串会报错
常用方法
- hash.update(arg) 以字符串为参数更新哈希对象
- hash.digest() 返回摘要,作为二进制数据字符串值,
- hash.hexdigest() 返回摘要,作为十六进制数据字符串值,
- hash.copy() 复制

浙公网安备 33010602011771号