首页 > 其他 > 详细

hashlib模块

时间:2019-07-07 00:28:22      阅读:109      评论:0      收藏:0      [点我收藏+]
1、什么叫hash:hash是一种算法(3.x里代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法),该算法接受传入的内容,经过运算得到一串hash值
2、hash值的特点是:
 2.1 只要传入的内容一样,得到的hash值必然一样=====>要用明文传输密码文件完整性校验
 2.2 不能由hash值返解成内容=======》把密码做成hash值,不应该在网络传输明文密码
 2.3 只要使用的hash算法不变,无论校验的内容有多大,得到的hash值长度是固定的

hashlib模块

import hashlib
# 基本使用
cipher = hashlib.md5(‘需要加密的数据的二进制形式‘.encode(‘utf-8‘))
print(cipher.hexdigest()) # 加密结果码

# 加盐
cipher = hashlib.md5()
cipher.update(‘前盐‘.encode(‘utf-8‘))
cipher.update(‘需要加密的数据‘.encode(‘utf-8‘))
cipher.update(‘后盐‘.encode(‘utf-8‘))
print(cipher.hexdigest()) # 加密结果码

# 其他算法
cipher = hashlib.sha3_256(b‘‘)
print(cipher.hexdigest())
cipher = hashlib.sha3_512(b‘‘)
print(cipher.hexdigest())

hmac模块

# 必须加盐
cipher = hmac.new(‘盐‘.encode(‘utf-8‘))
cipher.update(‘数据‘.encode(‘utf-8‘))
print(cipher.hexdigest())

hashlib模块

原文:https://www.cnblogs.com/zhangdajin/p/11144536.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!