python中的hashlib和base64加密模块使用实例
看到好几位博主通过对模块的各个击破学习python,我也效法一下,本篇说一下python中加密涉及到的模块。
hashlib
hashlib模块支持的加密算法有md5sha1sha224sha256sha384sha512(加密原理请参考此处),使用起来也很简单。
以md5加密为例,有两种方法:
一、追加模式
代码示例:
importhashlib#引入hashlib模块 mm=hashlib.md5()#创建一个md5对象 mm.update("Hello")#通过update方法加密文本 mm.update("world!")#追加,这两句相当于mm.update("Helloworld!") printmm.digest()#输出加密后的二进制数据 printmm.hexdigest()#输出加密后的十六进制数据
二、一句话
如果不需要追加,只用加密一段文本,可用这种形式,代码示例:
importhashlib hashlib.new("md5","Helloworld!").digest()
此外,md5等算法对象还提供了digest_size和block_size等属性,指示加密后文本的大小。
对于其他的加密算法,只要在代码中替换「md5」即可,不再举例。
base64
这个模块提供的加密算法并不安全,但十分简单,有时候会用到。
代码示例:
importbase64
a="Helloworld!" b=base64.encodestring(a)#加密 c=base64.decodestring(b)#解密
printa==c