+ -
当前位置:首页 → 问答吧 → 利用Zend Guard 加密php文件, 常量、字符串的没有难阅读化的问题

利用Zend Guard 加密php文件, 常量、字符串的没有难阅读化的问题

时间:2007-01-09

来源:互联网

Zend Guard 可以加密php的代码文件, 但是问题依然不小,将加密后的文件恢复可以看到,
Zend Guard 的加密使原文件中的“变量”“类名”都发生了变化,使之难阅读化了(变量名很怪),但是对于字符串的加密却没有改变使之难阅读化。
如下所示是加密原文件和加密破解后文件,这样的话,如果我写:
define('CLASSNAME1', 'myNewClass');
$c = new CLASSNAME1;
这样的语句系统就会提示找不到名为myNewClass的类,原因很简单,因为myNewClass的文件一旦被加密,myNewClass这样的名称
其实不再存在了,它被“难阅读化了”,可能叫V92ebdpoerdasew5ffe之类的怪名字了。
如何解决这个问题,我还没找到答案,请各位帮帮忙。


test.php

<?php

$a = 1;
$b = 2;
$c = $a + $b;
echo $c;

/* comment comment comment */
echo "zzzzzzzzzzzzzzzzzzz\n";

class TestClass {
        var $test;
        function setTest($var){
                $this->test = $var;
        }
        function getTest(){
                return $this->test;
        }
}

// comment
$obj = new TestClass();
$obj->setTest(1);
echo $obj->getTest();
?>
test.php �y�i化後

<?php $V0cc175b9 = 1; $V92eb5ffe = 2; $V4a8a08f0 = $V0cc175b9 + $V92eb5ffe; echo $V4a8a08f0; echo "zzzzzzzzzzzzzzzzzzz\n";
class F3b5abadd { var $V098f6bcd; function F5f854b88($Vb2145aac){ $this->V098f6bcd= $Vb2145aac; }
function F9c25887d(){ return $this->V098f6bcd; } } $Vbe8f8018 = new F3b5abadd(); $Vbe8f8018->F5f854b88(1);
echo $Vbe8f8018->F9c25887d(); ?>

作者: moonlit   发布时间: 2007-01-08

这好象不是zend guard加密的

作者: eb2000   发布时间: 2007-08-03