PHP base64+gzinflate压缩编码和解码代码
发布时间:2020-12-13 05:28:10 所属栏目:PHP教程 来源:网络整理
导读:base64+gzinflate压缩编码(加密)过的文件通常是以 ? eval(gzinflate(base64_decode( 为头的一个php文件。以下我们给出了相关的编码解码(加密解密)代码。 压缩编码(加密)代码: div class="codetitle" a style="CURSOR: pointer" data="20397" class="c
base64+gzinflate压缩编码(加密)过的文件通常是以 <? eval(gzinflate(base64_decode( 为头的一个php文件。以下我们给出了相关的编码解码(加密解密)代码。 压缩编码(加密)代码:<div class="codetitle"><a style="CURSOR: pointer" data="20397" class="copybut" id="copybut20397" onclick="doCopy('code20397')"> 代码如下:<div class="codebody" id="code20397"> <?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.cn Cryptation/'); 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.cn Cryptation/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,$encode); } } return false; } //调用函数 $filename='g:我的文档桌面test.php'; encode_file_contents($filename); ?> 压缩解码(解密)代码:<div class="codetitle"><a style="CURSOR: pointer" data="12111" class="copybut" id="copybut12111" onclick="doCopy('code12111')"> 代码如下:<div class="codebody" id="code12111"> <?php $Code = '这里填写要解密的编码'; // base64编码 $File = 'test.php';//解码后保存的文件 $Temp = base64_decode($Code); $temp = gzinflate($Temp); $FP = fopen($File,"w"); fwrite($FP,$temp); fclose($FP); echo "解密成功!"; ?> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |