标签:digest 模块 encode 一起 消息 摘要算法 打印 摘要 分割
hashlib模块为一些消息摘要算法(algorithm)提供了公共接口,如MD5, SHA1, SHA224, SHA256, SHA384和SHA512。加密过程是不可逆的。
MD5是最常见的摘要算法,速度很快,生成一个128bit的散列值(hash value),通常用一个32位的16进制字符串表示。
如果想对一个明文进行加密,首先要定义一个md5类型的加密器对象,打印加密器可以看到是一个md5 hash object,然后调用update方法加密明文;通过调用hexdigest()方法可以获取加密密文,是一个十六进制的32位字符串。
import hashlib encrypthion = hashlib.md5() print(encrypthion) encrypthion.update(‘hello world!‘.encode(‘utf8‘)) print(encrypthion.hexdigest()) #运行结果 <md5 HASH object @ 0x0000027F1768B418> fc3ff98e8c6a0d3087d515c0473f8677
如果数据量比较大,可以分割后进行加密;第一次调用update方法对‘hello ‘加密,第二调用update时会累加到一起;所以运行结果与上个程序结果一致。
import hashlib encryption = hashlib.md5() encryption.update(‘hello ‘.encode(‘utf8‘)) encryption.update(‘world!‘.encode(‘utf8‘)) print(encryption.hexdigest()) #运行结果 fc3ff98e8c6a0d3087d515c0473f8677
标签:digest 模块 encode 一起 消息 摘要算法 打印 摘要 分割
原文地址:https://www.cnblogs.com/houyongchong/p/10796161.html