RSA加密
来源:互联网 发布:艾灸治疗仪 淘宝 编辑:程序博客网 时间:2024/05/21 11:19
<?php/** * RSA加密类 * * @package libs * @category API * @author 周阳<305846826@qq.com> * @copyright 街网科技 * @version 2.0 * @link http://www.jieone.com */class RSA{ /** * 私钥 * @access private * @var unknown */private $private_key = ''; /** * 公钥 * @access private * @var unknown */private $public_key = '';/** * 密钥,8位数,主要用于PHP和.NET交互数据 * @var unknown */private $key='xxxxxxxx';/** * 私钥加密 * @access public * @param string $data 需要加密的数据 * @return string Base64 */public function private_encrypt($data){if(!openssl_private_encrypt($data,$encrypted,$this->private_key)){return "";}return base64_encode($encrypted);}/** * 私钥解密 * @access public * @param string $data 需要解密的数据 * @return string */public function private_decrypt($data){$data=base64_decode(str_replace(" ","+",$data)); if (!openssl_private_decrypt($data, $decryptData, $this->private_key)) {return "";}return $decryptData;}/** * 公钥加密 * @access public * @param string $data 需要解密的数据 * @return string */public function public_encrypt($data){if(!openssl_public_encrypt($data,$encrypted,$this->public_key)){return "";}return base64_encode($encrypted);}/** * 公钥解密 * @access public * @param string $data 需要解密的数据 * @return string */public function public_decrypt($data){$data=base64_decode(str_replace(" ","+",$data)); if (!openssl_public_decrypt($data, $decryptData, $this->public_key)) {return "";}return $decryptData;}/** * 加密,主要用于PHP和.NET交互数据 * @access public * @param string $data 需要解密的数据 * @return string */public function encrypt($string) { //加密方法 $cipher_alg = MCRYPT_TRIPLEDES; //初始化向量来增加安全性 $iv = mcrypt_create_iv(mcrypt_get_iv_size($cipher_alg,MCRYPT_MODE_ECB), MCRYPT_RAND); //开始加密 $encrypted_string =mcrypt_encrypt($cipher_alg, $this->key, $string, MCRYPT_MODE_ECB, $iv); return base64_encode($encrypted_string);//转化成16进制}/** * 解密,主要用于PHP和.NET交互数据 * @access public * @param string $data 需要解密的数据 * @return string */function decrypt($string) {$string=base64_decode(str_replace(" ","+",$string)); //加密方法 $cipher_alg = MCRYPT_TRIPLEDES; //初始化向量来增加安全性 $iv = mcrypt_create_iv(mcrypt_get_iv_size($cipher_alg,MCRYPT_MODE_ECB), MCRYPT_RAND); //开始解密 $decrypted_string =mcrypt_decrypt($cipher_alg, $this->key, $string, MCRYPT_MODE_ECB, $iv); return trim($decrypted_string);}}
0 0
- RSA加密
- rsa 加密
- RSA加密
- RSA加密
- RSA加密
- RSA加密
- RSA 加密
- RSA 加密
- rsa加密
- RSA加密
- RSA加密
- RSA加密
- RSA加密
- RSA加密
- RSA加密
- RSA加密
- RSA加密
- RSA加密
- C++新特性(function+bind)
- java项目管理工具
- file CSS控制 隐藏file框,图标触发事件
- Context.getExternalFilesDir()和Context.getExternalCacheDir()方法
- PDO简单操作
- RSA加密
- sort排序详解
- tomcat内存设置优化(二)
- hdoj zhx and contest 5188 (01背包)
- MySQL 高可用架构在业务层面细化分析研究
- 3.通过AFN上传多张图片,利用我们自己搭的restful服务
- 全局内存
- 把本地文件夹上传到git@osc
- 通过url中的hash(#)来记录页面状态,用以返回、跳转到特定状态