python数据加密代码,分别用到了hashlib模块、hmac模块,python md5加密字符串的例子。
1、hashlib
1.1 hashlib.update(arg)
1.2 hashlib.digest() #返回数字形式的哈希
1.3 hashlib.hexdigest() #返回16进制的哈希
1.4 hashlib.copy()
一般而言,用hashlib.hexdigest()即可。
2、hmac
2.1 hmac.new(key[, msg[, digestmod]])
2.2 hmac.update(msg)
2.3 hmac.digest()
2.4 hmac.hexdigest()
2.5 hmac.copy()
注意,以上message都要用bytes,使用string则不行。
python md5加密字符串的例子
python使用md5加密字符串
Python加密模块有好几个,无论哪种加密方式,都需要先导入加密模块,然后再使用模块对字符串加密。
1、先导入md5加密所需模块:
#!/usr/bin/env python
#
import hashlib
#创建md5对象
m = hashlib.md5()
#生成加密串,其中 password 是要加密的字符串
m.update('password')
#获取加密串
psw = m.hexdigest()
#输出
print psw
执行:
5f4dcc3b5aa765d61d8327deb882cf99
可以写成函数,直接传入要加密的字符串调用:
调用:
如果传入的参数不是字符串,则会报错:
报错:
Traceback (most recent call last):
File "D:pythondemo1c.py", line 9, in <module>
str = md5(['a','b'])
File "D:pythondemo1c.py", line 5, in md5
m.update(str)
TypeError: must be string or buffer, not list
可以对传入的类型检测,以避免报错:
当传入的参数为字符串时,便可以正确返回加密串,其他类型均返回空。