pimjansen / qd-obfuscator
该软件包已被废弃,不再维护。未建议替代软件包。
面向对象PHP的基本但功能性的PHP混淆器
1.0.1
2018-06-20 15:12 UTC
Requires
- php: ^5.6 || ^7.0
- nikic/php-parser: ^v3.0
- symfony/config: ^3.2
- symfony/console: ^3.2
- symfony/dependency-injection: ^3.2
- symfony/event-dispatcher: ^3.2
- symfony/yaml: ^3.2
This package is auto-updated.
Last update: 2019-10-16 11:06:30 UTC
README
这是一个PSR/OOp PHP代码的"混淆器"。与其他混淆器不同,这些混淆器通常使用基于eval()
的可逆混淆,这个工具实际上解析PHP,并混淆变量名、方法等。这意味着它不能被诸如UnPHP之类的工具反转。
编写这个库是为了满足混淆私有库源代码的需求,出于各种原因,在没有保护源代码免受他人眼睛查看的措施下无法共享。在保留在标准PHP运行时上运行代码选项的同时,技术上无法对PHP源代码进行"加密"。诸如Zend Guard之类的工具使用运行时插件,但即使是这些也提供不了真正的安全性。
虽然这个工具不会使PHP代码无法阅读,但它会使代码的可读性显著降低。
它兼容PHP 5.6 + / 7.0 / 7.1
复制
这个仓库最初是由Naneau构建的,但已不再维护: https://github.com/naneau/php-obfuscator
这个仓库是原始仓库的副本,以继续进一步开发。
使用方法
在克隆此存储库并通过Composer安装依赖项(composer install
)后,运行以下命令以混淆PHP文件目录
./bin/obfuscate obfuscate /input/directory /output/directory
如果您通过Composer安装了此软件包,您将在相关的bin目录中找到obfuscate
命令。
配置
您可能会发现您需要阻止某些变量和方法被重命名。在这种情况下,您可以创建一个简单的YAML配置文件
parameters: # Ignore variable names obfuscator.scramble_variable.ignore: - foo - bar - baz # Ignore certain methods names obfuscator.scramble_private_method.ignore: - foo - bar - baz
您可以通过以下方式使用配置文件运行混淆器
./bin/obfuscate obfuscate /input/directory /output/directory --config=/foo/bar/config.yml