在PHP源代码中混淆字符串值

时间:2011-05-12 19:56:14

标签: php source-code-protection

我想以简单的方式保护PHP源代码。

这是一个例子。

 $a = "\x46\122" . chr(578813952>>23) . "" . chr(0105) . "\x2d"; 
 $b = "\x73" . chr(847249408>>23) . "" . chr(0162) . "\x69" . chr(0141) . "" . chr(905969664>>23) . ""; 
 $c = "" . chr(0x53) . "" . chr(0105) . "\x52\x56" . chr(0105) . "\x52" . chr(796917760>>23) . "\x4e" . chr(545259520>>23) . "\x4d" . chr(0x45) . "";

是。

$a="FREE-";
$b="serial";
$c="SERVER_NAME";

请帮我一个人转换这种类型的字符串??

有3种加密方式。

输入[1]:"\x46\122"
输入[2]:chr(0105)
输入[3]:chr(578813952>>23)

请帮我创建一个转换函数...来自PHP字符串。

谢谢你!

------------------------我更新问题------------------- < / p>

好的......我应该改变问题..

我想创建一个函数。

function1。

$a = "FREE-";
echo function1($a);

---&GT;输出

"\x46\122" . chr(578813952>>23) . "" . chr(0105) . "\x2d";

在此函数中,Function随机使用3种逻辑。 这是3种类型。

Type[1] : "\x46\122"
Type[2] : chr(0105)
Type[3] : chr(578813952>>23)

你能帮助我......

3 个答案:

答案 0 :(得分:30)

坦率地说,这是一种“保护”代码的愚蠢方式。希望您意识到,一旦将代码交付给客户端,他们可以简单地撤消所有这些并自行提取值吗?

使用合法手段保护代码。 “这是我的代码,你不能分享它。如果你这样做,我得到50亿美元和Droit de Seigneur与你最美丽的女儿,或者如果它们都是丑陋的话,额外增加200亿美元”。

与您使用的任何谷物盒解码器环湿式面巾纸方法相比,铁质许可协议将得到更好的保护。

答案 1 :(得分:9)

如需进一步的建议,为什么这会浪费你的时间:

在8:36被问到,在8:44解码。八分钟的保护:https://stackoverflow.com/questions/5456462/what-does-this-php-code-do

在11:01被问到,在11:17解码,并在11:47非常好地分析。 Hacked, what does this piece of code do?

在第一种情况下,我愿意打赌大部分最快海报的时间是用。所以要确信无论你是否试图模糊你的代码,只需要三到四分钟就可以撤消你已经完成的任何事情。

你花了多少时间来混淆你的代码什么时候只花几分钟来撤消你已经完成的事情?是否可以更好地编写您的客户喜欢的精彩功能?

答案 2 :(得分:2)

ord将为您提供角色的ASCII值,使用它我们可以生成您想要的3件事。

类型1:使用dechex将int转换为十六进制。

$chr = 's';
$hex = dechex(ord($chr)); // 73

类型2:使用decoct转换为八进制。

$chr = 'E';
$oct = decoct(ord($chr)); // 105

类型3:使用<<(向左移动)操作符。

$chr = 'e';
$bin = ord($chr)<<23; // 847249408