我是小佳 ,未注明原创的,均为转载。

一段PHP加密与解密的代码

上一篇 / 下一篇  2006-11-25 18:52:07 / 个人分类:PHP杂谈

查看( 1987 ) / 评论( 6 )
[php]
<?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>";
print "Encrypted text : $enc_text <Br>";
print "Decrypted text : $dec_text <Br>";
?>
[/php]

TAG: PHP杂谈

PHP流浪者(cator) cator 发布于2006-11-25 21:10:11

MySQL的个人空间 MySQL 发布于2006-11-25 22:51:43
支持一下.
Ben的个人空间 Ben 发布于2006-11-26 04:53:18
利用这个算法,你只要有 KEY 就可以搞定 N 个产品的注册机制。包括原来的D3~:lol
Phper的空间 Nickboy 发布于2006-11-26 05:47:37
回复 #4 Ben 的帖子
是吗?那先收藏了!
xiaojia空间 xiaojia 发布于2006-11-26 11:07:39

QUOTE:

原帖由 Ben 于 2006-11-26 04:53 发表
利用这个算法,你只要有 KEY 就可以搞定 N 个产品的注册机制。包括原来的D3~:lol
可否说的明白一点,我现在还不太明白
loveyou_85的个人空间 loveyou_85 发布于2006-12-02 12:50:25
收藏!!谢谢楼主!!
我来说两句

(可选)

数据统计

  • 访问量: 40093
  • 日志数: 121
  • 图片数: 1
  • 文件数: 1
  • 书签数: 27
  • 建立时间: 2006-09-21
  • 更新时间: 2007-08-12

RSS订阅

Open Toolbar