-1

我最近使用ShowMyCode对一个旧脚本进行 deZend 以了解它是如何工作的,但在 dezend 之后,所有 1000 行都显示为这样

function s65615il8e( $IlbXmxb915, $B94omi07x1 = 0, $i4ss65VOR0 = 0 )
{
$JleV65B6RB = array( "1276" => "period", "4126" => "V2_HASH" );
if ( 0 < $B94omi07x1 || 0 < $i4ss65VOR0 )
{
    return substr( $JleV65B6RB[$IlbXmxb915], $B94omi07x1, $i4ss65VOR0 );
}
return $JleV65B6RB[$IlbXmxb915];
}

function e4l9roibmi( $xolsL1jB0i, $dBXj7eREB6 = 0, $oR609Xb5oV = 0 )
{
$wewOBeEdoe = array( "4126" => "B8REXV4YAS6A9WVBNFEV", "1276" => "76GDKGBBKZRJ597W8F7T" );
if ( 0 < $dBXj7eREB6 || 0 < $oR609Xb5oV )
{
    return substr( $wewOBeEdoe[$xolsL1jB0i], $dBXj7eREB6, $oR609Xb5oV );
}
return $wewOBeEdoe[$xolsL1jB0i];
}

如您所见,它完全不可读,

这个方法叫什么,我怎样才能像这样加密我的 php 代码

4

3 回答 3

2

这称为混淆

我可以告诉你:不要这样做。

很容易恢复。比 C++ 或任何真正编译的语言更容易。你只会用这种技术欺骗自己。

如果您仍然想这样做,请看一下:是否有 PHP 的代码混淆器?

于 2012-12-28T20:44:58.043 回答
1

您必须使用 PHP 混淆器。查看这个问题以获取更多信息。

于 2012-12-28T20:41:51.297 回答
0

混淆的想法是使代码不可读。

所以这可能不是你想要的。但这是去混淆的代码

function function1( $var1, $var2 = 0, $var3 = 0 ) {
    $array1 = array( "1276" => "period", "4126" => "V2_HASH" );
    if ( 0 < $var2 || 0 < $var3 ) {
        return substr( $array1[$var1], $var2, $var3 );
    }
    return $array1[$var1];
}

function function2( $var1, $var2 = 0, $var3 = 0 ) {
    $array1 = array( "4126" => "B8REXV4YAS6A9WVBNFEV", "1276" => "76GDKGBBKZRJ597W8F7T" );
    if ( 0 < $var2 || 0 < $var3 ) {
        return substr( $array1[$var1], $var2, $var3 );
    }
    return $array1[$var1];
}

没有什么知道旧函数/变量名称在哪里。但更容易阅读他们现在在做什么。希望有帮助!

于 2012-12-28T21:25:24.667 回答