全部
全部
如何生成签名用随机字符串nonceStr?
更新时间:2019-03-11 09:44:09
解答详情:

请参考如下PHP实现:

private function createNonceStr($length = 16) {

    $str = null;

    $strPol = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz";

    $max = strlen($strPol)-1;

    for($i=0;$i<$length;$i++){

        $str.=$strPol[rand(0,$max)];//rand($min,$max)生成介于minmax两个数之间的一个随机整数

    }

    return $str;

}

云闪付支付包括前台支付和后台支付,如何区分使用?具体支付流程如何?
更新时间:2018-12-17 15:45:28
解答详情:


a) 后台支付的使用场景是商户后台向云闪付后台发起的一笔扣款请求,根据用户openId确定付款人账号,小额免密, 商户侧需做好安全风险控制。

b) 前台支付的使用场景是商户后台向云闪付后台发起的一笔扣款请求,但在支付环节需要用户输入云闪付登录密码,短信验证码等要素,适用于大小额支付全场景。

c) 对接流程如下:

     i) 首先商户必须通过银联合作的收单机构申请支付商户号,如已经申请请忽略此步。

    ii) 新商户按照银联在线的对接步骤,确保在银联在线生产环境上能够支付成功。 

   iii) 银联云闪付支付支持Apply Pay的操作流程 如下:

     1) 如果您还没有开通Apply Pay,请向收单服务方申请开通Apply Pay, 其商户号与银联在线的商户号为同一个。已经开通了Apply Pay的商户请忽略此步。

     2) 登录苹果开发者网站,请将您申请到的商户号名称(比如merchant.com.unionpay.wallet.coupon)和与之相绑定的p12文件(从苹果开发者网站获取)一起发给云闪付产品经理, 开发将会此p12证书绑定到后续云闪付发布版本中,待新版AppStore发布后方可生效。


SHA256签名算法如何实现?
更新时间:2018-12-14 10:45:35
解答详情:


将所有待签名参数按照字段名的ASCII 码从小到大排序(字典序)后,使用URL键值对的格式(即key1=value1&key2=value2…)拼接成字符串string1。 Key, value均采用原始值,大小写不变,不进行URL 转义。  最后对拼接字符串string1作sha256运算出signature。

signature=sha256(string1)

以upsdk签名为例;

? appId=a5949221470c4059b9b0b45a90c81527

? nonceStr=Wm3WZYTPz0wzccnW

? timestamp=1414587457

? url=http://mobile.xxx.com?params=value【注意参见FAQ第四点】

?frontToken=sM4AOVdWfPE4DxkXGEs8VMCPGGVi4C3VM0P37wVUCFvkVAy_90u5h9nbSlYy3-Sl-HhTdfl2fzFy1AOcHKP7qg

步骤1. 对所有待签名参数按照字段名的ASCII 码从小到大排序(字典序)后,使用URL键值对的格式(即key1=value1&key2=value2…)拼接成字符串string1:

appId=a5949221470c4059b9b0b45a90c81527&frontToken=sM4AOVdWfPE4DxkXGEs8VMCPGGVi4C3VM0P37wVUCFvkVAy_90u5h9nbSlYy3-Sl-HhTdfl2fzFy1AOcHKP7qg&nonceStr=Wm3WZYTPz0wzccnW&

timestamp=1414587457&url=http://mobile.xxx.com?params=value

步骤2. 对string1进行sha256签名,得到signature:

a4bb34a2b60aa34ec4f03754547ca3e39a80e628b9760323d10561997935bb42

签名用的nonceStr和timestamp必须与请求参数中的nonceStr和timestamp相同。


云闪付开放平台后台请求报文格式如何定义?
更新时间:2018-12-17 15:41:50
解答详情:


所有后台请求均为POST,JSON报文格式,应答报文JSON格式如下:

resp: ‘00’表示成功,其他的都表示错误。msg:  成功或者失败详细描述信息。

params: 具体数据返回,JSON格式。

咨询服务