附 錄 A (資料性附錄) 簽名參數生成示例
A.1 簽名參數生成步驟示例
6.2節所述簽名參數的生成步驟示例如下:
a) 消息發送方將消息中除去signature和sign_type兩個參數外的其他所有參數作為需簽名參數。
b) 消息發送方對需簽名參數數組里的每一個名稱/值對按6.2節的規則進行排序。排序完成之后,將結果字符串中的所有‘&’字符改為“&”進行轉義,之后再把所有數組值以‘&’字符連接起來。
c) 在步驟b)中得到的字符串后連接“app_key=”和app_key的值后得到最終的待簽名字符串。
d) 使用sign_type中規定的簽名算法對步驟c)中的到的待簽名字符串進行簽名。
待簽名字符串的生成示例參見附錄A.2。
A.2 待簽名字符串示例
例如,對于如下的參數數組:
string[] parameters = {
“app_id”:”1234567890”,
“return_url”:”http://www.test.com/verify/return_url.asp",
“ biz_sequence_id”:”1234567890123456789012345678901234567890123456789012345678901234”,
“apply_time”:”2013-01-01 10:10:10”,
“cellphone”:”12345678901”
};
則A.1步驟b)所生成的字符串如下:
app_id=001234567890&apply_time=2013-01-01 10:10:10&biz_sequence_id=1234567890123456789012345678901234567890123456789012345678901234&cellphone=12345678901&return_url=http://www.test.com/verify/return_url.asp
之后,根據A.1步驟C)的描述,直接連接app_key后得到最終的待簽名字符串如下(設app_key=”app_key”):
app_id=1234567890&apply_time=2013-01-01 10:10:10&biz_sequence_id=1234567890123456789012345678901234567890123456789012345678901234&cellphone=12345678901&return_url=http://www.test.com/verify/return_url.aspapp_key
此字符串便是最終的待簽名字符串。
GB/T 36629.3—2018 信息安全技術 公民網絡電子身份標識安全技術要求 第3部分:驗證服務消息及其處理規則
推薦文章: