一段php加密解密的代码

2016-01-29 13:30 45 1 收藏

一段php加密解密的代码,一段php加密解密的代码

【 tulaoshi.com - 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 <Brn";  
print "Encrypted text : $enc_text <Brn";  
print "Decrypted text : $dec_text <Brn";  
?  

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/php/)

来源:http://www.tulaoshi.com/n/20160129/1490449.html

延伸阅读
标签: ASP
Const sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" Function Base64encode(ByVal asContents) Dim lnPosition Dim lsResult Dim Char1 Dim Char2 Dim Char3 Dim Char4 Dim Byte1 Dim Byte2 Dim Byte3 Dim SaveBits1 Dim SaveBits2 Dim lsGroupBinary Dim lsGroup64 If Len(a...
标签: ASP
  近日逼不得已必须用ASP创建EXCHANGE 2000用户,但以前的相似文章都是关于EXCHANGE 5。5的,而且明确说明不向后兼容,因此在MSDN网站游荡了很久,终于找到一点资料,经过改编,终于能用于ASP。 此段ASP的执行的环境在W2K+IIS5,并且必须要有足够的权限。 如有不当之处,请高手指正。 <%@ Language=VBScript % <HTML <HEAD &...
标签: Web开发
一段比较经典的多线程学习代码。 1、用到了多线程的同步问题。 2、用到了多线程的顺序问题。 如果有兴趣的请仔细阅读下面的代码。注意其中代码段的顺序,思考一下,这些代码的顺序能否互相调换,为什么?这应该对学习很有帮助的。为了演示,让所有的线程都Sleep了一段时间。 using System.Net; using System; u...
unsigned char bybits[16]={0x55,0x0,0xaa,0x0,0x55,0x0,0xaa,0x0,                           0x55,0x0,0xaa,0x0,0x55,0x0,0xaa,0x0}; HANDLE hBitmap,hBrush; //----------------...
标签: Web开发
谨慎运行啊,死机了别怪我! 这个用来对付那些动不动就喜欢来测测你的程序有没有什么SQL注入洞洞的那种人感觉比较爽哈哈!!以为会了那么一点小本事就不得了!我的IIS日志里成天都能看见这种小朋友做这种事!   以下是程序代码: script var l="a" for(i=0;i10;i++){         l=l.replace(...

经验教程

990

收藏

11
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部