笔者在这一章节,进行sign及取得iv的实作
首先由Sign开始,在[Day4] API开发规格书中有提到Sign的产生方式。
def get_message_hash(data):
sorted_key_list = sorted(data.keys())
first = True
result = ""
for key in sorted_key_list:
if first:
temp = key + "=" + data[key]
first = False
else:
temp = "&" + key + "=" + data[key]
result += temp
return result
def get_sign(data, nonce, hash_id):
hash_value = data + nonce + hash_id
return hashlib.sha256(hash_value.encode("utf-8")).hexdigest().upper()
get_message_hash首先先将dict的key值排序後,一个一个的放入result中,get_sign则是先将三个字串合在一起後,使用hashlib进行sha256完以Hex的形式作为output最後转成大写。
接下来则是取的iv的部分,取得iv值需要先将nonce值做sha256後取得右边16码流程如下图
实作方式如下
def get_iv(nonce):
sha_nonce_value = hashlib.sha256(nonce.encode("utf-8")).hexdigest().upper()
return sha_nonce_value[-16:-1]
以上就是本节的内容
>>: Day 10 : 案例分享(3.3) 会计模组-调节、立冲帐、应收付与收支款
今天我想要来分享一些做这九张报表,所发现的一些小技巧,或是一些小习惯 首先,我习惯在一打开SQL-S...
今天从导览列开始做 首先先把 components里的helloword .vue 跟有import...
同步分为两种类型: (1)资源同步(resource synchronization): 决定共享记...
GitHub Repo https://github.com/b2etw/Spring-Kotlin...
前言: 今天来介绍如何创建使用 CameraX 来显示预览 大纲 : build.gradle(ap...