一段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 相关文章推荐
snoopy PHP版的网络客户端提供本地下载
Apr 15 PHP
第二章 PHP入门基础之php代码写法
Dec 30 PHP
php addslashes 利用递归实现使用反斜线引用字符串
Aug 05 PHP
用php简单实现加减乘除计算器
Jan 06 PHP
PHP实现懒加载的方法
Mar 07 PHP
PHP利用hash冲突漏洞进行DDoS攻击的方法分析
Mar 26 PHP
php实现的网络相册图片防盗链完美破解方法
Jul 01 PHP
PHP实现微信JS-SDK接口选择相册及拍照并上传的方法
Dec 05 PHP
php实现将数据做成json的格式给前端使用
Aug 21 PHP
php服务器的系统详解
Oct 12 PHP
php装饰者模式简单应用案例分析
Oct 23 PHP
php 的多进程操作实践案例分析
Feb 28 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中记录用户访问过的产品,在cookie记录产品id,id取得产品信息
2011/05/04 PHP
php实现httpclient类示例
2014/04/08 PHP
Bootstrap+PHP实现多图上传功能实例详解
2018/04/08 PHP
PHP convert_cyr_string()函数讲解
2019/02/13 PHP
PHP7 echo和print语句实例用法
2019/02/15 PHP
javascript对象的property和prototype是这样一种关系
2007/03/24 Javascript
Extjs 几个方法的讨论
2010/01/28 Javascript
一个实用的图片切换支持点击切换和自动轮播
2014/09/09 Javascript
使用jquery菜单插件HoverTree仿京东无限级菜单
2014/12/18 Javascript
JavaScript Sort 的一个错误用法示例
2015/03/20 Javascript
jQuery插件实现图片轮播特效
2016/06/16 Javascript
JavaScript与ActionScript3两者的同性与差异性
2016/09/22 Javascript
详解微信小程序开发之——wx.showToast(OBJECT)的使用
2017/01/18 Javascript
vue2 如何实现div contenteditable=“true”(类似于v-model)的效果
2017/02/08 Javascript
微信小程序微信支付接入开发实例详解
2017/04/12 Javascript
Angular2下使用pdf插件的方法详解
2017/04/29 Javascript
js+canvas实现滑动拼图验证码功能
2018/03/26 Javascript
在Vant的基础上实现添加表单验证框架的方法示例
2018/12/05 Javascript
angular多语言配置详解
2019/05/16 Javascript
简单了解小程序+node梳理登陆流程
2019/06/24 Javascript
ES6 proxy和reflect的使用方法与应用实例分析
2020/02/15 Javascript
JavaScript中layim之整合右键菜单的示例代码
2021/02/06 Javascript
python使用Flask框架获取用户IP地址的方法
2015/03/21 Python
对于Python的Django框架部署的一些建议
2015/04/09 Python
使用python验证代理ip是否可用的实现方法
2018/07/25 Python
马来西亚领先的在线礼品店:Giftr
2018/08/23 全球购物
意大利自行车商店:Cingolani Bike Shop
2019/09/03 全球购物
MIKI HOUSE美国官方网上商店:日本领先的婴儿和儿童高级时装品牌
2020/06/21 全球购物
安全生产活动月方案
2014/03/09 职场文书
公司授权委托书范文
2014/09/21 职场文书
小学运动会报道稿
2015/07/22 职场文书
七年级生物教学反思
2016/02/20 职场文书
送给教师们,到底该如何写好教学反思?
2019/07/02 职场文书
css背景和边框标签实例详解
2021/05/21 HTML / CSS
HTML+CSS 实现顶部导航栏菜单制作
2021/06/03 HTML / CSS
mysql使用 not int 子查询隐含陷阱
2022/04/12 MySQL