Python:用于加密字符串的 hashlib 模块
最编程
2024-03-06 13:47:17
...
本人已参与【新人创作礼】活动,一起开启掘金创作之路。本文首发于****
hello,大家好,我是wangzirui32,今天我们来学习如何使用hashlib模块加密字符串。
开始学习吧!\
学习目录
- 1. hashlib模块介绍
- 2. 引入hashlib模块
- 3. md5加密
- 4. SHA1加密
- 5. SHA224加密
- 6. SHA256加密
- 7. SHA384加密
- 8. SHA512加密
- 9. new对象
1. hashlib模块介绍
这里引用了Python官方文档的解释:
这个模块针对不同的安全哈希和消息摘要算法实现了一个通用的接口。包括 FIPS 的 SHA1, SHA224, SHA256, SHA384和SHA512 (定义于 FIPS 180-2) 算法,以及 RSA 的 MD5 算法( 定义于 Internet RFC 1321)。术语“安全哈希”和“消息摘要”是可互换的,较旧的算法被称为消息摘要,现代术语是安全哈希。
2. 引入hashlib模块
hashlib模块是Python内置模块,无需pip安装,引入方式如下:
import hashlib
3. md5加密
import hashlib
md5 = hashlib.md5()
md5.update("md5加密".encode("UTF-8"))
print(md5.hexdigest())
我们来逐行分析代码:
-
md5 = hashlib.md5()
创建md5加密对象。 -
md5.update("md5加密".encode("UTF-8"))
往md5加密对象加入"md5加密"字符串,再使用UTF-8格式进行编码。 -
print(md5.hexdigest())
输出加密对象的16进制摘要。
运行代码,输出:
8a4eb58ce7c4b8dd4f78d507592dbaa2
4. SHA1加密
import hashlib
sha1 = hashlib.sha1()
sha1.update("sha1加密".encode("UTF-8"))
print(sha1.hexdigest())
5. SHA224加密
import hashlib
sha224 = hashlib.sha224()
sha224.update("sha224加密".encode("UTF-8"))
print(sha224.hexdigest())
6. SHA256加密
import hashlib
sha256 = hashlib.sha256()
sha256.update("sha256加密".encode("UTF-8"))
print(sha256.hexdigest())
7. SHA384加密
import hashlib
sha384 = hashlib.sha384()
sha384.update("sha384加密".encode("UTF-8"))
print(sha384.hexdigest())
8. SHA512加密
import hashlib
sha512 = hashlib.sha512()
sha512.update("sha512加密".encode("UTF-8"))
print(sha512.hexdigest())
9. new对象
new对象支持以上各种加密方式,代码:
import hashlib
md5 = hashlib.new("md5")
md5.update("new对象".encode("UTF-8"))
print(md5.hexdigest())
hashlib.new()
对象需要一个参数,为加密方式,不区分大小写。
好了,今天的课程就到这里,我是wangzirui32,喜欢的可以点个收藏和关注,我们下次再见!
推荐阅读
-
Python(phone) 模块用于获取手机号码的归属地、区号、运营商等信息
-
诱变突变技术 - 用于处理音频元数据的 Python 模块
-
Python 内置方法,用于实现字符串的密钥加密和解密(推荐使用)
-
用于 python 常用模块的虚拟环境
-
库存 Python 加密解密模块 hashlib 7 种加密算法 - 前言
-
在 python 中使用 hashlib 模块的示例
-
Python3 加密(hashlib 和 hmac)模块实现
-
Python 的 hashlib 模块说明、另一个案例和计算文件哈希算法--加密哈希函数用例
-
使用 python hashlib 模块加密明文字符串,以及如何破解密码而使库崩溃
-
17 Python 标准库系列中的 hashlib 模块