首页 > 其他 > 详细

06.hashlib

时间:2021-03-28 12:56:48      阅读:17      评论:0      收藏:0      [点我收藏+]

01.hashlib

用于加密相关的操作,代替了md5模块和sha模块
主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法
import hashlib

#1 ######## md5 ########
# 目的:实现对b"HelloIt‘s me" 这句话进行md5加密
m = hashlib.md5()            # 1)生成一个md5加密对象
m.update(b"Hello")          # 2)使用m对 b"Hello" 加密
m.update(b"It‘s me")        # 3) 使用m对 b"It‘s me"加密
print(m.hexdigest())         # 4) 最终加密结果就是对b"HelloIt‘s me"加密的md5值:5ddeb47b2f925ad0bf249c52e342728a

#2 ######## sha1 ########
hash = hashlib.sha1()
hash.update(badmin)
print(hash.hexdigest())

#3 ######## sha256 ########
hash = hashlib.sha256()
hash.update(badmin)
print(hash.hexdigest())

#4 ######## sha384 ########
hash = hashlib.sha384()
hash.update(badmin)
print(hash.hexdigest())

#5 ######## sha512 ########
hash = hashlib.sha512()
hash.update(badmin)
print(hash.hexdigest())

02.添加自定义key

以上加密算法虽然依然非常厉害,但时候存在缺陷

即:通过撞库可以反解。所以,有必要对加密算法中添加自定义key再来做加密。

######### hmac ########
import hmac
h = hmac.new(b"123456","真实要传的内容".encode(encoding="utf-8"))
print(h.digest())
print(h.hexdigest())
# 注:hmac是一种双重加密方法,前面是加密的内容,后面才是真实要传的数据信息

06.hashlib

原文:https://www.cnblogs.com/xiaoxiamiaichiyu/p/14588084.html

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