一段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 程序员也要学会使用“异常”
Jun 16 PHP
Wordpress php 分页代码
Oct 21 PHP
利用PHP扩展vld查看PHP opcode操作步骤
Mar 04 PHP
php生成随机颜色方法汇总
Dec 03 PHP
php实现无限级分类
Dec 24 PHP
PHP实现基于mysqli的Model基类完整实例
Apr 08 PHP
深入理解PHP中的empty和isset函数
May 26 PHP
php使用高斯算法实现图片的模糊处理功能示例
Nov 11 PHP
PHP7扩展开发之hello word实现方法详解
Jan 15 PHP
PHP使用mysqli同时执行多条sql查询语句的实例
Mar 22 PHP
php下的原生ajax请求用法实例分析
Feb 28 PHP
PHP程序员必须知道的两种日志实例分析
May 14 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实现通过照片获取ip地址
2016/04/26 PHP
PHP字符串中抽取子串操作实例分析
2019/06/22 PHP
document.open() 与 document.write()的区别
2007/08/13 Javascript
jQuery下的几个你可能没用过的功能
2010/08/29 Javascript
JavaScript通过字符串调用函数的实现方法
2015/03/18 Javascript
基于jQuery+Cookie实现的防止刷新的在线考试倒计时
2015/06/19 Javascript
JQuery点击事件回到页面顶部效果的实现代码
2016/05/24 Javascript
深入浅析JS是按值传递还是按引用传递(推荐)
2016/09/18 Javascript
浅析Ajax语法
2016/12/05 Javascript
Javascript操作dom对象之select全面解析
2017/04/24 Javascript
vue中使用refs定位dom出现undefined的解决方法
2017/12/21 Javascript
关于Vue在ie10下空白页的debug小结
2018/05/02 Javascript
vue通过cookie获取用户登录信息的思路详解
2018/10/30 Javascript
js+canvas实现图片格式webp/png/jpeg在线转换
2020/08/22 Javascript
Django1.3添加app提示模块不存在的解决方法
2014/08/26 Python
python学习之面向对象【入门初级篇】
2017/01/21 Python
Python实现简单文本字符串处理的方法
2018/01/22 Python
python 用lambda函数替换for循环的方法
2018/06/09 Python
TensorFlow 滑动平均的示例代码
2018/06/19 Python
python中的二维列表实例详解
2018/06/19 Python
python实现得到当前登录用户信息的方法
2019/06/21 Python
在django中实现choices字段获取对应字段值
2020/07/12 Python
CSS3区域模块region相关编写示例
2015/08/28 HTML / CSS
CSS3实现超酷的黑猫警长首页
2016/04/26 HTML / CSS
DOM和JQuery对象有什么区别
2016/11/11 面试题
什么是ESB?请介绍一下ESB?
2015/05/27 面试题
高中考试作弊检讨书
2014/01/14 职场文书
网络宣传方案
2014/03/15 职场文书
大学优秀班集体申报材料
2014/05/23 职场文书
党员先进性教育整改措施
2014/09/18 职场文书
出纳工作检讨书
2014/10/18 职场文书
培训督导岗位职责
2015/04/10 职场文书
穷人该怎么创业?谨记以下几点
2019/07/11 职场文书
详解MySQL的半同步
2021/04/22 MySQL
输入框跟随文字内容适配宽实现示例
2022/08/14 Javascript
go goth封装第三方认证库示例详解
2022/08/14 Golang