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程序设计有所帮助。

相关文章

Python3 执行Linux Bash命令的方法

和之前C++执行Linux Bash命令的方法 一样,Python依然支持system调用和popen()函数来执行linux bash命令。 方法一:system调用 #仅仅在一个...

python读取几个G的csv文件方法

如下所示: import pandas as pd file = pd.read_csv('file.csv',iterator=True) while True: chunk...

使用pandas模块读取csv文件和excel表格,并用matplotlib画图的方法

使用pandas模块读取csv文件和excel表格,并用matplotlib画图的方法

如下所示: # coding=utf-8 import pandas as pd # 读取csv文件 3列取名为 name,sex,births,后面参数格式为names= name...

Python 迭代器工具包【推荐】

  原文:https://git.io/pytips   0x01 介绍了迭代器的概念,即定义了 __iter__() 和 __next__() 方法的对象,或者通过 yield 简化定...

基于Python 的进程管理工具supervisor使用指南

基于Python 的进程管理工具supervisor使用指南

Supervisor 是基于 Python 的进程管理工具,只能运行在 Unix-Like 的系统上,也就是无法运行在 Windows 上。Supervisor 官方版目前只能运行在 P...