Python常用模块10-Python的hashlib模块(加密md5)

一.hashlib模块介绍

基于信息安全,经常需要将一些敏感信息进行加密处理,python 3 的hashlib模块就提供了加密功能。

hashlib模块代替了Python2中的md5和sham模块,使用这个模块一般分为3步

  1. 创建一个哈希对象,使用哈希算法命名的构造函数或通用构造函数hashlib.new(name[, data])
  2. 使用哈希对象调用update()方法填充这个对象
  3. 调用digest() 或 hexdigest()方法来获取摘要(加密结果)

代码:

import hashlib

m1 = hashlib.md5()
m2 = hashlib.sha1()
m3 = hashlib.sha3_256()
m4 = hashlib.sha512()  # 不加盐
m_4 = hashlib.sha512('R'.encode('utf-8'))  # 加盐

m1.update('我正在自学Python'.encode('utf8'))  # 默认为Unicode 需要的是bit 所以需要转换
print('我正在自学Python:', m1.hexdigest())  # 十六进制返回 加密后

m2.update('我正在自学Python'.encode('utf8'))  # 默认为Unicode 需要的是bit 所以需要转换
print('我正在自学Python:', m2.hexdigest())  # 十六进制返回 加密后

m3.update('我正在自学Python'.encode('utf8'))
print('我正在自学Python:', m3.hexdigest())  # sha256 加密

m4.update('我正在自学Python'.encode('utf-8'))

print('我正在自学Python:', m4.hexdigest())

m_4.update('我正在自学Python'.encode('utf-8'))

print('我正在自学Python:', m_4.hexdigest())

测试记录:

E:\python\learn_python1\venv\Scripts\python.exe E:/python/learn_python1/hashlib_test1.py
我正在自学Python: 97297179b5da5bbe3b827b46e5471745
我正在自学Python: f619cad5a409fbd4d767d560a9acc62c2bd56ed2
我正在自学Python: 93acbbfd414efccbbb0950aa3ef038ad38f8de3d8d95c7f5459cd985d94b1d13
我正在自学Python: a2f0a08ec6a270cebd579241ee446caf6ca8c9fc66f06143d81098ced07da8092c232800d130f8be7d04197f0b7998c93a3e59461b71d2b7196347f5a63e8719
我正在自学Python: 2e2544aeaca1fbdcbf03621a8c2aa6f07c29cdc6750b278bd7ebb1035c08ad9b12e83835be50c327bedf18e8b05e06f6107b46e62f2b8e182dca5da55e06ec78

Process finished with exit code 0

参考:

1.https://blog.csdn.net/weixin_30437481/article/details/98903376

你可能感兴趣的:(Python常用模块10-Python的hashlib模块(加密md5))