hashlib是个专门提供hash算法的库,其支持openssl 库提供的所有算法,包括md5, sha1, sha224, sha256, sha384, sha512,使用非常简单、方便。md5经常用来做用户密码的存储。而sha1则经常用作数字签名。
1)MD5码
MD5的全称是Message-Digest Algorithm 5(信息-摘要算法)。128位长度。目前MD5是一种不可逆算法。
具有很高的安全性。它对应任何字符串都可以加密成一段唯一的固定长度的代码。
用途:
根据这种唯一性,可以计算两个文件MD5码,判断两个文件是否相同;
hashlib中MD5的常用函数:
返回一个md5对象,如果给出参数,则相当于调用了update(arg)
2)SHA1
SHA1的全称是Secure Hash Algorithm(安全哈希算法) 。SHA1基于MD5,加密后的数据长度更长,
它对长度小于264的输入,产生长度为160bit的散列值。比MD5多32位。
因此,比MD5更加安全,但SHA1的运算速度就比MD5要慢了。
3)Python中hashlib用法:
(o(╯□╰)o,一直敲错,并且忘记加空格,注意第一个输出和最后一个一样的,逐次update和一次生成的效果一样)
sh1的用法类似
import hashlib
hashlib.sha1('hello sha1').hexdigest()