hmac sha256加密算法应用
程序员文章站
2024-03-19 14:27:58
...
先来看一个hashlib.sha256用法吧
bd = 'hello'
bd = bd.encode('UTF-8') # 要先编码成 bytes类型
bd_ser = hashlib.sha256(bd).hexdigest().lower()
这个是进行hashlib.sha256算法取16进制小写,得到一个加密后的新字符串hexdigest()
是十六进制,digest()
是正常字符串,看具体需要什么了。
除了sha256,还有sha1用法差不多
bd_ser = hashlib.sha1(bd.encode('utf8')).hexdigest()
hmac sha256用法也差不多,一般用来做签名加密
temp_str = temp_str.encode('UTF-8') # 需要加密的内容
AppKey = AppKey.encode('UTF-8') # 加***
# **和内容都需要先转成 bytes 类型,否则会报错
# 第一个参数为**,后面是加密内容,第三个是使用的算法,当然还可以换成其他算法
x = hmac.new(AppKey, temp_str, digestmod=sha256).digest() # 因为后面的base64需要传入字符串,所以使用digest()
Signature = base64.b64encode(x).decode() # 得到了签名字符串,这一布看需求,有些加密后还需要使用base64,有些不需要