Python_md5加密

在日常的开发过程中,经常会涉及对隐私信息如密码等字段进行加密后在保存的情况,下面简单演示一下Python中的加密实现方式。

加密使用的是hashlib标准库,里面包含多种加密算法,如如SHA1、SHA224、SHA256、SHA384、SHA512和MD5算法等。

import hashlib

ps = "abc123456"
pwd = "abc123456"

m = hashlib.md5(ps.encode())
mm = hashlib.md5(pwd.encode())

m1 = hashlib.sha1(ps.encode())
m2 = hashlib.sha224(ps.encode())
m3 = hashlib.sha256(ps.encode())

print(m.hexdigest())
print(mm.hexdigest())  # 相同的字符串加密后的结果是相同的


print(m1.hexdigest())
print(m2.hexdigest())
print(m3.hexdigest())

输出:

0659c7992e268962384eb17fafe88364
0659c7992e268962384eb17fafe88364
370194ff6e0f93a7432e16cc9badd9427e8b4e13
418d9372b81e9f1f62a7ac461b68f5ad6bef0784a5607cc1855a07de
a03c32fcd351cba2d9738622b083bed022ef07793bd92b59faea0207653f371d

md5加密后是无法进行解密的,那么网上的md5在线解码网站是如何实现的呢?

因为同一个字符串加密后的内容是固定的,所以解码网站可以通过穷举字符组合的方式创建明文密码对应查询数据库,解码其实是反向查询。

当我们对一个复杂较长的字符串加密后,用得到的密文去解码网站解码是不会查询到结果的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值