其他分享
首页 > 其他分享> > 内建模块-hashlib、hmac

内建模块-hashlib、hmac

作者:互联网

hashlib模块

import hashlib

md5 = hashlib.md5()
md5.update('how to use md5 in python hashlib?'.encode('utf-8'))
print(md5.hexdigest())
计算结果如下:
d26a53750bc40b38b65a520292f69306
import hashlib

sha1 = hashlib.sha1()
sha1.update('how to use sha1 in '.encode('utf-8'))
sha1.update('python hashlib?'.encode('utf-8'))
print(sha1.hexdigest())
* 比SHA1更安全的算法是SHA256和SHA512,不过越安全的算法不仅越慢,而且摘要长度更长
* 也有可能两个不同的数据通过某个摘要算法得到了相同的摘要,因为任何摘要算法都是把无限多的数据集合映射到一个有限的集合内。这种情况称为碰撞,但是出现的概率不大。

hmac模块

>>> import hmac
>>> message = b'Hello, world!'
>>> key = b'secret'
>>> h = hmac.new(key, message, digestmod='MD5')
>>> # 如果消息很长,可以多次调用h.update(msg)
>>> h.hexdigest()
'fa4ee7d173f2d97ee79022d1a7355bcf'

标签:hashlib,哈希,摘要,口令,算法,模块,hmac,MD5
来源: https://blog.csdn.net/xiadanying/article/details/116602774