安全规范

数字签名

为保证数据传输过程中的数据真实性,完整性和不可抵赖,我们需要对数据进行数字签名,在接收签名数据之后迚行签名校验。签名算法分为MD5

签名机制如下:

  • 签名字段不参与组成签名原文串。
  • 待签名原文是请求参数按参数名字母小写后进行升序排列,对应参数值拼装成的字符串
  • 如果提交的参数为{apam:value1, cpam:value2, Bpam:value3}
  • 密钥key值为AFDFAASDASDAS

  • 则待签名原文为:value1value3value2AFDFAASDASDAS

请求范例

请求数据:

{
"amount":"1",
"authCode":"130219205322723729",
"characterSet":"00",
"mercId":"800290000000441",
"opSys":"3",
"orgNo":"489",
"payChannel":"WXPAY",
"signType":"MD5",
"total_amount":"1",
"tradeNo":"20170804103115431251",
"trmNo":"95006888",
"txnTime":"20170804103115",
"version":"V1.0.0",
"signValue":""
}

设备key:Pz5meIuUxRKcF7rlvPglliyfwvC9vhjGcBy61WHM00Qfwz0E6yTTLwgxJsFYE9IQ

排序后数据:

1130219205322723729008002900000004413489WXPAYMD51201708041031154312519500688820170804103115V1.0.0Pz5meIuUxRKcF7rlvPglliyfwvC9vhjGcBy61WHM00Qfwz0E6yTTLwgxJsFYE9IQ

注意 参数名小写排序,参数值不用小写,设备key不需小写,signvalue值为小写,排完序后去除所有空格

signValue值--MD5加签后数据:a8fda4082fbdd3e3ff679097cd4fae72

results matching ""

    No results matching ""