python-模块-hashlib

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

你可能感兴趣的:(python-模块,python,开发语言)