python-模块-hashlib

发布时间:2024年01月14日

1、hashlib模块介绍

  • Python?hashlib?模块主要用于进行哈希(hash)操作。
  • 哈希(Hash)是一种将任意长度的输入数据映射为固定长度输出数据的算法。
  • hashlib 模块提供了常见的哈希算法的实现,如 MD5、SHA-1、SHA-256 等。

2、hashlib模块的使用

2.1 hashlib是内置模块,直接导入
from hashlib import md5 , sha256 , sha512
2.2 hashlib的方法和作用

????????一个哈希对象只能操作update一个字节串,获取hexdigest一个加密后的字符串!

hashlib的方法作用
对象创建hashlib.hash算法名('字节串')创建hash对象
hash对象的方法hash对象.update('字节串')生成hash值
hash对象.digest()获取hash后的字节串
hash对象.hexdigest()获取hash后的字符串

示例:把字符串‘abc’进行md5摘要加密

from hashlib import md5, sha1, sha256

data = "abc"
mdbObj = md5()
mdbObj.update(data.encode('utf-8'))
print(mdbObj.hexdigest()) # 900150983cd24fb0d6963f7d28e17f72

3、理解MD5,sha256...

  • 不论是md5,sha1,sha256...都是摘要算法,都是计算hash值,只是散列程度不同;
  • hash散列算法是不可逆的,所以不存在解密的逻辑;
  • 这些算法操作都一致,用法统一;

例: 把字符串 ‘123456’进行sha256摘要加密

from hashlib import md5, sha1, sha256

data = "123456"
#获取sha256对象
mdbObj = sha256()
#对数据data进行散列操作
mdbObj.update(data.encode('utf-8'))
#获取散列后数据
print(mdbObj.hexdigest())
# 8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92

文章来源:https://blog.csdn.net/u013805267/article/details/135586284
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。