数据的加密和解密
来源:互联网 发布:苏州天创软件 编辑:程序博客网 时间:2024/05/19 12:14
1、非对称加密
/**
*加密与解密函数
**/
function mymd5($string,$action="EN",$rand=''){ //字符串加密和解密
if($action=="DE"){//处理+号在URL传递过程中会异常
$string = str_replace('SLB','+',$string);
}
$secret_string = $rand.'4*j,.^&;?.%#@!'; //绝密字符串,可以任意设定
if(!is_string($string)){
$string=strval($string);
}
if($string==="") return "";
if($action=="EN") $md5code=substr(md5($string),8,10);
else{
$md5code=substr($string,-10);
$string=substr($string,0,strlen($string)-10);
}
//$key = md5($md5code.$_SERVER["HTTP_USER_AGENT"].$secret_string);
$key = md5($md5code.$secret_string);
$string = ($action=="EN"?$string:base64_decode($string));
$len = strlen($key);
$code = "";
for($i=0; $i<strlen($string); $i++){
$k = $i%$len;
$code .= $string[$i]^$key[$k];
}
$code = ($action == "DE" ? (substr(md5($code),8,10)==$md5code?$code:NULL) : base64_encode($code)."$md5code");
if($action=="EN"){//处理+号在URL传递过程中会异常
$code = str_replace('+','SLB',$code);
}
return $code;
}
mymd5('0s2Z1ovs0qOIbcad6e616b','DE');//解密
mymd5('test');//加密
2、对称加密和解密
function decrypt($data){
$privateKey = 'WZQGYL2016WZQGYL';
$iv='0000000011111111';
$encryptedData = base64_decode($data);
return $decrypted = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $privateKey, $encryptedData, MCRYPT_MODE_CBC, $iv);
}
$privateKey = 'WZQGYL2016WZQGYL';
$iv='0000000011111111';
$encryptedData = base64_decode($data);
return $decrypted = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $privateKey, $encryptedData, MCRYPT_MODE_CBC, $iv);
}
0 0
- 数据的加密和解密
- 数据加密和解密
- 数据加密和解密
- 数据加密和解密
- 数据加密和解密
- QTP-数据的加密和解密
- VC实现数据的加密和解密(MD5加密/DES/RSA加密解密)
- 数据加密解密(涉及到md5加密和des的加密解密)
- 数据的加密和解密,实际是编码和解码
- 数据的加密与解密
- PHP的数据加密解密
- AES加密解密的数据和android的不一样效果?
- 使用AES算法完成对数据的加密和解密
- 使用PBEWithMD5AndDES算法完成对数据的加密和解密
- 常用的数据加密和解密方法汇总
- 使用PBEWithMD5AndDES算法对数据的加密和解密
- JAVA思考题,简单的数据加密和解密
- 一种客户端即时通信数据的加密和解密方法
- Linux安装JDK
- 自动清楚浏览器的缓存
- BroadcastReceive——BroadcastReceiver的生命周期
- CCF 相反数
- 用 React.js 写一个最简单的 To-do List 应用
- 数据的加密和解密
- 哈理工OJ 1425 阶乘问题(水题)
- 用struts实现文件的上传和下载
- CCF 字符串匹配
- IO流——字符文件的复制
- ContentProvider初步
- |Tyvj|NOIP2013|动态规划|P3074 小朋友的数字
- java第一周编程作业
- 说明ASP.NET MVC Http请求是如何到达控制器操作的!!!