如何按字典序使用url键值对的格式拼接成字符串md5加密签名

发布时间:2021-10-11 09:50:46 作者:柒染
来源:亿速云 阅读:200

本篇文章给大家分享的是有关如何按字典序使用url键值对的格式拼接成字符串md5加密签名,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

对所有的传入的非空参数进行按字典序使用url键值对的格式拼接成字符串string1

String string1 = key1=value1&key2=value2..

在字符串string1最后拼接上签名所得的令得到字符串string2

String string2 = string2 + &密钥名称=8934e7d15453e97507ef794cf7b0519d

然后对string2进行MD5加密,再将加密所得到的32位字符串转换为大写,所得到的值即为key_sign

   
 $payConfig = array(
            'pay_ver' => '100',
            'pay_type' => '010',
            'service_id' => '015',
            'merchant_no' => '',
            'terminal_id' => '',
            'terminal_trace' => $orderInfo['order_id'],
            'terminal_time' => date("YmdHis"),
            'total_fee' => $totalFee,
            'sub_appid' => '',
            'open_id' => $openid,
            'notify_url' => "http://www.demo.com"
        );
        $access_token = "da3c47c2a8cd47e9be0868712dae0000";
        $payConfig['key_sign'] = self::getSign($payConfig, $access_token);




     //签名
     function getSign($payConfig, $key) {

        ksort($payConfig);
        $str = "";
        foreach ($payConfig as $k => $v) {
            $str =$str. $k . "=" . $v."&";
        }
        $str=$str."access_token=".$key;

        return strtoupper(md5($str));
    }
 
       //提交
      function postPay($post_data) {
        $postUrl = "";
        $curl = curl_init();
        curl_setopt_array($curl, array(
            CURLOPT_URL => $postUrl,
            CURLOPT_RETURNTRANSFER => true,
            CURLOPT_ENCODING => "",
            CURLOPT_MAXREDIRS => 10,
            CURLOPT_TIMEOUT => 0,
            CURLOPT_FOLLOWLOCATION => false,
            CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
            CURLOPT_CUSTOMREQUEST => "POST",
            CURLOPT_POSTFIELDS => json_encode($post_data),
            CURLOPT_HTTPHEADER => array(
                "Content-Type: application/json"
            ),
        ));
        $response = curl_exec($curl);
        var_dump($response);
        curl_close($curl);
        return $response;
    }

以上就是如何按字典序使用url键值对的格式拼接成字符串md5加密签名,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。

推荐阅读:
  1. 将json格式的字符串解析成Map对象
  2. python爬虫如何把url链接编码成gbk2312格式

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

md5

上一篇:YAML的常用工具有哪些

下一篇:如何使用MDC实现日志链路跟踪

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》