webservice接口密钥是什么

 我来答
肆脚热书0Q
2018-10-15 · TA获得超过7486个赞
知道大有可为答主
回答量:4636
采纳率:11%
帮助的人:312万
展开全部
1.1.1 验证码加密
接口中的验证码参数,均需要通过DES + BASE64加密,
1.1.2 报文签名
通票平台接入端分配一个cp_code和csecret
,双方均采用如下规则对报文进行签名:
l 第一步:签名源串构造规则:将请求参数按照如下规则组织“a=x&b=y&c=z&……”,每一个参数按参数名的自然数序排列。(按字典序排列)
l 第二步:使用HMAC-SHA1加密算法,将Step1中的到的源串以及实现分配的密钥(csecret )进行加密;
l 第三步:将Step2中得到的加密字串进行Base64编码。
签名密钥(secret):abcdefghijklmnopqrstuvwx
/**
* 返回签名之后的JSON对象
*
* @param json原JSON对象
* @param secret密钥
* @return
* @throws Exception
*/
publicstatic String doSign(JSONObjectjson,String secret) throws Exception {
String baseStr = "";
for (Object key : newTreeSet(json.keySet())) {
baseStr += ("&" + key + "=" + json.get(key));
}
SecretKeySpec key = newSecretKeySpec(secret.getBytes("UTF-8"), "HmacSHA1");
Mac mac = Mac.getInstance("HmacSHA1");
mac.init(key);
byte[] bytes = mac.doFinal(baseStr.substring(1).getBytes("UTF-8"));
json.put("signature", new String(Base64.encodeBase64(bytes)));
return json.toString();
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式