php结合md5实现的加密解密方法


Posted in PHP onJanuary 25, 2016

本文实例讲述了php结合md5实现的加密解密方法。分享给大家供大家参考,具体如下:

最近在整理代码发现了一个不错的东西,结合md5的加解密算法。网上关于php结合md5的加密,解密算法比较少的,其实php手册里面就有,改一改就行了。在此贴一下,用这算法要加载一个php模块mcrypt,不然用不了。

//加密
function string2secret($str)
{
 $key = "123";
 $td = mcrypt_module_open(MCRYPT_DES,'','ecb','');
 $iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_RAND);
 $ks = mcrypt_enc_get_key_size($td);
 $key = substr(md5($key), 0, $ks);
 mcrypt_generic_init($td, $key, $iv);
 $secret = mcrypt_generic($td, $str);
 mcrypt_generic_deinit($td);
 mcrypt_module_close($td);
 return $secret;
}
//解密
function secret2string($sec)
{
 $key = "123";
 $td = mcrypt_module_open(MCRYPT_DES,'','ecb','');
 $iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_RAND);
 $ks = mcrypt_enc_get_key_size($td);
 $key = substr(md5($key), 0, $ks);
 mcrypt_generic_init($td, $key, $iv);
 $string = mdecrypt_generic($td, $sec);
 mcrypt_generic_deinit($td);
 mcrypt_module_close($td);
 return trim($string);
}
echo secret2string(string2secret("11111111111111111")); //显示结果是11111111111111111
echo string2secret("11111111111111111"); //显示乱码

php经常用的加解密函数,base64_encode,base64_decode。

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php类
Nov 27 PHP
Ajax PHP简单入门教程代码
Apr 25 PHP
sqlyog 中文乱码问题的设置方法
Oct 19 PHP
php 应用程序安全防范技术研究
Sep 25 PHP
JoshChen_web格式编码UTF8-无BOM的小细节分析
Aug 16 PHP
php使用curl抓取qq空间的访客信息示例
Feb 28 PHP
完善CodeIgniter在IDE中代码提示功能的方法
Jul 19 PHP
php使用CURL不依赖COOKIEJAR获取COOKIE的方法
Jun 17 PHP
PHP使用FFmpeg获取视频播放总时长与码率等信息
Sep 13 PHP
解决微信授权回调页面域名只能设置一个的问题
Dec 11 PHP
PHP+iframe模拟Ajax上传文件功能示例
Jul 02 PHP
PHP实现财务审核通过后返现金额到客户的功能
Jul 04 PHP
PHP几个实用自定义函数小结
Jan 25 #PHP
php代码架构的八点注意事项
Jan 25 #PHP
详解js异步文件加载器
Jan 24 #PHP
PHP导出Excel实例讲解
Jan 24 #PHP
PHP验证码生成原理和实现
Jan 24 #PHP
详解PHP对象的串行化与反串行化
Jan 24 #PHP
php上传图片获取路径及给表单字段赋值的方法
Jan 23 #PHP
You might like
深入Memcache的Session数据的多服务器共享详解
2013/06/13 PHP
PHP函数microtime()用法与说明
2013/12/04 PHP
Chrome Web App开发小结
2014/09/04 PHP
php实现的简单检验登陆类
2015/06/18 PHP
php关闭warning问题的解决方法
2016/05/17 PHP
ThinkPHP5.1表单令牌Token失效问题的解决
2019/03/22 PHP
javascript 常用功能总结
2012/03/18 Javascript
js中escape对应的C#解码函数 UrlDecode
2012/12/16 Javascript
Get中文乱码IE浏览器Get中文乱码解决方案
2013/12/26 Javascript
js省市联动效果完整实例代码
2015/12/09 Javascript
Knockout自定义绑定创建方法
2015/12/26 Javascript
分享我对JS插件开发的一些感想和心得
2016/02/04 Javascript
详解Javascript中的原型OOP
2016/10/12 Javascript
AngularJS执行流程详解
2017/02/17 Javascript
Angular.js 4.x中表单Template-Driven Forms详解
2017/04/25 Javascript
微信小程序 支付后台java实现实例
2017/05/09 Javascript
深入理解AngularJs-scope的脏检查(一)
2017/06/19 Javascript
React Native基础入门之调试React Native应用的一小步
2018/07/02 Javascript
深入浅出理解JavaScript闭包的功能与用法
2018/08/01 Javascript
Vue2.0生命周期的理解
2018/08/20 Javascript
jQuery内容过滤选择器与子元素过滤选择器用法实例分析
2019/02/20 jQuery
vue el-tree 默认展开第一个节点的实现代码
2020/05/15 Javascript
[01:33]真香警告!DOTA2勇士令状不朽珍藏Ⅱ饰品欣赏
2018/06/26 DOTA
Python中的choice()方法使用详解
2015/05/15 Python
python链接Oracle数据库的方法
2015/06/28 Python
python中字符串类型json操作的注意事项
2017/05/02 Python
Python实现的圆形绘制(画圆)示例
2018/01/31 Python
详解windows python3.7安装numpy问题的解决方法
2018/08/13 Python
浅谈Python反射 & 单例模式
2019/03/21 Python
Python中的几种矩阵乘法(小结)
2019/07/10 Python
python使用pip安装模块出现ReadTimeoutError: HTTPSConnectionPool的解决方法
2019/10/04 Python
Python restful框架接口开发实现
2020/04/13 Python
StubHub新加坡:购买和出售全球活动门票
2017/03/10 全球购物
美国用餐电影院:Alamo Drafthouse Cinema
2020/01/23 全球购物
上课说话检讨书
2015/01/27 职场文书
故宫导游词
2015/01/31 职场文书