场景
服务端与客户端进行http通讯时,为了防止被爬虫,数据安全性等,传参数的时候,不会明文的传输,先对接口加密,返回的数据也加密返回。
常见的方式就是引入sign签名参数,通过特定的方式拼接字符串后再实行加密,业务中经常使用的就是AES、RSA、MD5等。。
python——MD5加密
import hashlib
def md5_sign(md5_str):
"""
:param md5_str: 传入加密前字符串
:return: md5加密后字符串
"""
md = hashlib.md5() # 获取一个md5加密算法对象
md.update(md5_str.encode('utf-8'))
sign_str = md.hexdigest()
# print("sign_str", sign_str)
return sign_str
另外还有一个操作也是比较常见,生成签名的字符串需要去除空格,可以直接使用re.sub()去除空格
import re
str_sign = "12938049 3419591814j regqeriqg er"
print("去除空格前", str_sign)
str_sign = re.sub(r"\s", "", str_sign)
print("去除空格后", str_sign)
运行结果:
去除空格前 12938049 3419591814j regqeriqg er
去除空格后 129380493419591814jregqeriqger
标签:加密,sign,空格,str,去除,MD5,md5 From: https://www.cnblogs.com/cai11/p/18229535