一、hashlib模块的使用
hashlib是python3.x中提供的一个标准库,专门用来对数据进行hash加密的,常用的加密算法是: md5、shaxxx
hash算法:
hash算法又叫摘要算法或者离散算法
二、hash(md5)加密的特点
a. 同样的内容使用相同的算法加密之后的结果是一样的
b. 加密之后的结果不可逆
c. 不管原数据的大小或者长度是多少,使用同一种加密算法得到的密文(摘要)的长度是一样的
三、生成摘要(对数据加密)
- 根据算法创建hash对象
hashlib.算法名() - 使用hash对象对指定的数据加密
hash对象.update(数据) - 对指定的数据加密(这儿的数据必须是二进制数据,类型是bytes) - 获取摘要(获取加密后的密文)
四、hash加密的应用
- 应用1:hash加密
- 应用2:生成数据摘要,确保原数据的完整性
补充:
二进制和字符串之间的相互转换
-
字符串 -> 二进制
bytes(字符串, encoding=‘utf-8’)
字符串.encode() -
二进制 -> 字符串
str(二进制, encoding=‘utf-8’)
二进制.decode(encoding=‘utf-8’)