# EnPHP
![LOGO](https://github.com/djunny/enphp/raw/master/logo.png)
```
// 一个开源加密混淆 PHP 代码项目
// a Open Source PHP Code Confusion + Encryption Project
```
## 项目地址
GITHUB:https://github.com/djunny/enphp
GITEE:https://gitee.com/mz/enphp_opensource
## 背景
```
曾经,作者也是商业软件开发者中小将一名,软件总是被人破解,于是花了几个月研究了 EnPHP。
这套项目也有偿提供过给很多人,不过,应该网上存在不少破解了。
项目主要贵在为大家提供一个加密混淆和还原的思路。
// 严禁用于非法用途。
```
## 加密效果
![LOGO](https://github.com/djunny/enphp/raw/master/encode.png)
## 使用方法
```
include './func_v2.php';
$options = array(
//混淆方法名 1=字母混淆 2=乱码混淆
'ob_function' => 2,
//混淆函数产生变量最大长度
'ob_function_length' => 3,
//混淆函数调用 1=混淆 0=不混淆 或者 array('eval', 'strpos') 为混淆指定方法
'ob_call' => 1,
//随机插入乱码
'insert_mess' => 0,
//混淆函数调用变量产生模式 1=字母混淆 2=乱码混淆
'encode_call' => 2,
//混淆class
'ob_class' => 0,
//混淆变量 方法参数 1=字母混淆 2=乱码混淆
'encode_var' => 2,
//混淆变量最大长度
'encode_var_length' => 5,
//混淆字符串常量 1=字母混淆 2=乱码混淆
'encode_str' => 2,
//混淆字符串常量变量最大长度
'encode_str_length' => 3,
// 混淆html 1=混淆 0=不混淆
'encode_html' => 2,
// 混淆数字 1=混淆为0x00a 0=不混淆
'encode_number' => 1,
// 混淆的字符串 以 gzencode 形式压缩 1=压缩 0=不压缩
'encode_gz' => 0,
// 加换行(增加可阅读性)
'new_line' => 1,
// 移除注释 1=移除 0=保留
'remove_comment' => 1,
// debug
'debug' => 1,
// 重复加密次数,加密次数越多反编译可能性越小,但性能会成倍降低
'deep' => 1,
// PHP 版本
'php' => 7,
);
$file = 'code_test/1.php';
$target_file = 'encoded/2.php';
enphp_file($file, $target_file, $options);
```
## 回归测试脚本:
可以将你要测试的代码放至 code_test 中,运行命令:
```
php code_test.php
```
程序会自动进行回归测试,我也放了一些之前要测试的脚本在里边
P.S.
```
本来,还实现了 goto + xor 变种,不过兼容性和性能有点差,等有时间精力的时候再研究罢...
```
# 一些注意事项
## 如何让 EnPHP 加密强度更高?
1. 将全局逻辑尽量变成类方法,EnPHP 对类加密会有更好的加密混淆效果
2. 对于 class 的变量初始化请放至析构(__construct)方法中
3. 对于多维数组能用数字下标尽量用数字
4. 使用注释加密加强混淆强度
## 在混淆类名时,代码一定要有先后顺序:
```
interface i {
function init($a, $b);
}
class ii implements i {
// PHP 中继承的参数名可以不一样
function init($b, $c) {
echo $b, $c;
}
}
```
```
namespace a{
class b{
}
# 正确
$b = new \a\b();
# 错误
#$b = new b():
}
```
## 使用注释语法加密字符串(支持字符串+数字):
```
//格式:/*<encode>*/要二次混淆的内容/*</encode>*/
$a = /*<encode>*/"明文数据1"/*</encode>*/;
echo /*<encode>*/2/*</encode>*/;
print(/*<encode>*/"明文数据3"/*</encode>*/);
```
## 使用注释语法去除代码:
```
echo 1;
/*<hide>*/
echo 2;
/*</hide>*/
echo 3;
//格式:/*<hide>*/要隐藏的代码/*</hide>*/
```
没有合适的资源?快使用搜索试试~ 我知道了~
一个加密混淆 PHP 代码项目,对PHP代码进行加密,防破解
共31个文件
php:26个
png:3个
md:1个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 134 浏览量
2023-10-13
14:39:36
上传
评论
收藏 116KB ZIP 举报
温馨提示
回归测试脚本: 可以将你要测试的代码放至 code_test 中,运行命令: php code_test.php 程序会自动进行回归测试,我也放了一些之前要测试的脚本在里边 如何让 EnPHP 加密强度更高? 将全局逻辑尽量变成类方法,EnPHP 对类加密会有更好的加密混淆效果 对于 class 的变量初始化请放至析构(_construct)方法中 对于多维数组能用数字下标尽量用数字 使用注释加密加强混淆强度
资源推荐
资源详情
资源评论
收起资源包目录
enphp_opensource-master.zip (31个子文件)
enphp_opensource-master
LICENSE 34KB
logo.png 8KB
qrcode.png 2KB
func_v2.php 64KB
encode.png 35KB
code_test.php 3KB
README.md 4KB
code_test
7.php 32KB
1.php 6KB
10.php 517B
15.php 1KB
close_tag.php 3KB
heredoc.php 374B
4.php 1KB
namespace2.php 3KB
11.php 397B
6.php 59KB
log.php 2KB
static.php 2KB
encode.php 718B
class.php 2KB
namespace.php 580B
a.php 15B
util.php 8KB
class_child_call.php 389B
5.php 28KB
13.php 727B
undefined.php 143B
8.php 4KB
9.php 407B
12.php 1013B
共 31 条
- 1
资源评论
云哲-吉吉2021
- 粉丝: 3971
- 资源: 1129
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Java《基于springboot框架搭建的B2C商城》+项目源码+文档说明
- 【小程序毕业设计】面向企事业单位的项目申报小程序源码(完整前后端+mysql+说明文档+LW).zip
- 【小程序毕业设计】论坛小程序源码(完整前后端+mysql+说明文档).zip
- Java《基于SSM的高校共享单车管理系统》+项目源码+文档说明
- 【小程序毕业设计】讲座预约系统微信小程序源码(完整前后端+mysql+说明文档+LW).zip
- 【小程序毕业设计】驾校报名小程序源码(完整前后端+mysql+说明文档+LW).zip
- 程序设计竞赛-在线判题系统(OJ系统)【含Web端+判题端】+项目源码+文档说明
- 大数据时代下短视频观看行为数据采集与分析的设计与实现
- 【小程序毕业设计】图书馆座位再利用系统源码(完整前后端+mysql+说明文档).zip
- 【小程序毕业设计】自习室预约系统源码(完整前后端+mysql+说明文档).zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功