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

yipeiwu_com6年前Python基础

本文实例讲述了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'

PS:关于加密解密感兴趣的朋友还可以参考本站在线工具:

文字在线加密解密工具(包含AES、DES、RC4等):
http://tools.jb51.net/password/txt_encode

MD5在线加密工具:
http://tools.jb51.net/password/CreateMD5Password

在线散列/哈希算法加密工具:
http://tools.jb51.net/password/hash_encrypt

在线MD5/hash/SHA-1/SHA-2/SHA-256/SHA-512/SHA-3/RIPEMD-160加密工具:
http://tools.jb51.net/password/hash_md5_sha

在线sha1/sha224/sha256/sha384/sha512加密工具:
http://tools.jb51.net/password/sha_encode

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python加密解密算法与技巧总结》、《Python编码操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python 转义字符详细介绍

Python 转义字符 在需要在字符中使用特殊字符时,python用反斜杠(\)转义字符。如下表: 原始字符串 有时我们并不想让转义字符生效,我们只想显示字符串原来的意思,这就要用r和...

Python 处理图片像素点的实例

Python 处理图片像素点的实例

###在做爬虫的时候有时需要识别验证码,但是验证码一般都有干扰物,这时需要对验证码进行预处理,效果如下: from PIL import Image import itertool...

python中的set实现不重复的排序原理

python中的set实现不重复的排序原理

最近在尝试写选课系统的时候遇到一个问题:   1、存在两个类 School、Teacher ;   2、School实例中包含多个Teacher的实例,但又不可重复   本人想到在Sch...

Python numpy 提取矩阵的某一行或某一列的实例

如下所示: import numpy as np a=np.arange(9).reshape(3,3) a Out[31]: array([[0, 1, 2], [3,...

使用Python自动生成HTML的方法示例

python 自动化批量生成前端的HTML可以大大减轻工作量 下面演示两种生成 HTML 的方法 方法一:使用 webbrowser #coding:utf-8 import w...