分享2种PHP的源码加密方式,附代码

来源:互联网 发布:阿里云多少钱一个月 编辑:程序博客网 时间:2024/06/23 13:44

PHP的源码加密方式1:


01<?php
02function encode_file_contents($filename) {
03$type=strtolower(substr(strrchr($filename,'.'),1));
04if('php'==$type && is_file($filename) && is_writable($filename)){// 如果是PHP文件 并且可写 则进行压缩编码
05$contents file_get_contents($filename);// 判断文件是否已经被编码处理
06$contents = php_strip_whitespace($filename);
07// 去除PHP头部和尾部标识
08$headerPos strpos($contents,'<?php');
09$footerPos strrpos($contents,'?>');
10$contents substr($contents,$headerPos+5,$footerPos-$headerPos);
11$encode base64_encode(gzdeflate($contents));// 开始编码
12$encode '<?php'."\n eval(gzinflate(base64_decode("."'".$encode."'".")));\n\n?>";
13return file_put_contents($filename,$encode);
14 
15}
16return false;
17}
18//调用函数
19$filename='dam.php';
20encode_file_contents($filename);
21echo "OK,加密完成!"
22?>

PHP的源码加密方式2:

01<?php
02function RandAbc($length=""){//返回随机字符串
03  $str="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
04  return str_shuffle($str);
05}
06$filename='dam.php';
07$T_k1=RandAbc();//随机密匙1
08$T_k2=RandAbc();//随机密匙2
09$vstr=file_get_contents($filename);//要加密的文件
10$v1=base64_encode($vstr);
11$c=strtr($v1,$T_k1,$T_k2);//根据密匙替换对应字符。
12$c=$T_k1.$T_k2.$c;
13$q1="O00O0O";
14$q2="O0O000";
15$q3="O0OO00";
16$q4="OO0O00";
17$q5="OO0000";
18$q6="O00OO0";
19$s='$'.$q6.'=urldecode("%6E1%7A%62%2F%6D%615%5C%76%740%6928%2D%70%78%75%71%79%2A6%6C%72%6B%64%679%5F%65%68%63%73%77%6F4%2B%6637%6A");$'.$q1.'=$'.$q6.'{3}.$'.$q6.'{6}.$'.$q6.'{33}.$'.$q6.'{30};$'.$q3.'=$'.$q6.'{33}.$'.$q6.'{10}.$'.$q6.'{24}.$'.$q6.'{10}.$'.$q6.'{24};$'.$q4.'=$'.$q3.'{0}.$'.$q6.'{18}.$'.$q6.'{3}.$'.$q3.'{0}.$'.$q3.'{1}.$'.$q6.'{24};$'.$q5.'=$'.$q6.'{7}.$'.$q6.'{13};$'.$q1.'.=$'.$q6.'{22}.$'.$q6.'{36}.$'.$q6.'{29}.$'.$q6.'{26}.$'.$q6.'{30}.$'.$q6.'{32}.$'.$q6.'{35}.$'.$q6.'{26}.$'.$q6.'{30};eval($'.$q1.'("'.base64_encode('$'.$q2.'="'.$c.'";eval(\'?>\'.$'.$q1.'($'.$q3.'($'.$q4.'($'.$q2.',$'.$q5.'*2),$'.$q4.'($'.$q2.',$'.$q5.',$'.$q5.'),$'.$q4.'($'.$q2.',0,$'.$q5.'))));').'"));';
20$s='<?php
21'.$s.
22'
23 ?>';
24echo "OK,加密完成!";
25//生成 加密后的PHP文件
26$fpp1 fopen('dam.php','w');
27fwrite($fpp1,$sor die('写文件错误');
28?>

其实,PHP加密源码方式有很多,譬如,免费的微盾PHP加密,还有 phpjm . net 搞的在线加密,只是phpjm更复杂点而已。

0 0