一段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的一个完整SMTP类(解决邮件服务器需要验证时的问题)
Oct 09 PHP
php 归并排序 数组交集
May 10 PHP
Drupal7中常用的数据库操作实例
Mar 02 PHP
thinkphp实现图片上传功能分享
Mar 04 PHP
PHP把数字转成人民币大写的函数分享
Jun 30 PHP
PHP基于php_imagick_st-Q8.dll实现JPG合成GIF图片的方法
Jul 11 PHP
在Ubuntu 14.04上部署 PHP 环境及 WordPress
Sep 02 PHP
ThinkPHP模版中导入CSS和JS文件的方法
Nov 29 PHP
PHP编写文件多服务器同步程序
Jul 02 PHP
php使用正则表达式获取字符串中的URL
Dec 29 PHP
Thinkphp结合ajaxFileUpload实现异步图片传输示例
Mar 13 PHP
CI框架(CodeIgniter)实现的导入、导出数据操作示例
May 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检测用户当前使用的浏览器是否为IE浏览器
2013/12/03 PHP
PHP static局部静态变量和全局静态变量总结
2014/03/02 PHP
PHP将页面中点击数量高的链接进行高亮显示的方法
2016/05/30 PHP
浅谈PHP发送HTTP请求的几种方式
2017/07/25 PHP
jQuery与ExtJS之选择实例分析
2010/08/19 Javascript
node.js中的fs.ftruncate方法使用说明
2014/12/15 Javascript
JavaScript中的splice()方法使用详解
2015/06/09 Javascript
jQuery菜单插件用法实例
2015/07/25 Javascript
详解javascript获取url信息的常见方法
2016/12/19 Javascript
如何在Angular2中使用jQuery及其插件的方法
2017/02/09 Javascript
Bootstrap Table使用整理(二)
2017/06/09 Javascript
bootstrap paginator分页插件的两种使用方式实例详解
2017/11/14 Javascript
JavaScript栈和队列相关操作与实现方法详解
2018/12/07 Javascript
后台使用freeMarker和前端使用vue的方法及遇到的问题
2019/06/13 Javascript
微信小程序清空输入框信息与实现屏幕往上滚动的示例代码
2020/06/23 Javascript
nuxt 每个页面head标签内容设置方式
2020/11/05 Javascript
Python运算符重载详解及实例代码
2017/03/07 Python
python函数参数(必须参数、可变参数、关键字参数)
2019/08/16 Python
Django中自定义查询对象的具体使用
2019/10/13 Python
python垃圾回收机制(GC)原理解析
2019/12/30 Python
Django用户身份验证完成示例代码
2020/04/03 Python
html5本地存储 localStorage操作使用详解
2016/09/20 HTML / CSS
使用layui框架实现点击左侧导航切换右侧内容且右侧选项卡跟随变化的效果
2020/11/10 HTML / CSS
澳大利亚领先的孕妇服装品牌:Mamaway
2018/08/14 全球购物
eharmony澳大利亚:网上约会服务
2020/02/29 全球购物
size?法国官网:英国伦敦的球鞋精品店
2020/03/15 全球购物
如何理解transaction事务的概念
2015/05/27 面试题
医学专业个人求职自荐信格式
2013/09/23 职场文书
初婚未育证明
2014/01/15 职场文书
小学敬老月活动方案
2014/02/11 职场文书
公司承诺书格式
2014/05/21 职场文书
2015年超市工作总结
2015/04/09 职场文书
2015重阳节座谈会主持词
2015/07/30 职场文书
浅谈JS的原型和原型链
2021/06/04 Javascript
SQL Server 中的事务介绍
2022/05/20 SQL Server
vue3 自定义图片放大器效果的示例代码
2022/07/23 Vue.js