学习笔记——hashlib模块

转载自:https://www.cnblogs.com/sly27/p/8716626.html

一、简介

hashlib是一个提供字符加密功能的模块,包含MD5和SHA的加密算法,具体支持md5,sha1, sha224, sha256, sha384, sha512等算法。 该模块在用户登录认证方面应用广泛,对文本加密也很常见。

二、报错处理:

hashlib使用时出现: Unicode-objects must be encoded before hashing

# hashlib.md5(data)函数中,data参数的类型应该是bytes

# hash前必须把数据转换成bytes类型

>>> from hashlib import md5

File "", line 1, in

>>> c = md5("helloworld")

TypeError: Unicode-objects must be encoded before hashing

>>> c = md5("helloworld".encode("utf-8"))

>>> print(c.hexdigest())

fc5e038d38a57032085441e7fe7010b0

小栗子:

# -*- coding:utf-8 -*-
import hashlib
new_md5 = hashlib.md5('我爱你'.encode('utf-8'))#创建hashlib的MD5的对象
print(new_md5.hexdigest())  #通过hexdigest()方法,获得new_md5对象的16进制md5显示。

输出结果:

4f2016c6b934d55bd7120e5d0e62cce3

 

你可能感兴趣的:(学习笔记——hashlib模块)