Python常见加密模块用法分析【MD5,sha,crypt模块】


Posted in Python onMay 24, 2017

本文实例讲述了Python常见加密模块用法。分享给大家供大家参考,具体如下:

1. md5模块

md5.new([arg])     返回一个md5对象,如果给出参数,则相当于调用了update(arg)
md5.update(arg)   用string参数arg更新md5对象
md5.digest()         返回16字节的摘要,由传给update的string生成,摘要没有ascii字符
md5.hexdigest()    以16进制的形式返回摘要

import md5
a = md5.new('passwd')
a.digest()
  'v\xa2\x17;\xe692T\xe7/\xfaMm\xf1\x03\n'
a.hexdigest()
  '76a2173be6393254e72ffa4d6df1030a'
a.update('hello world')
a.digest()
  '\xb2\x83f\xb8\x14\xc9\xc6\x19k\x01\xfe\xd8\xd9\x8f\xe0H'
a.hexdigest()
  'b28366b814c9c6196b01fed8d98fe048'

2.sha 模块

用法同md5一样

import sha
b=sha.new('passwd')
b.digest()
 "0'LG\x90;\xd1\xba\xc7c;\xbf\tt1I\xeb\xab\x80_"
b.hexdigest()
 '30274c47903bd1bac7633bbf09743149ebab805f'
b.update('hello')
b.digest()
 'c\xc19\xb4]YGz\x85\xe8C\x8fF\xfe\x9e\xc3|\xb16\xba'
b.hexdigest()
 '63c139b45d59477a85e8438f46fe9ec37cb136ba

3.crypt

crypt模块中就一个函数,crypt(str,salt) --> string

from crypt import crypt
crypt('passwd','a')
 'aaIslqfNH03LA'
crypt('passwd','abc')
 'ab8RogIKnX0og'
crypt('passwd','a')
 'aaIslqfNH03LA'
Python 相关文章推荐
Django在Win7下的安装及创建项目hello word简明教程
Jul 14 Python
Python学习之asyncore模块用法实例教程
Sep 29 Python
Python3之手动创建迭代器的实例代码
May 22 Python
Python2和3字符编码的区别知识点整理
Aug 08 Python
Python CSV文件模块的使用案例分析
Dec 21 Python
pytorch的batch normalize使用详解
Jan 15 Python
Python中sys模块功能与用法实例详解
Feb 26 Python
如何基于线程池提升request模块效率
Apr 18 Python
如何安装并在pycharm使用selenium的方法
Apr 30 Python
如何在Anaconda中打开python自带idle
Sep 21 Python
python查询MySQL将数据写入Excel
Oct 29 Python
Python 如何安装Selenium
May 06 Python
Python简单生成8位随机密码的方法
May 24 #Python
python中利用xml.dom模块解析xml的方法教程
May 24 #Python
Python实现简单过滤文本段的方法
May 24 #Python
django框架如何集成celery进行开发
May 24 #Python
python 计算两个日期相差多少个月实例代码
May 24 #Python
django基础之数据库操作方法(详解)
May 24 #Python
python bottle框架支持jquery ajax的RESTful风格的PUT和DELETE方法
May 24 #Python
You might like
PHP 页面跳转到另一个页面的多种方法方法总结
2009/07/07 PHP
PHP 数据结构 算法 三元组 Triplet
2011/07/02 PHP
PHP+Mysql+jQuery中国地图区域数据统计实例讲解
2015/10/10 PHP
php+resumablejs实现的分块上传 断点续传功能示例
2017/04/18 PHP
laravel5使用freetds连接sql server的方法
2018/12/07 PHP
phpmyadmin在宝塔面板里进不去的解决方案
2020/07/06 PHP
javascript面向对象的方式实现的弹出层效果代码
2010/01/28 Javascript
jQuery)扩展jQuery系列之一 模拟alert,confirm(一)
2010/12/04 Javascript
js将iframe中控件的值传到主页面控件中的实现方法
2013/03/11 Javascript
JavaScript语言核心数据类型和变量使用介绍
2013/08/23 Javascript
javascript将异步校验表单改写为同步表单
2015/01/27 Javascript
jquery实现左右滑动菜单效果代码
2015/08/27 Javascript
详解JavaScript函数
2015/12/01 Javascript
原生js编写autoComplete插件
2016/04/13 Javascript
js控制文本框禁止输入特殊字符详解
2017/04/07 Javascript
[js高手之路]图解javascript的原型(prototype)对象,原型链实例
2017/08/28 Javascript
Nodejs连接mysql并实现增、删、改、查操作的方法详解
2018/01/04 NodeJs
微信小程序使用npm支持踩坑
2018/11/07 Javascript
Vue.js中的组件系统
2019/05/30 Javascript
微信小程序 scroll-view 水平滚动实现过程解析
2019/10/12 Javascript
微信小程序实现滑动翻页效果(完整代码)
2019/12/06 Javascript
python批量生成本地ip地址的方法
2015/03/23 Python
python编写的最短路径算法
2015/03/25 Python
python logging日志模块以及多进程日志详解
2018/04/18 Python
详解pytorch 0.4.0迁移指南
2019/06/16 Python
完美解决keras保存好的model不能成功加载问题
2020/06/11 Python
解决keras模型保存h5文件提示无此目录问题
2020/07/01 Python
澳大利亚的奢侈品牌:Oroton
2016/08/26 全球购物
Expedia英国:全球最大的在线旅游公司
2017/09/07 全球购物
市级优秀班主任事迹材料
2014/05/13 职场文书
战略性融资合作协议书范本
2014/10/17 职场文书
机关班子查摆问题及整改措施
2014/10/28 职场文书
2015年统战工作总结
2015/05/19 职场文书
刑事附带民事起诉状
2015/05/19 职场文书
如何利用golang运用mysql数据库
2022/03/13 Golang
SQL Server中搜索特定的对象
2022/05/25 SQL Server