我一直在使用PHP桌面,但是如果我想共享一个项目,我不想让用户看到代码中的所有内容。
我尝试了建议的代码保护程序,但似乎没有任何东西适用于当前版本。我发现了一个简单的PHP混淆代码,但它给出了一个错误。它也会生成一些输出,但无法回显结果。
错误:
警告:php_strip_whitespace():无法打开流:第11行的C:\ xampp \ htdocs \ PHP Obfuscator \ Obfus.php没有错误
代码:
<?php
//$infile = file_get_contents("Input.php");
$infile = '<?php echo "Hello World 123"; ?>';
$outfile = "Output.php";
echo "Processing $infile to $outfile\n";
$data="ob_end_clean();?>";
$data.=php_strip_whitespace($infile); // Remove whitespace
$data.=gzcompress($data,9); // Compress data
$data=base64_encode($data); // Encode in base64
// Generate output text
$out='<?ob_start();$a=\''.$data.'\';eval(gzuncompress(base64_decode($a)));$v=ob_get_contents();ob_end_clean();?>';
// Write output text
//file_put_contents($outfile,$out);
echo $out;
?>
是否有人知道如何修复此代码以使那些下载exe的普通用户更难阅读PHP?
这只会阻止非编码器,因为它会被包装在exe中,我知道它不是隐藏代码源的安全方法。
还有谁有blenc等使用当前版本?在完成教程后,我没有运气。
答案 0 :(得分:4)
php_strip_whitespace()
的参数必须是文件名,而不是原始字符串。将数据写入临时文件,然后清除它,然后在完成后删除临时文件。
无论如何,你说这一切都错了。通过混淆实现的安全性根本不是真正的安全性。任何有能力的程序员都会识别base64编码,解压缩压缩数据是微不足道的。然后,一个体面的IDE可以通过几次击键恢复丢失的空白。此外,您的代码及其string part1 = hello, world
string part2 = how are you
string part3 = hello \ ok
字面上告诉用户您首先对代码进行了模糊处理。
如果您不希望用户访问源,请不要分发源,句点。使用API或编译器,而不是混淆器。