(对不起,我的英语不好!)
为了保护我的php源代码,我只想用ioncube加密一个文件(例如function.php),然后我想在其他php文件中调用加密文件!(其他PHP文件将使用mcrypt函数加密。
请参阅示例:
功能.php
<?php
// Only This file will be encrypted by the ionCube
function simple_encrypt($text)
{
$salt='whatever_you_want';
return trim(base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $salt, $text, MCRYPT_MODE_ECB, mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB), MCRYPT_RAND))));
}
function simple_decrypt($text)
{
$salt='whatever_you_want';
return trim(mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $salt, base64_decode($text), MCRYPT_MODE_ECB, mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB), MCRYPT_RAND)));
}
function decrypt_and_run($text) {
eval (simple_decrypt($text));
}
?>
脚本1.php
<?php
include "function.php";
decrypt_and_run("Mz/PKIZDmo1/VW4BNXX2d+XQD2dx1aB9gnBj1hbGzVM=");
// Mz/PKIZDmo1/VW4BNXX2d+XQD2dx1aB9gnBj1hbGzVM= ~ echo "hello world1!";
?>
脚本2.php
<?php
include "function.php";
decrypt_and_run("oD3R8wPlUujQEkJfyPvTJOKek7MjzAuGBn+PfyssjZ4=");
// oD3R8wPlUujQEkJfyPvTJOKek7MjzAuGBn+PfyssjZ4= ~ echo "hello world2!";
?>
脚本3.php
<?php
include "function.php";
decrypt_and_run("vMef6WP9xm1nmsAYMSgxFRY2nhBPTNWog3rLOGhb69Y=");
// vMef6WP9xm1nmsAYMSgxFRY2nhBPTNWog3rLOGhb69Y= ~ echo "hello world3!";
?>
1)这种方式是否完全保护了我所有的PHP源代码?(函数.php, 脚本 1.php, 脚本 2.php, 脚本 3.php,...)
2)评估函数在ioncube或Zend Guard中工作吗?
谢谢。
模糊代码只会使开发更加困难并增加 CPU 周期(从而减慢脚本速度)。 所有代码都是可逆向工程的。 您最好只声明 propper 许可证和/或使代码仅对开发人员可用
我过去尝试过类似的事情来避免逆向工程。您可以使用 IonCube 或 zend Guard 混淆所有代码。但是你的方式,eval=邪恶...
在完全dotNet上有一个PHP实现。法朗格
我用过过去,但简单的东西,但我听到了关于它的好事。试试吧..