python之模块hashlib(提供了常见的摘要算法,如MD5,SHA1等等)

# -*- coding: utf-8 -*-
#python 27
#xiaodeng
#python之模块hashlib(提供了常见的摘要算法,如MD5,SHA1等等)
#http://www.cnblogs.com/BeginMan/p/3328172.html




#以常见的摘要算法MD5为例,计算出一个字符串的MD5值
import hashlib
m = hashlib.md5()           #创建hash对象
m.update('xiaodeng')        #更新哈希对象以字符串参数
print m.hexdigest()         #accd5818a8547b13180044139260c80d


#数据量很大,可以分块多次调用update(),
            #最后计算的结果是一样的
import hashlib
m = hashlib.md5()
m.update('xiao')
m.update('deng')
print m.hexdigest()         #返回十六进制数字字符串,accd5818a8547b13180044139260c80d
#print m.digest()            #返回摘要,作为二进制数据字符串值
print m.digest_size         #产生的散列的字节大小
print m.block_size



#应用:
import datetime
key_value='xiaodeng'
now=datetime.datetime.now()
m=hashlib.md5()
string='%s%s'%(key_value,now.strftime('%Y%m%d'))#加密方式怎么写可以由程序员自己决定,不能其他人知道即可
m.update(string)
value=m.hexdigest()
print value#bff15a80fddc90267a9286806231d7da

 

posted @ 2015-11-18 22:31  Xiao|Deng  阅读(483)  评论(0编辑  收藏  举报