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)}")
最后封装
讨论群:249728408