hashlib模块
HASH
- 一般翻译成散列,也可以叫哈希。
- 把任意长度的输入通过散列算法变换成固定的长度。
- 该转换是一种压缩映射
MD5
-
输入任意长度的信息,经过处理。输出为128位的信息(数字指纹)
-
特点
- 压缩性:任意长度的数据,都是加密成固定的长度 32长度,128位
- 抗修改性:改动任意一个字符,都会改变MD5值
- 抗碰撞:找到一个具有相同MD5的值非常困难
- 不可逆:散列函数。在计算中。原文的部分信息是丢失了的
-
用途:收发邮件、下载、防止看明文,数字指纹
-
使用
import hashlib
m = hashlib.md5()
m.update('小喵喵'.encode())
m = m.hexdigest()
print(m) # b771db799b384a68cc25fb3ea9bc2f75
n = hashlib.md5('python'.encode('utf-8'))
n.update('小喵喵'.encode())
n = n.hexdigest()
print(n) # fe2a4fe83d119422997513b6f704ab5f