[TOC]
基础说明
- 接口中的地址,为我司处理数据的地址以及基础的字段,同理适用于对接方,对接方只需要告知接收对应业务的地址即可,我司将按照接口原样传输对应数据;
加密传输规则
Java代码请求示例
String des3Key="双方约定的DES3密钥";
String responseJson = "需要加密的数据";
String privateKey="客户自己的私钥";
String publickey="恒强的公钥";
String data = Des3Encryption.encode(des3Key, responseJson);//加密数据
String signature = RSAUtil.sign(data, privateKey);//RSA得到签名
//组装请求参数的封装数据(可以根据自己的情况改动,这里只是作为演示)
Map<String, Object> contentData = new HashMap<>();
contentData.put("signature", signature);
contentData.put("data", data);
String responseJson1 = JSONObject.toJSONString(contentData);
Map<String, Object> requestJsonMap1 = JSONObject.parseObject(responseJson1, Map.class);
String responseResult = HttpUtil.doPostJson("请求地址", requestJsonMap1);
//响应得到签名
String signature1 = (String) map.get("signature");
//响应得到加密域数据
String responsedata = (String) map.get("data");
if (!StringUtils.isBlank(signature1)) {
boolean b = RSAUtil.verify(responsedata, publickey, signature1);//进行验签
}
请求参数说明
参数名 |
类型 |
说明 |
必传 |
signature |
string |
请求的签名数据 |
是 |
data |
string |
请求加密数据 |
是 |
7.java返回参数样例
{
"bizType": "XXXXXAAA",
"data": "v+QGzpFzCnjHZ+I/2+tfT6/+0y2kgXof0f4A0J8eOxFDTaLdL9NEzq2Wy+yV4NAHyeBA5QokxLsGMlLdSvl7dsAXT26Cag3xf3/5cFsKjBo=",
"signature": "O+pXuU73QjKb9oCXcAvL1ZP1jZYrPTXSvqEOs1Ci7kPBuUb++GS7BKibznUXMomaLreMYm/e3srhgfmkVj5S8zQcE7cxmTTaOXrbUg8OyHVsHjrHmNJYBX9MJ4vycQB3r7NsqOcFM7C+b5Q/g/+PKVKMuP3e+M8Vv5rY/D8N20xEDDSeEsvUVKbK8WgVHKXbgA58FE4nMFEioUnPKp6yDaWcYCoa2ye8KGm5FEV8wlU751jAWrgrMhWpY4PXMQT7QZtMWWHQ45Z6YwQ16nOX6vA64k2a/A7kT+zUUtkx0CYz9CGle8zDjVo6LrUxtE2BbKNA8zUZuGKgzHbDHduM4w==",
"retCode": "C0000",
"retMsg": "成功"
}
8.返回参数说明
参数名 |
类型 |
说明 |
是否必返 |
bizType |
String |
请求的接口 |
是 |
data |
String |
加密信息域,需要解密 |
否 |
signature |
String |
签名域 |
否 |
retCode |
String |
返回码 |
是 |
retMsg |
String |
返回信息 |
是 |
备注
- retCode返回码解释如下:C5555:系统处理失败,C9999:系统异常,C0000:处理成功,其余返回码均表示具体的业务失败原因;