python中的hashlib和base64加密模块使用实例


Posted in Python onSeptember 02, 2014

看到好几位博主通过对模块的各个击破学习python,我也效法一下,本篇说一下python中加密涉及到的模块。

hashlib

hashlib模块支持的加密算法有md5 sha1 sha224 sha256 sha384 sha512(加密原理请参考此处),使用起来也很简单。

以md5加密为例,有两种方法:

一、 追加模式

代码示例:

 import hashlib #引入hashlib模块

 

 mm = hashlib.md5() #创建一个md5对象

 mm.update("Hello") #通过update方法加密文本

 mm.update(" world!") #追加,这两句相当于 mm.update("Hello world!")

 print mm.digest() #输出加密后的二进制数据

 print mm.hexdigest() #输出加密后的十六进制数据

二、 一句话

如果不需要追加,只用加密一段文本,可用这种形式,代码示例:

 import hashlib

 

 hashlib.new("md5","Hello world!").digest()

此外,md5等算法对象还提供了digest_size和block_size等属性,指示加密后文本的大小。

对于其他的加密算法,只要在代码中替换「md5」即可,不再举例。

base64

这个模块提供的加密算法并不安全,但十分简单,有时候会用到。
代码示例:

import base64
a = "Hello world!"

b = base64.encodestring(a) #加密

c = base64.decodestring(b) #解密
print a==c

python还有诸多的第三方模块提供更多的加密方式,以后学到的时候再说。
Python 相关文章推荐
基于python的汉字转GBK码实现代码
Feb 19 Python
CentOS 6.X系统下升级Python2.6到Python2.7 的方法
Oct 12 Python
Python简单生成8位随机密码的方法
May 24 Python
python距离测量的方法
Mar 06 Python
使用tensorflow实现线性回归
Sep 08 Python
基于django channel实现websocket的聊天室的方法示例
Apr 11 Python
Python异步操作MySQL示例【使用aiomysql】
May 16 Python
django foreignkey外键使用的例子 相当于left join
Aug 06 Python
PageFactory设计模式基于python实现
Apr 14 Python
Python接口测试数据库封装实现原理
May 09 Python
Python实现UDP程序通信过程图解
May 15 Python
Python通过format函数格式化显示值
Oct 17 Python
python多线程编程中的join函数使用心得
Sep 02 #Python
python中的函数用法入门教程
Sep 02 #Python
python爬虫入门教程之点点美女图片爬虫代码分享
Sep 02 #Python
python爬虫入门教程之糗百图片爬虫代码分享
Sep 02 #Python
python批量同步web服务器代码核心程序
Sep 01 #Python
寻找网站后台地址的python脚本
Sep 01 #Python
python批量修改文件名的实现代码
Sep 01 #Python
You might like
图形数字验证代码
2006/10/09 PHP
php利用cookie实现自动登录的方法
2014/12/10 PHP
php去掉文件前几行的方法
2015/07/29 PHP
分享PHP守护进程类
2015/12/30 PHP
[原创]PHP实现生成vcf vcard文件功能类定义与使用方法详解【附demo源码下载】
2017/09/02 PHP
jQuery 使用手册(四)
2009/09/23 Javascript
基于jquery的拖动布局插件
2011/11/25 Javascript
jQuery实现带动画效果的多级下拉菜单代码
2015/09/08 Javascript
jquery表格datatables实例解析 直接加载和延迟加载
2016/08/12 Javascript
angularjs2中父子组件的数据传递的实例代码
2017/07/05 Javascript
WebStorm ES6 语法支持设置&babel使用及自动编译(详解)
2017/09/08 Javascript
详解javascript replace高级用法
2019/02/17 Javascript
js实现时分秒倒计时
2019/12/03 Javascript
Vue如何基于es6导入外部js文件
2020/05/15 Javascript
vue@cli3项目模板怎么使用public目录下的静态文件
2020/07/07 Javascript
[00:57]深扒TI7聊天轮盘语音出处5
2017/05/11 DOTA
Python抓取京东图书评论数据
2014/08/31 Python
用于统计项目中代码总行数的Python脚本分享
2015/04/21 Python
Python编程之变量赋值操作实例分析
2017/07/24 Python
python kmeans聚类简单介绍和实现代码
2018/02/23 Python
对dataframe数据之间求补集的实例详解
2019/01/30 Python
python笔记_将循环内容在一行输出的方法
2019/08/08 Python
python实现单链表的方法示例
2019/09/03 Python
Pycharm如何运行.py文件的方法步骤
2020/03/03 Python
python代码xml转txt实例
2020/03/10 Python
详解python实现可视化的MD5、sha256哈希加密小工具
2020/09/14 Python
html5 拖拽上传图片实例演示
2013/04/01 HTML / CSS
html5 canvas fillRect坐标和大小的问题解决方法
2014/03/26 HTML / CSS
Bibloo奥地利:购买女装、男装、童装、鞋和配件
2018/10/18 全球购物
高中生职业生涯规划书
2014/02/24 职场文书
四风对照检查材料思想汇报
2014/09/20 职场文书
十一国庆节“向国旗敬礼”主题班会活动方案
2014/09/27 职场文书
处级干部反四风个人对照检查材料思想汇报
2014/09/27 职场文书
网络研修随笔感言
2015/11/18 职场文书
php字符串倒叙
2021/04/01 PHP
python 中[0]*2与0*2的区别说明
2021/05/10 Python