一段php加密解密的代码


Posted in PHP onOctober 09, 2006

<?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者的疑难问答(1)
Oct 09 PHP
php公用函数列表[正则]
Feb 22 PHP
Php获取金书网的书名的实现代码
Jun 11 PHP
php数组函数序列之end() - 移动数组内部指针到最后一个元素,并返回该元素的值
Oct 31 PHP
PHP中time(),date(),mktime()区别介绍
Sep 28 PHP
ThinkPHP多表联合查询的常用方法
Mar 24 PHP
PHP中单引号与双引号的区别分析
Aug 19 PHP
php curl请求信息和返回信息设置代码实例
Apr 27 PHP
[原创]ThinkPHP让../Public在模板不解析(直接输出)的方法
Oct 09 PHP
php英文单词统计器
Jun 23 PHP
[原创]php token使用与验证示例【测试可用】
Aug 30 PHP
使用swoole 定时器变更超时未支付订单状态的解决方案
Jul 24 PHP
PHP开发文件系统实例讲解
Oct 09 #PHP
用PHP读取IMAP邮件
Oct 09 #PHP
php+oracle 分页类
Oct 09 #PHP
使用无限生命期Session的方法
Oct 09 #PHP
图象函数中的中文显示
Oct 09 #PHP
使用php+xslt在windows平台上
Oct 09 #PHP
配置PHP使之能同时支持GIF和JPEG
Oct 09 #PHP
You might like
php实现utf-8转unicode函数分享
2015/01/06 PHP
Thinkphp5.0 框架视图view的比较标签用法分析
2019/10/12 PHP
学习ExtJS 访问容器对象
2009/10/07 Javascript
JS request函数 用来获取url参数
2010/05/17 Javascript
Javascript表格翻页效果的具体实现
2013/10/05 Javascript
JavaScript弹出新窗口后向父窗口输出内容的方法
2015/04/06 Javascript
整理JavaScript对DOM中各种类型的元素的常用操作
2016/05/05 Javascript
JavaScript仿flash遮罩动画效果
2016/06/15 Javascript
AngularJs 动态加载模块和依赖
2016/09/15 Javascript
详解JavaScript常量定义
2017/01/03 Javascript
vuejs事件中心管理组件间的通信详解
2017/08/09 Javascript
vue.js过滤器+ajax实现事件监听及后台php数据交互实例
2018/05/22 Javascript
解决vue中post方式提交数据后台无法接收的问题
2018/08/11 Javascript
vue中子组件的methods中获取到props中的值方法
2018/08/27 Javascript
vue-router 前端路由之路由传值的方式详解
2019/04/30 Javascript
vue 实现模糊检索并根据其他字符的首字母顺序排列
2019/09/19 Javascript
javascript实现计算器功能
2020/03/30 Javascript
微信小程序纯文本实现@功能
2020/04/08 Javascript
SublimeText 2编译python出错的解决方法(The system cannot find the file specified)
2013/11/27 Python
浅谈python中copy和deepcopy中的区别
2017/10/23 Python
Python实现的建造者模式示例
2018/08/06 Python
Python中反射和描述器总结
2018/09/23 Python
python多线程下信号处理程序示例
2019/05/31 Python
Python 3.8正式发布,来尝鲜这些新特性吧
2019/10/15 Python
解决tensorflow添加ptb库的问题
2020/02/10 Python
python GUI编程(Tkinter) 创建子窗口及在窗口上用图片绘图实例
2020/03/04 Python
印度尼西亚值得信赖的第一家网店:Bhinneka
2018/07/16 全球购物
马来西亚最热门的在线时尚商店:FashionValet
2018/11/11 全球购物
电气技术员岗位职责
2013/11/19 职场文书
教师自荐信范文
2013/12/09 职场文书
小加工厂管理制度
2014/01/21 职场文书
创业女性典型材料
2014/05/02 职场文书
社区优秀志愿者先进事迹
2014/05/09 职场文书
小学生关于梦想的演讲稿
2014/08/22 职场文书
教师党员整改措施
2014/10/24 职场文书
Pytorch可视化的几种实现方法
2021/06/10 Python