灵虚御风
醉饮千觞不知愁,忘川来生空余恨!

导航

 
""""""
"""
hashlib 模块 加密的模块

"""
# # 这个加密的过程是无法解密的
import hashlib

md = hashlib.sha3_256() # # 生成一个帮你造密文的对象

md.update('hello'.encode('utf-8')) # 网对象里传明文数据
# update 只能接受 bytes类型的数据

md.update(b'helll')

# 获取明文数据对应的密文
print(md.hexdigest())
"""
4ecbb2a83756f6420e383f6e31a70947ab0ede3d4ff4aaf74199e1473d1487b3

"""

# 撞库
"""
1.不用的算法 使用方法是相同的
密文的长度越长 内部对应的算法越复杂
但是
1.时间消耗越长
2.占用空间更大
通常情况下使用md5算法 就可以足够了
"""
# import hashlib
# # 传入的内容 可以分多次传入 只要传入的内容相同 那么生成的密文肯定相同
# md = hashlib.md5()
# md.update(b'areyouok?')
# md.update(b'are')
# md.update(b'you')
# md.update(b'ok?')

# print(md.hexdigest()) # 408ac8c66b1e988ee8e2862edea06cc7
# 408ac8c66b1e988ee8e2862edea06cc7
"""
hashlib模块应用场景
1.密码的密文存储
2.校验文件内容是否一致
"""


"""
加盐处理,防止解密
"""
import hashlib
md = hashlib.md5()
# 公司自己在每一个需要加密的数据之前 先手动添加一些内容
## 加盐处理
md.update(b'heekdf')

# 真正的内瓯让
md.update(b'hahahha')

print(md.hexdigest())



# 动态加盐

# import hashlib
#
# def get_md5(data):
# md = hashlib.md5()
# md.update('加盐'.encode('utf-8'))
# md.update(data.encode('utf-8'))
# return md.hexdigest()
#
#
# password = input('password>>>:')
# res = get_md5(password)
# print(res)

posted on 2022-03-24 18:05  没有如果,只看将来  阅读(10)  评论(0编辑  收藏  举报