签名机制

为保证API的安全调用,平台会对每个请求和响应通过签名进行身份验证。

接入方与平台需使用签名算法SHA256withRSA,对请求待签字符串和响应待签字符串进行签名,签名结果采用Base64 编码,对应请求和响应的sign字段。

接入方会提前收到平台为您分配的2048RSA平台公钥Base64 编码格式),同时平台需要接入方提前提供2048RSA商户公钥Base64 编码格式)。

整个请求与响应流程涉及2RSA密钥:属于平台的平台公钥平台私钥,属于接入方的商户公钥商户私钥。公钥用于验证签名,私钥用于生成签名。

请求待签字符串

将请求的bizContent字段json序列化。

{"cardCurrencyCode":"USD","settlementCurrencyCode":"USD","activeDate":"2023-01-01","inactiveDate":"2024-01-01","cardLimit":1000,"supportedMccGroup":"ecom","cardProductCode":"C02","cardType":"GWTTP","cardLabel":"MasterCard","userReferenceMap":{"useRef1Txt":"anything"}}

接入方:对请求待签字符串先使用商户私钥生成签名,再进行Base64编码。结果作为请求sign字段的值。

平台:对收到的请求头sign字段的值先进行Base64解码,再使用商户公钥验证签名。

响应待签字符串

平台:对响应待签字符串先使用平台私钥生成签名,再进行Base64编码。结果作为响应sign字段的值。

接入方:对收到的响应sign字段的值先进行Base64解码,再使用平台公钥验证签名。

工具类示例

最后更新于