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实现框架(一)
Oct 09 PHP
学习discuz php 引入文件的方法DISCUZ_ROOT
Jun 21 PHP
Eclipse中php插件安装及Xdebug配置的使用详解
Apr 25 PHP
php 字符串中的\n换行符无效、不能换行的解决方法
Apr 02 PHP
PHP中strlen()和mb_strlen()的区别浅析
Jun 19 PHP
php中opendir函数用法实例
Nov 15 PHP
php技术实现加载字体并保存成图片
Jul 27 PHP
php curl抓取网页的介绍和推广及使用CURL抓取淘宝页面集成方法
Nov 30 PHP
thinkPHP多域名情况下使用memcache方式共享session数据的实现方法
Jul 21 PHP
PHP基于SMTP协议实现邮件发送实例代码
Apr 27 PHP
PHP yield关键字功能与用法分析
Jan 03 PHP
php接口隔离原则实例分析
Nov 11 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
zend framework配置操作数据库实例分析
2012/12/06 PHP
Yii框架小部件(Widgets)用法实例详解
2020/05/15 PHP
jquery $.ajax相关用法分享
2012/03/16 Javascript
jQuery回车实现登录简单实现
2013/08/20 Javascript
JavaScript运行机制之事件循环(Event Loop)详解
2014/10/10 Javascript
js+HTML5基于过滤器从摄像头中捕获视频的方法
2015/06/16 Javascript
Bootstrap Modal遮罩弹出层(完整版)
2016/11/21 Javascript
React Native中导航组件react-navigation跨tab路由处理详解
2017/10/31 Javascript
利用Javascript开发一个二维周视图日历
2017/12/14 Javascript
微信小程序基于本地缓存实现点赞功能的方法
2017/12/18 Javascript
解决vue watch数据的方法被调用了两次的问题
2020/11/07 Javascript
JavaScript实现缓动动画
2020/11/25 Javascript
python3图片转换二进制存入mysql
2013/12/06 Python
在服务器端实现无间断部署Python应用的教程
2015/04/16 Python
安装ElasticSearch搜索工具并配置Python驱动的方法
2015/12/22 Python
Python实现破解猜数游戏算法示例
2017/09/25 Python
Python爬虫工程师面试问题总结
2018/03/22 Python
python画折线图的程序
2018/07/26 Python
Windows下Python3.6安装第三方模块的方法
2018/11/22 Python
浅谈Pycharm调用同级目录下的py脚本bug
2018/12/03 Python
python3 实现的对象与json相互转换操作示例
2019/08/17 Python
python实现的config文件读写功能示例
2019/09/24 Python
Django配置跨域并开发测试接口
2020/11/04 Python
美国著名的家居用品购物网站:Bed Bath & Beyond
2018/01/05 全球购物
Theflamel意大利:女士奢华服装、鞋子和配件
2020/01/11 全球购物
草莓网中国:StrawberryNet中国
2020/08/17 全球购物
Linux的文件类型
2016/07/05 面试题
大学生职业生涯规划书的基本内容
2014/01/06 职场文书
开学典礼感言
2014/02/16 职场文书
幼儿园老师寄语
2014/04/03 职场文书
领导干部四风问题自我剖析材料
2014/09/25 职场文书
教师党员学习十八届四中全会思想汇报
2014/11/03 职场文书
红与黑读书笔记
2015/06/29 职场文书
推广普通话的宣传语
2015/07/13 职场文书
导游词之大雁塔景区
2019/09/17 职场文书
Django显示可视化图表的实践
2021/05/10 Python