加密模块hashlib模块(* *)
2024-09-07 20:24:17
用于加密相关的操作,3.x里代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 越往后加密算法越复杂,这些算法都是不可逆的,MD5 算法
import hashlib
obj=hashlib.md5()
obj.update("admin".encode("utf8"))
print(obj.hexdigest()) #21232f297a57a5a743894a0e4a801fc3 obj.update("root".encode("utf8"))#这时候加密的字符串是"adminroot"
print(obj.hexdigest())# 4b3626865dc6d5cfe1c60b855e68634a
# 4b3626865dc6d5cfe1c60b855e68634a
obj2=hashlib.md5("sb".encode("utf8"))#以上加密算法虽然依然非常厉害,但时候存在缺陷,即:通过撞库可以反解。所以,有必要对加密算法中添加自定义key再来做加密。,这个步骤叫加盐
obj2.update("admin".encode("utf8"))
print(obj2.hexdigest()) #e560d00d77b6997bbcba34ce36a0d745
python 还有一个 hmac 模块,它内部对我们创建 key 和 内容 再进行处理然后再加密:
import hmac
h = hmac.new('alvin'.encode('utf8'))
h.update('hello'.encode('utf8'))
print (h.hexdigest())#320df9832eab4c038b6c1d7ed73a5940
最新文章
- poj 3692 Kindergarten (最大独立集)
- cocos之观察者模式应用实例
- [Solution] ASP.NET Identity(1) 快速入门
- 1972: [Sdoi2010]猪国杀 - BZOJ
- CSS实现圆角,三角,五角星,五边形,爱心,12角星,8角星,圆,椭圆,圆圈,八卦
- 统计机器翻译(SMT)步骤总结
- jQuery渐隐渐出的文字提示
- 201521123066 《Java程序设计》 第六周学习总结
- ReentrantLock可重入锁的使用场景
- Android的加速度传感器模拟摇一摇的效果-android学习之旅(66)
- 20145311王亦徐 《网络对抗技术》 MSF基础应用
- SQL Fundamentals || DCL(Data Control Language) || 用户管理&;Profile概要文件
- mysql主从服务器的配置
- 飞跃平野(sdut1124)
- win7下docker环境搭建nginx+php-fpm+easyswoole开发环境
- Javascript一(变量,数据类型,正则表达式,数据,语句)
- 最短路径算法(I)
- 4G和有线网络的自动切换
- Nginx配置整理
- Linux Python apache的cgi配置
热门文章
- 通过Windows Visual Studio远程调试WSL2中的.NET Core Linux应用程序
- scrapy 源码解析 (二):启动流程源码分析(二) CrawlerProcess主进程
- 用Python演奏音乐
- 详解UDP协议
- echarts 踩坑 : 为什么触摸柱状图的时后柱子不见了?原来是color的锅!
- vue 应用 :关于 ElementUI 的 message 组件
- vue &; 百度地图:在地图上绘制多边形
- C# 判断和创建目录路径
- MySQL的权限赋予
- 题解 洛谷 P4632 【[APIO2018] New Home 新家】