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


Posted in PHP onOctober 03, 2008

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

压缩编码(加密)代码:

<?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,'.'),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 
$Code = '这里填写要解密的编码'; // base64编码 
$File = 'test.php';//解码后保存的文件 
$Temp = base64_decode($Code); 
$temp = gzinflate($Temp); 
$FP = fopen($File,"w"); 
fwrite($FP,$temp); 
fclose($FP); 
echo "解密成功!"; 
?>
PHP 相关文章推荐
PHP中开发XML应用程序之基础篇 添加节点 删除节点 查询节点 查询节
Jul 09 PHP
php实现文件下载更能介绍
Nov 23 PHP
浅谈apache和nginx的rewrite的区别
Feb 22 PHP
php中session过期时间设置及session回收机制介绍
May 05 PHP
destoon整合UCenter图文教程
Jun 21 PHP
使用PHP和HTML5 FormData实现无刷新文件上传教程
Sep 06 PHP
Ubuntu中搭建Nginx、PHP环境最简单的方法
Mar 05 PHP
php函数mkdir实现递归创建层级目录
Oct 27 PHP
php判断是否为ajax请求的方法
Nov 29 PHP
thinkphp分页集成实例
Jul 24 PHP
PHP远程连接oracle数据库操作实现方法图文详解
Apr 11 PHP
基于laravel-admin 后台 列表标签背景的使用方法
Oct 03 PHP
php下实现在指定目录搜索指定类型文件的函数
Oct 03 #PHP
PHP Header用于页面跳转要注意的几个问题总结
Oct 03 #PHP
smarty section简介与用法分析
Oct 03 #PHP
php相当简单的分页类
Oct 02 #PHP
php仿discuz分页效果代码
Oct 02 #PHP
php仿ZOL分页类代码
Oct 02 #PHP
php生成缩略图的类代码
Oct 02 #PHP
You might like
一篇有意思的技术文章php介绍篇
2010/10/26 PHP
php模拟post行为代码总结(POST方式不是绝对安全)
2012/02/22 PHP
ThinkPHP调试模式与日志记录概述
2014/08/22 PHP
CodeIgniter钩子用法实例详解
2016/01/20 PHP
CI框架源码解读之利用Hook.php文件完成功能扩展的方法
2016/05/18 PHP
Yii全局函数用法示例
2017/01/22 PHP
Yii2.0多文件上传实例说明
2017/07/24 PHP
PHP错误提示It is not safe to rely on the system……的解决方法
2019/03/25 PHP
JAVASCRIPT 对象的创建与使用
2021/03/09 Javascript
JavaScript调用Activex控件的事件的实现方法
2010/04/11 Javascript
JS使用getComputedStyle()方法获取CSS属性值
2014/04/23 Javascript
js封装可使用的构造函数继承用法分析
2015/01/28 Javascript
JS判断网页广告是否被浏览器拦截过滤的代码
2015/04/05 Javascript
JS制作简易计算器的实例代码
2020/07/04 Javascript
Vue自动构建发布脚本的方法示例
2020/07/24 Javascript
在python中的socket模块使用代理实例
2014/05/29 Python
Python中的深拷贝和浅拷贝详解
2015/06/03 Python
Python实现的文本编辑器功能示例
2017/06/30 Python
TF-IDF与余弦相似性的应用(二) 找出相似文章
2017/12/21 Python
Python 实现使用dict 创建二维数据、DataFrame
2018/04/13 Python
PyQt5每天必学之像素图控件QPixmap
2018/04/19 Python
简单了解python高阶函数map/reduce
2019/06/28 Python
html5构建触屏网站之网站尺寸探讨
2013/01/07 HTML / CSS
html5通过postMessage进行跨域通信的方法
2017/12/04 HTML / CSS
小米乌克兰网上商店:Xiaomi.UA
2019/10/29 全球购物
伊莱克斯阿根廷网上商店:Tienda Electrolux
2021/03/08 全球购物
化工工艺专业求职信
2013/09/22 职场文书
求职意向书范文
2014/04/01 职场文书
外贸会计专业自荐信
2014/06/22 职场文书
查摆问题对照检查材料
2014/08/28 职场文书
老公保证书怎么写
2015/02/26 职场文书
教师节主持词开场白
2015/05/29 职场文书
浪漫的婚礼主持词
2015/06/30 职场文书
给学校的建议书400字
2015/09/14 职场文书
委托书范本格式
2019/04/18 职场文书
python可视化之颜色映射详解
2021/09/15 Python