在 Ubuntu 上给 PHP 代码“加密”,通常有以下几种常见场景和方案。先说结论,再给具体做法。
把 PHP 编译成字节码,源码不可读。
sudo apt update
sudo apt install php-cli
下载 ionCube Loader
https://www.ioncube.com/loaders.php
解压并复制 loader
tar -xzf ioncube_loaders_lin_x86-64.tar.gz
sudo cp ioncube/ioncube_loader_lin_8.1.so /usr/lib/php/20210902/
zend_extension=/usr/lib/php/20210902/ioncube_loader_lin_8.1.so
ioncube_encoder /var/www/html /var/www/encoded
pecl install swoole
加密:
php swoole-compiler encode app.php
✅ 优点:
适合不想花钱的场景。
工具:
示例(yakpro-po):
git clone https://github.com/pk-fr/yakpro-po
php yakpro-po.php source.php > encoded.php
⚠️ 只能防小白,不能防逆向。
把核心逻辑写成 C 扩展
如果你只是想:
直接用 PHP 内置函数即可:
// AES 加密
$data = openssl_encrypt(
'secret',
'AES-256-CBC',
$key,
0,
$iv
);
| 需求 | 推荐 |
|---|---|
| 商业项目 | ionCube |
| 高性能 | Swoole Compiler |
| 免费 | 混淆工具 |
| 核心算法 | C 扩展 |
| 数据加密 | OpenSSL |
如果你告诉我:
我可以给你最合适的方案和完整命令。