欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

Python 学习] 基础 - 常用模块 - hashlib 模块:常用哈希算法,如 MD5、SHA1、SHA256 等。计算

最编程 2024-03-06 14:32:35
...

Python中的hashlib模块提供了常见的哈希算法,如MD5、SHA1、SHA256等。
使用hashlib模块可以方便地计算字符串或文件的哈希值,常用于密码加密、数据完整性校验等场景。

以下是hashlib模块中一些常见哈希算法的用法:
在实际应用中,可以根据需要选择合适的哈希算法。
1.MD5哈希算法


import hashlib

# 创建一个md5对象
m = hashlib.md5()

# 向md5对象中添加数据
data = "Hello, World!".encode('utf-8')
m.update(data)

# 获取哈希值
result = m.hexdigest()
print("MD5哈希值:", result)

2.SHA1哈希算法

import hashlib

# 创建一个sha1对象
s = hashlib.sha1()

# 向sha1对象中添加数据
data = "Hello, World!".encode('utf-8')
s.update(data)

# 获取哈希值
result = s.hexdigest()
print("SHA1哈希值:", result)

3.SHA256哈希算法

import hashlib

# 创建一个sha256对象
s256 = hashlib.sha256()

# 向sha256对象中添加数据
data = "Hello, World!".encode('utf-8')
s256.update(data)

# 获取哈希值
result = s256.hexdigest()
print("SHA256哈希值:", result)

4.使用hashlib进行文件哈希计算

import hashlib

def file_hash(file_path):
    with open(file_path, 'rb') as f:
        data = f.read()
        md5 = hashlib.md5(data).hexdigest()
        sha1 = hashlib.sha1(data).hexdigest()
        sha256 = hashlib.sha256(data).hexdigest()
    return {"md5": md5, "sha1": sha1, "sha256": sha256}

file_info = file_hash("example.txt")
print("文件哈希信息:", file_info)