广告位联系
返回顶部
分享到

使用python实现md5加密的方法

python 来源:互联网 作者:佚名 发布时间:2023-07-13 21:27:24 人浏览
摘要

1、简介 Message Digest Algorithm MD5(中文名为消息摘要算法第五版)为计算机安全领域广泛使用的一种散列函数,用于确保信息传输完整一致。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操作

1

2

3

4

5

6

7

import hashlib

 

md5 = hashlib.md5()                 # md5对象,md5不能反解,但是加密是固定的

 

# update需要一个bytes格式参数

md5.update(str.encode('utf-8'))     # 要对哪个字符串进行加密,就放这里

value = md5.hexdigest()             # 拿到加密字符串

1

2

3

4

5

6

7

8

9

import hashlib

 

str = '123456'

 

md5 = hashlib.md5()                 # 创建md5加密对象

md5.update(str.encode('utf-8'))     # 指定需要加密的字符串

str_md5 = md5.hexdigest()           # 加密后的字符串

 

print(str_md5)                      # 结果:e10adc3949ba59abbe56e057f20f883e


版权声明 : 本文内容来源于互联网或用户自行发布贡献,该文观点仅代表原作者本人。本站仅提供信息存储空间服务和不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权, 违法违规的内容, 请发送邮件至2530232025#qq.cn(#换@)举报,一经查实,本站将立刻删除。
原文链接 :
相关文章
  • 彻底解决python NameError:name

    彻底解决python NameError:name '__file__' is not defined的方
    问题背景 我创建了一个函数,里面包含了一个获取当前执行文件路径的代码 1 current_path = os.path.dirname(os.path.abspath(__file__)) 我把这段代码放在
  • 使用python实现md5加密的方法
    1、简介 Message Digest Algorithm MD5(中文名为消息摘要算法第五版)为计算机安全领域广泛使用的一种散列函数,用于确保信息传输完整一致。
  • Python代码模拟CPU工作原理的介绍
    理解 CPU 工作原理,重要的是理解 pc 不停地自增地址,顺序执行程序指令。当遇到跳转指令时,会将 pc 重置为新地址。在顺序执行程序指令
  • python实现数组平移K位问题介绍
    python数组平移K位 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 def move(ls: list, offset): 元素原索引+位移数
  • Python利用wxPython实现长文本处理
    在文本编辑器和IDE等应用程序中,可以使用这个示例代码来处理长文本,以便用户更好地查看和编辑文本。 在数据分析和科学计算等领域中
  • Python爬虫之解析HTML页面
    用Python解析HTML页面 在网络爬取的过程中,我们通常需要对所爬取的页面进行解析,从中提取我们需要的数据。网页的结构通常是由 HTML 标签
  • 已解决不小心卸载pip后怎么处理(重新安装pip的两
    已解决:不小心卸载pip后(手动安装pip的两种方式) 报错问题 一个粉丝群的小伙伴提出的问题,不小心卸载了pip怎么重新安装呢?(当时他
  • Python基于Google Bard实现交互式聊天机器人

    Python基于Google Bard实现交互式聊天机器人
    现在我们想实现自动化,所以我用Python做一个交互式的聊天机器人。 获取Session ID 通过浏览器先拿到SessionID,它是一个cookie,名为__Secure-1
  • Python操作MongoDB数据库的方法(非 ODM)

    Python操作MongoDB数据库的方法(非 ODM)
    一、连接器的安装和配置 pymongo:MongoDB 官方提供的 Python 工具包。官方文档:https://pymongo.readthedocs.io/en/stable/pip安装,命令如下: 1 pip inst
  • python进程间通信的项目实践

    python进程间通信的项目实践
    进程间通信表示进程之间的数据交换。 为了开发并行应用程序,需要在进程间交换数据。 下图显示了多个子过程之间同步的各种通信机制
  • 本站所有内容来源于互联网或用户自行发布,本站仅提供信息存储空间服务,不拥有版权,不承担法律责任。如有侵犯您的权益,请您联系站长处理!
  • Copyright © 2017-2022 F11.CN All Rights Reserved. F11站长开发者网 版权所有 | 苏ICP备2022031554号-1 | 51LA统计