PHP base64+gzinflate壓縮編碼和解碼代碼
base64+gzinflate壓縮編碼(加密)過的文件通常是以 <? eval(gzinflate(base64_decode( 為頭的一個php文件。文中給出了編碼和解碼的代碼。CODE:<?phpfunction 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);?><?phpfunction 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 '解密成功!';?>
