当前位置: 首页 > 图文教程 > 网络编程 > PHP > 一段php加密解密的代码

PHP
Zend Framework 入门:快速上手
Zend Framework 入门:多国语言支持
Zend Framework 入门:错误处理
Zend Framework 入门:页面布局
PHP会话:session 时间设定使用入门
PHP实例:PHP创建动态图像
PHP正则表达式的几则使用技巧
ASP.NET比拼PHP,谁是速度之王?
ImageTTFText函数实现图像加文字水印
整合Discuz用户登陆代码
smarty笔记--模板参数
如何正确理解 PHP 的错误信息
Web技术进阶—PHP构建网站
C/S、B/S软件技术上的比较
apache with ssl安装
如何实现给定日期的若干天以后的日期(有点类似VB中的DateAdd)
如何在PHP中判断某个函数是否被支持
在Linux下安装PHP,APACHE,MYSQL,PERL的方法
Whois 的PHP代码
将数据库的内容读到二维数组并按指定列输出

PHP 中的 一段php加密解密的代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 141 ::
收藏到网摘: n/a

<?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";
?>