模块 hashlib 用来加密数据,它定义了一个接口 API 访问不同的加密算法,当生成不同的加密算法对象后,根据一致的接口 API 生成加密数据。
加密算法
因为 hashlib 底层使用的是库 OpenSSL,它支持所有 OpenSSL 支持的算法,包括:
md5
sha1
sha224
sha256
sha384
sha512
hashlib 提供了下面两种属性列出支持的算法:
hashlib.algorithms_guaranteed 包含当前模块支持的所有的平台的哈希算法集合
hashlib.algorithms_available 包含当前运行的Python解释器支持的哈希算法集合
执行:
MD5 加密
使用 MD5 加密数据,生成 MD5 对象后,添加一段数据(下面例子是一串二进制数据),然后调用 digest() 或者 hexdigest() 方法。
执行:
SHA1 加密
SHA1 加密过程类型。
执行:
根据算法名称实例化对象
使用算法名称传入 new() 方法,创建对应的算法对象。
执行:
多次调用 update() 方法
update() 方法可以多次调用,每次调用后,加密数据也会跟着变化。在处理大文件的时候,分多次调用 update() 方法可以有效利用内存。
执行:
查看输出,使用一次调用和分多次调用 update() 方法,返回的结果一样。
留言与评论(共有 0 条评论) |