Python学习笔记06—哈希加密算法

一、加密算法的分类

1、可逆加密算法
可逆算法是密码通过加密后生成的密文可以通过计算转换回明文。
可逆算法根据两端是否使用同一个秘钥分为:
1)对称加密(DES算法)
2)不对称加密(RSA算法)

2、不可逆加密算法
将明文处理成密文后,无法再由密文转换为明文。
例如:
md5算法
shal256算法

二、hashlib库
1、使用md5加密算法
hashlib.md5()只能接收字节数据。

md5 = hashlib.md5("123456".encode("utf-8"))
md5.hexdigest()

2、盐值混淆
因为相同的数据使用hash算法的到的密文是相同的,容易被碰撞破解,使用盐值混淆加密前数据中加入其他的字符串可以增加加密的安全性。

md5 = hashlib.md5("123456".encode("utf-8"))
md5.update("@#$$%123456".encode("utf-8"))
md5.hexdigest()

三、hmac库
使用对称加密,适合对密码加密。
在使用hmac时必须使用盐值混淆

hmac.new("123456".encode("utf-8"),"!@#$%#".encode("utf-8"),"MD5")
#先将明文123456以!@#$%#为盐值进行对称加密,将得到的值以!@#$%#为盐值又进行一次盐值加密
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值