python hash函数

 hash计算可以把任意数据变成一段“摘要”,只要这段数据中的任何字节变化都会引起hash值非常大的变化,所以hash值可以用来检查数据有没有被篡改。hash计算的另外一个特性是hash值无法反向计算,哪怕你知道了hash值,你也不能通过某种算法反解出他原来的值。所以在WEB应用开发中也经常会用来加密用户的密码数据。在python的开发中当然也会需要这样的功能。本文就以最常用的两种算法md5sha1为例简单介绍一下python的hash函数。

python的hash函数主要是由hashlib这个包来完成。我们可以写如下python代码来查看你的机器支持哪些hash算法。

import hashlib

print hashlib.algorithms
print hashlib.algorithms_available

前一行输出的是python中保证支持的hash算法,后一行输出的是当前python解释器支持的算法。

下面分别用md5和sha1计算了本站的网址(http://www.zeroplace.cn)的hash值。

import hashlib

data = "www.zeroplace.cn"

h_md5 = hashlib.new("md5")
h_md5.update(data)
print "md5: " + h_md5.hexdigest()

h_sha1 = hashlib.new("sha1")
h_sha1.update(data)
print "sha1: " + h_sha1.hexdigest()

如果对php有兴趣的同学也可以看看另外一篇文章是介绍php中的hash函数http://www.zeroplace.cn/article.asp?id=724




[本日志由 admin 于 2015-08-29 09:05 PM 编辑]

有什么问题可以加群,100852896
点击这里加入此群 在线提问
文章来自: 本站原创
Tags: hash python
评论: 0 | 查看次数: 8853
博主QQ: 友情链接请找我
QQ群: 灰色档案
返回顶部 关闭