Python标准库 - hashlib库

python中的hashlib模块是个专门提供hash算法的库,里面包括md5, sha1, sha224, sha256, sha384, sha512,现总结

md5用法如下:

MD5

MD5是一种不可逆的加密算法,目前是最牢靠的加密算法之一,尚没有能够逆运算的程序被开发出来,它对应任何字符串都可以加密成一段唯一的固定长度的代码。

一、用法:

import hashlib
# from hashlib import md5

方法一:
m1 = hashlib.md5()   # 构造hash对象
m1.update('Hello')   # 要对哪个字符串进行加密,就放到update里
m1.update(',')
m1.update('python')

方法二:
m2 = hashlib.md5('Hello,python')

方法一与方法二两种方式的效果相同
print m1 # <md5 HASH object @ 0000000003A586E8>
print m2 # <md5 HASH object @ 0000000003A58418>

二、hash.digest()与hash.hexdigest()区别:

hash.digest()
返回摘要,作为二进制数据字符串值
hash.hexdigest()
返回摘要,作为十六进制数据字符串值
import hashlib

m = hashlib.md5('Hello,python')

print m.digest()
print m.hexdigest()

三、hash.digest()与hash.hexdigest()转换:

print出来的结果就是m1.hexdigest()转换成m1.digest()
import binascii

hexdigest_to_digest = binascii.unhexlify('171712eceb3f8ba8223f0f15d924c070')
print hexdigest_to_digest

四、MD5在线加密工具链接

http://tools.jb51.net/password/CreateMD5Password