MD5

摘要&加密算法
【1】摘要算法:一切从MD5开始
MD5是一个非常常见的摘要(hash)逻辑.其特点就是小巧.速度快.极难被破解.所以,md5依然是国内非常多的互联网公司选择的密码摘要算法

1.这玩意不可逆.所以.摘要算法就不是一个加密逻辑.
2.相同的内容计算出来的摘要是一样的
3.不同的内容(哪怕是一丢丢丢丢丢不一样)计算出来的结果差别非常大

在数学上.摘要其实计算逻辑就是hash.
hash(数据)=> 数字

1.密码
2.一致性检测

md5的python实现

from hashlib import md5

obj = md5()
obj.update('123456'.encode('utf-8'))# update要的是bytes类型

bs = obj.hexdigest()
print(bs)

加盐

from hashlib import md5

obj = md5(b"dddddd") # 加盐
obj.update('123456'.encode('utf-8'))

bs = obj.hexdigest()
print(bs)

还可以分开update
作用是做文件一致性的时候,一次性做大文件的时候,内存吃不消,可以分开做

from hashlib import md5

obj = md5()

data01 = "123"
obj.update(data01.encode('utf-8'))

data02 = "456"
obj.update(data02.encode('utf-8'))
# 这个时候 就是和直接123456的结果是一样的
bs = obj.hexdigest()
print(bs)

我们有时候也会使用其他的摘要加密方式,我们只是引入

from hashlib import md5, sha1, sha256, sha512
分别实例化 就OK了 其他的都不变
posted @ 2024-07-15 21:50  流年中渲染了微笑  阅读(10)  评论(0编辑  收藏  举报