python接口自动化测试二十七:加密与解密MD5、base64


# MD5加密
# 由于MD5模块在python3中被移除
# 在python3中使用hashlib模块进行md5操作

 

import hashlib

def MD5(str):
# 创建md5对象
hl = hashlib.md5()
hl.update(str.encode(encoding='utf-8'))
return hl.hexdigest()

# 将小写字母切换成大写
# return hl.hexdigest().upper()

if __name__=="__main__":
# 待加密信息
str = '123@qwe'
md5 = MD5(str)
print('MD5加密前为 :' + str)
print('MD5加密后为 :' + md5)

 

应用

 

 

base64相关

 

加密为byte类型

import base64

def Ebase64(string):
# base64加密
return base64.b64encode(string.encode('utf-8')) # 返回byte类型

if __name__=='__main__':
string = '123@qwe数据'
print(f"{string}加密后:{Ebase64(string)}")

 

加密为字符串类型

import base64

def Ebase64(string):
# base64加密
return str(base64.b64encode(string.encode('utf-8')), 'utf-8') # 返回字符串类型

if __name__=='__main__':
string = '123@qwe数据'
print(f"{string}加密后:{Ebase64(string)}")

 

解密:

import base64

def Dbase64(string):
# base64解密
return base64.b64decode(string).decode('utf-8') # byte类型与字符串类型都统一解密

if __name__=='__main__':

bstring = 'MTIzQHF3ZeaVsOaNrg==' # 字符串
bbstring = b'MTIzQHF3ZeaVsOaNrg==' # byte类型

print(f"{bstring} 解密后:{Dbase64(bstring)}")
print(f"{bbstring} 解密后:{Dbase64(bbstring)}")

 

最后封装

 

posted @ 2018-06-09 17:25  向前走。  阅读(1400)  评论(0编辑  收藏  举报