test / apidemo /utils /AuthV4Util.py
zwgao's picture
add app
5a79bd6
raw
history blame
1.21 kB
import hashlib
import time
import uuid
'''
添加鉴权相关参数 -
appKey : 应用ID
salt : 随机值
curtime : 当前时间戳(秒)
signType : 签名版本
sign : 请求签名
@param appKey 您的应用ID
@param appSecret 您的应用密钥
@param paramsMap 请求参数表
'''
def addAuthParams(appKey, appSecret, params):
salt = str(uuid.uuid1())
curtime = str(int(time.time()))
sign = calculateSign(appKey, appSecret, salt, curtime)
params['appKey'] = appKey
params['salt'] = salt
params['curtime'] = curtime
params['signType'] = 'v4'
params['sign'] = sign
'''
计算鉴权签名 -
计算方式 : sign = sha256(appKey + input(q) + salt + curtime + appSecret)
@param appKey 您的应用ID
@param appSecret 您的应用密钥
@param salt 随机值
@param curtime 当前时间戳(秒)
@return 鉴权签名sign
'''
def calculateSign(appKey, appSecret, salt, curtime):
strSrc = appKey + salt + curtime + appSecret
return encrypt(strSrc)
def encrypt(strSrc):
hash_algorithm = hashlib.sha256()
hash_algorithm.update(strSrc.encode('utf-8'))
return hash_algorithm.hexdigest()