码迷,mamicode.com
首页 > Web开发 > 详细

PHP实现RSA2加密

时间:2019-09-16 17:57:35      阅读:582      评论:0      收藏:0      [点我收藏+]

标签:eset   实现   Opens   rsa   密钥   开启   dwr   encode   style   

PHP实现RSA2加密

 

1.

 需要开启php的 php_openssl扩展

 1 <?php
 2 
 3   /*
 4      * RSA2签名
 5      * @param array 请求的参数
 6      * @param string 私钥
 7      * return  string
 8      * time 2019-09-11
 9      * author chen
10      * email 869476711@qq.com
11      *
12      * */
13     protected function RSA2($data,$pikey){
14         
15 
16         //将请求的参数进行排序
17         ksort($data);//ksort()函数 根据参数的键进行升序排序
18         reset($data);
19         $signStr = ‘‘;
20         foreach ($data as $key => $value) {
21             if ($key == ‘sign‘ || $value == ‘‘) continue;
22             $signStr .= $key .‘=‘ .$value .‘&‘;
23         }
24         $signStr = substr($signStr, 0, -1);
25 
26 
27         $res = "-----BEGIN RSA PRIVATE KEY-----\n" . wordwrap($pikey, 64, "\n", true) . "\n-----END RSA PRIVATE KEY-----";
28         // 请注意密钥 是不是有带   -----BEGIN RSA PRIVATE KEY-----   -----END RSA PRIVATE KEY-----
29 
30         $piKey = openssl_pkey_get_private($res);
31 
32         if ($piKey) {
33             $res = openssl_get_privatekey($res);
34             openssl_sign($signStr, $sign, $res, ‘SHA256‘);
35             $sign = base64_encode($sign);
36             openssl_free_key($piKey);
37             return $sign;
38         }
39     }

 

PHP实现RSA2加密

标签:eset   实现   Opens   rsa   密钥   开启   dwr   encode   style   

原文地址:https://www.cnblogs.com/ccw869476711/p/11528550.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!