一段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 相关文章推荐
解析阿里云ubuntu12.04环境下配置Apache+PHP+PHPmyadmin+MYsql
Jun 26 PHP
php获取网页中图片、DIV内容的简单方法
Jun 19 PHP
YII中assets的使用示例
Jul 31 PHP
php中fsockopen用法实例
Jan 05 PHP
php读取der格式证书乱码解决方法
Jun 22 PHP
简介PHP的Yii框架中缓存的一些高级用法
Mar 29 PHP
Windows下PHP开发环境搭建教程(Apache+PHP+MySQL)
Jun 13 PHP
PHP观察者模式示例【Laravel框架中有用到】
Jun 15 PHP
Yii Framework框架使用PHPExcel组件的方法示例
Jul 24 PHP
php 使用mpdf实现指定字段配置字体样式的方法
Jul 29 PHP
laravel 解决crontab不执行的问题
Oct 22 PHP
在 Laravel 6 中缓存数据库查询结果的方法
Dec 11 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
Yii 快速,安全,专业的PHP框架
2014/09/03 PHP
获取任意Html元素与body之间的偏移距离 offsetTop、offsetLeft (For:IE5+ FF1 )[
2006/12/22 Javascript
jQuery 标题的自动翻转实现代码
2009/10/14 Javascript
JavaScript 一行代码,轻松搞定浮动快捷留言-V2升级版
2010/04/02 Javascript
jQuery UI设置固定日期选择特效代码分享
2015/08/27 Javascript
微信开发 微信授权详解
2016/10/21 Javascript
JS封装通过className获取元素的函数示例
2016/12/20 Javascript
js图片轮播插件的封装
2017/07/21 Javascript
shiro授权的实现原理
2017/09/21 Javascript
JavaScript实现职责链模式概述
2018/01/25 Javascript
layui实现table加载的示例代码
2018/08/14 Javascript
vue中的计算属性实例详解
2018/09/19 Javascript
Python中字典的基本知识初步介绍
2015/05/21 Python
python运行其他程序的实现方法
2017/07/14 Python
Python实现ping指定IP的示例
2018/06/04 Python
Pyqt清空某一个QTreeewidgetItem下的所有分支方法
2019/06/17 Python
使用Filter过滤python中的日志输出的实现方法
2019/07/17 Python
django 消息框架 message使用详解
2019/07/22 Python
python tkinter基本属性详解
2019/09/16 Python
Python Pickle 实现在同一个文件中序列化多个对象
2019/12/30 Python
Python list运算操作代码实例解析
2020/01/20 Python
Python for循环搭配else常见问题解决
2020/02/11 Python
python3 sorted 如何实现自定义排序标准
2020/03/12 Python
Python如何发送与接收大型数组
2020/08/07 Python
大韩航空官方网站:Korean Air
2017/10/25 全球购物
STP的判定过程
2012/10/01 面试题
测试工程师岗位职责
2013/11/28 职场文书
生产厂长岗位职责
2014/02/21 职场文书
经典英文广告词
2014/03/18 职场文书
青春演讲稿范文
2014/05/08 职场文书
个人股份转让协议书范本
2014/10/26 职场文书
2014年教育工作总结
2014/11/26 职场文书
HTML+css盒子模型案例(圆,半圆等)“border-radius” 简单易上手
2021/05/10 HTML / CSS
浅谈react useEffect闭包的坑
2021/06/08 Javascript
MySQL系列之七 MySQL存储引擎
2021/07/02 MySQL
Python+Selenium实现抖音、快手、B站、小红书、微视、百度好看视频、西瓜视频、微信视频号、搜狐视频、一点号、大风号、趣头条等短视频自动发布
2022/04/13 Python