PHP base64+gzinflate压缩编码和解码代码

王朝php·作者佚名  2008-12-18
窄屏简体版  字體: |||超大  

base64+gzinflate压缩编码(加密)过的文件通常是以 <? eval(gzinflate(base64_decode( 为头的一个php文件。文中给出了编码和解码的代码。

CODE:

<?php

function encode_file_contents($filename) {

$type=strtolower(substr(strrchr($filename,'.'),1));

if('php'==$type && is_file($filename) && is_writable($filename)){// 如果是PHP文件 并且可写 则进行压缩编码

$contents = file_get_contents($filename);// 判断文件是否已经被编码处理

$pos = strpos($contents,'/*Protected by 草名http://www.crazyi.cnCryptation*/');

if(false === $pos || $pos>100){ // 去除PHP文件注释和空白,减少文件大小

$contents = php_strip_whitespace($filename);

// 去除PHP头部和尾部标识

$headerPos = strpos($contents,'<?php');

$footerPos = strrpos($contents,'?>');

$contents = substr($contents,$headerPos+5,$footerPos-$headerPos);

$encode = base64_encode(gzdeflate($contents));// 开始编码

$encode = '<?php'." /*Protected by 草名http://www.crazyi.cnCryptation*/n eval(gzinflate(base64_decode(".$encode.")));\n /*Reverse engineering is illegal and strictly prohibited- (C)草名 Cryptation 2008*/ \n?>";

return file_put_contents($filename,$encode);

}

}

return false;

}

//调用函数

$filename='g:\我的文档\桌面\test.php';

encode_file_contents($filename);

?>

<?php

function encode_file_contents($filename) {

$type=strtolower(substr(strrchr($filename,'.'),1));

if('php'==$type && is_file($filename) && is_writable($filename)){// 如果是PHP文件 并且可写 则进行压缩编码

$contents = file_get_contents($filename);// 判断文件是否已经被编码处理

$pos = strpos($contents,'/*Protected by 草名http://www.crazyi.cnCryptation*/');

if(false === $pos || $pos>100){ // 去除PHP文件注释和空白,减少文件大小

$contents = php_strip_whitespace($filename);

// 去除PHP头部和尾部标识

$headerPos = strpos($contents,'<?php');

$footerPos = strrpos($contents,'?>');

$contents = substr($contents,$headerPos+5,$footerPos-$headerPos);

$encode = base64_encode(gzdeflate($contents));// 开始编码

$encode = '<?php'." /*Protected by 草名http://www.crazyi.cnCryptation*/n eval(gzinflate(base64_decode(".$encode.")));\n /*Reverse engineering is illegal and strictly prohibited- (C)草名 Cryptation 2008*/ \n?>";

return file_put_contents($filename,$encode);

}

}

return false;

}

//调用函数

$filename='g:\我的文档\桌面\test.php';

encode_file_contents($filename);

?>

压缩解码(解密)代码:

[复制此代码]CODE:

<?php

$Code = '这里填写要解密的编码'; // base64编码

$File = 'test.php';//解码后保存的文件

$Temp = base64_decode($Code);

$temp = gzinflate($Temp);

$FP = fopen($File,"w");

fwrite($FP,$temp);

fclose($FP);

echo "解密成功!";

?>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航