python实现MD5加密
1、简介
Message Digest Algorithm MD5(中文名为消息摘要算法第五版)为计算机安全领域广泛使用的一种散列函数,用于确保信息传输完整一致。MD5是单向加密,指只能加密数据而不能解密数据,主要解决数据的完整性问题。
摘要算法又称哈希算法、散列算法。它通过一个函数,把任意长度的数据转换为一个长度固定的数据串(通常用16进制的字符串表示)。MD5是最常见的摘要算法,速度很快,可以将一个字符串,或文件,或压缩包,执行md5后,生成一个固定长度为128bit的串,通常用一个32位的16进制字符串表示。
在python3的标准库中,已经移除了md5模块,而关于hash加密算法都放在hashlib这个标准库中,hashlib提供了常见的摘要算法,如SHA1、SHA224、SHA256、SHA384、SHA512和MD5算法等。
2、用途
加密注册用户的密码,在保存用户密码时,不记录密码本身,只记录密码的MD5结果(即使数据库被盗也无法反推出明文)。 网站用户上传图片 / 文件后,将MD5值作为文件名。(MD5可以保证唯一性) key-value数据库中使用MD5值作为key。 比较两个文件是否相同。(在下载资源的时候,发现网站提供了MD5值,就是用来检测文件是否被篡改)
3、使用hashlib模块进行md5操作
import hashlib
md5 = hashlib.md5() # md5对象,md5不能反解,但是加密是固定的
# update需要一个bytes格式参数
md5.update(str.encode('utf-8')) # 要对哪个字符串进行加密,就放这里
value = md5.hexdigest() # 拿到加密字符串
import hashlib
str = '123456'
md5 = hashlib.md5() # 创建md5加密对象
md5.update(str.encode('utf-8')) # 指定需要加密的字符串
str_md5 = md5.hexdigest() # 加密后的字符串
print(str_md5) # 结果:e10adc3949ba59abbe56e057f20f883e
到此这篇关于使用python实现md5加密的文章就介绍到这了,更多相关python md5加密内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!