pay/hf_zfb/web_sdk.php
(开头部分) 6KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
<?php
/*admin
* 2016-11-28
* 外部应用加解密demo
* */
class webApp{
#密码必须经过sha1 加密
#金额不会用小数点表示 以分为单位
#参数名称及加密后字符,默认使用小写,除非有特别约定的地方会有特殊说明
#所有接口请求数据必须要传open_id,timestamp,sign,data 四个参数,data 参数是aes 加密后的json 数据(为用户要提交的请求数据)。
const DEBUG =true;
const open_url ='https://api.orangebank.com.cn/mct1/';//外网测试地址
const open_id ='4f1d0e4a1908b203646c2a6a102b6e36'; //测试open_id 测试商户5
const open_key ='d812d73487a3f9f94b932b48aa0f704c';//测试open_key 测试商户5
const private_key = 'file/880000108_private_key.key'; //测试商户5 私钥地址
#签名
public function signs($array){
$signature = array();
foreach($array as $key=>$value){
$signature[$key]=$key.'='.$value;
}
$signature['open_key']='open_key'.'='.self::open_key;
ksort($signature);
#先sha1加密 在md5加密
$sign_str = md5(sha1(implode('&', $signature)));
return $sign_str;
}
public function signs_ras($array,$signauture=OPENSSL_ALGO_SHA1){
$signature = array();
foreach($array as $key=>$value){
$signature[$key]=$key.'='.$value;
}
$signature['open_key']='open_key'.'='.self::open_key;
ksort($signature);
$sign_str = implode('&', $signature);
$privatekey = openssl_get_privatekey(file_get_contents(self::private_key));
openssl_sign($sign_str,$sign_str,$privatekey,$signauture);
return bin2hex($sign_str);
}
#使用post的传输
public function api($url,$post){
#必填参数
$data['open_id'] =self::open_id;
$data['timestamp'] =time();
$data['data']= $post;
unset($data['sign_type']);
if(self::DEBUG){if($data){$this->debug('接口调用:'.$url,http_build_query($data));}else{$this->debug('接口调用:'.$url,'');}}
后面还有 124 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
