一段php加密解密的代码


Posted in PHP onJuly 16, 2007

<?php  
$key = "This is supposed to be a secret key !!!";  

function keyED($txt,$encrypt_key)  
{  
$encrypt_key = md5($encrypt_key);  
$ctr=0;  
$tmp = "";  
for ($i=0;$i<strlen($txt);$i++)  
{  
if ($ctr==strlen($encrypt_key)) $ctr=0;  
$tmp.= substr($txt,$i,1) ^ substr($encrypt_key,$ctr,1);  
$ctr++;  
}  
return $tmp;  
}  

function encrypt($txt,$key)  
{  
srand((double)microtime()*1000000);  
$encrypt_key = md5(rand(0,32000));  
$ctr=0;  
$tmp = "";  
for ($i=0;$i<strlen($txt);$i++)  
{  
if ($ctr==strlen($encrypt_key)) $ctr=0;  
$tmp.= substr($encrypt_key,$ctr,1) .  
(substr($txt,$i,1) ^ substr($encrypt_key,$ctr,1));  
$ctr++;  
}  
return keyED($tmp,$key);  
}  

function decrypt($txt,$key)  
{  
$txt = keyED($txt,$key);  
$tmp = "";  
for ($i=0;$i<strlen($txt);$i++)  
{  
$md5 = substr($txt,$i,1);  
$i++;  
$tmp.= (substr($txt,$i,1) ^ $md5);  
}  
return $tmp;  
}  

$string = "Hello World !!!";  

// encrypt $string, and store it in $enc_text  
$enc_text = encrypt($string,$key);  

// decrypt the encrypted text $enc_text, and store it in $dec_text  
$dec_text = decrypt($enc_text,$key);  

print "Original text : $string <Br>n";  
print "Encrypted text : $enc_text <Br>n";  
print "Decrypted text : $dec_text <Br>n";  
?>

PHP 相关文章推荐
php&amp;java(一)
Oct 09 PHP
PHP OPCode缓存 APC详细介绍
Oct 12 PHP
php防攻击代码升级版
Dec 29 PHP
PHP屏蔽蜘蛛访问代码及常用搜索引擎的HTTP_USER_AGENT
Mar 06 PHP
ThinkPHP结合ajax、Mysql实现的客户端通信功能代码示例
Jun 23 PHP
php阿拉伯数字转中文人民币大写
Dec 21 PHP
php设计模式之委托模式
Feb 13 PHP
php实现xml与json之间的相互转换功能实例
Jul 07 PHP
PHP实现的策略模式简单示例
Aug 25 PHP
PHP性能分析工具xhprof的安装使用与注意事项
Dec 19 PHP
PHP生成腾讯云COS接口需要的请求签名
May 20 PHP
PHP连接sftp并下载文件的方法教程
Aug 26 PHP
php下一个阿拉伯数字转中文数字的函数
Jul 16 #PHP
php+mysql开源XNA 聚合程序发布 下载
Jul 13 #PHP
PHP如何编写易读的代码
Jul 10 #PHP
php为什么选mysql作为数据库? Mysql 创建用户方法
Jul 02 #PHP
木翼下载系统中说明的PHP安全配置方法
Jun 16 #PHP
PHP 中的批处理的实现
Jun 14 #PHP
关于在php.ini中添加extension=php_mysqli.dll指令的说明
Jun 14 #PHP
You might like
深入php之规范编程命名小结
2013/05/15 PHP
PHP以指定字段为索引返回数据库所取的数据数组
2013/06/30 PHP
Yii2 rbac权限控制之菜单menu实例教程
2016/04/28 PHP
Laravel中间件实现原理详解
2016/10/09 PHP
PHP中单例模式与工厂模式详解
2017/02/17 PHP
php查询内存信息操作示例
2019/05/09 PHP
PHP读取Excel内的图片(phpspreadsheet和PHPExcel扩展库)
2019/11/19 PHP
php实现统计IP数及在线人数的示例代码
2020/07/22 PHP
jQuery获取(选中)单选,复选框,下拉框中的值
2014/02/21 Javascript
js实现类似MSN提示的页面效果代码分享
2015/08/24 Javascript
jQuery实现选项联动轮播效果【附实例】
2016/04/19 Javascript
Vue.js每天必学之过渡与动画
2016/09/06 Javascript
AngularJS中$injector、$rootScope和$scope的概念和关联关系深入分析
2017/01/19 Javascript
详解Angular2 关于*ngFor 嵌套循环
2017/05/22 Javascript
jQuery进阶实践之利用最优雅的方式如何写ajax请求
2017/12/20 jQuery
vue项目常用组件和框架结构介绍
2017/12/24 Javascript
浅谈webpack 构建性能优化策略小结
2018/06/13 Javascript
浅析vue.js数组的变异方法
2018/06/30 Javascript
Elementui表格组件+sortablejs实现行拖拽排序的示例代码
2019/08/28 Javascript
layui实现鼠标移动到单元格上显示数据的方法
2019/09/11 Javascript
javascript实现贪吃蛇经典游戏
2020/04/10 Javascript
微信小程序的引导页实现代码
2020/06/24 Javascript
如何在postman中添加cookie信息步骤解析
2020/06/30 Javascript
[03:16]DOTA2完美大师赛小组赛精彩集锦
2017/11/22 DOTA
详解Python编程中包的概念与管理
2015/10/16 Python
python 进制转换 int、bin、oct、hex的原理
2021/01/13 Python
html5本地存储 localStorage操作使用详解
2016/09/20 HTML / CSS
英国领先的独立时装店:Van Mildert
2019/10/28 全球购物
节能环保标语
2014/06/12 职场文书
求职意向书
2014/07/29 职场文书
公证书格式
2015/01/23 职场文书
采购员岗位职责
2015/02/03 职场文书
2016秋季运动会前导词
2015/11/25 职场文书
承诺书的签字人,需不需要承担相应的责任?
2019/07/09 职场文书
Python网络编程之ZeroMQ知识总结
2021/04/25 Python
Python序列化与反序列化相关知识总结
2021/06/08 Python