Python常用模块 -- hashlib模块常用用法

Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等。
什么是摘要算法呢?
摘要算法又称哈希算法、散列算法。它通过一个函数,把任意长度的数据转换为一个长度固定的数据串(通常用16进制的字符串表示)。

MD5是最常见的摘要算法,速度很快,生成结果是固定的128 bit字节,通常用一个32位的16进制字符串表示。另一种常见的摘要算法是SHA1,调用SHA1和调用MD5完全类似.
SHA1的结果是160 bit字节,通常用一个40位的16进制字符串表示。比SHA1更安全的算法是SHA256和SHA512,不过越安全的算法越慢,而且摘要长度更长。

应用场景

  1. 将明文密码摘要后存储到数据库
  2. 检验数据是否被篡改

代码示例

import hashlib

# 方式一
ret = hashlib.md5("hello world".encode('utf8'))
print(ret.hexdigest())

# 方式二,如果数据量很大,可以分块调用update(),最后计算的结果是一样的
ret1 = hashlib.md5()
ret1.update('hello '.encode('utf8'))
ret1.update('world'.encode('utf8'))
print(ret1.hexdigest())
原文地址:https://www.cnblogs.com/sunch/p/12410810.html