摘要: MD5加密是在程序中应用比较广的加密方式,云算笔记网站的开发中,用户密码的存储,以及用户密码重置等多处都使用了MD5加密。由于云算笔记网站开发使用的是Python 3.4,有一些地方与以前版本的Python不太一样。下面我们来具体看一下。 Python3进行M...
MD5加密是在程序中应用比较广的加密方式,云算笔记网站的开发中,用户密码的存储,以及用户密码重置等多处都使用了MD5加密。由于云算笔记网站开发使用的是Python 3.4,有一些地方与以前版本的Python不太一样。下面我们来具体看一下。
Python3进行MD5加密
首先是导入MD5加密所需模块:
import hashlib
然后创建md5对象:
m = hashlib.md5()
传入需要加密的字符串进行MD5加密:
m.update("str4MD5Encode")
然后就可以获取到经过MD5加密的字符串了:
encodeStr = m.hexdigest()
print encodeStr
输出结果为:
f8fd73cf519e6f11513d505b9dd33541
当然,为了代码重用,我们可以将这几句简单的代码写入一个函数,该函数输入是需要进行MD5加密的字符串,输出为经过MD5加密后获得的结果:
import hashlib
def md5Encode(str):
m = hashlib.md5()
m.update(str)
return m.hexdigest()
以上为Python2.*及更早之前的方式,最新Pyhon3.4的调用方式:
def md5Encode(str):
import hashlib
#参数必须是byte类型,否则报Unicode-objects must be encoded before hashing错误
m = hashlib.md5(str.encode(encoding='utf-8'))
return m.hexdigest()
print(md5Encode('支算笔记'))
网站的CMS部分是基于MIT协议开源的,托管在 https://github.com/bukun/TorCMS , 具体的用法,可以直接查看源代码。