码迷,mamicode.com
首页 > 编程语言 > 详细

python hashlib模块

时间:2019-04-30 15:30:50      阅读:151      评论:0      收藏:0      [点我收藏+]

标签: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

python hashlib模块

标签:digest   模块   encode   一起   消息   摘要算法   打印   摘要   分割   

原文地址:https://www.cnblogs.com/houyongchong/p/10796161.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!