本文实例讲述了php实现源代码加密的方法。分享给大家供大家参考。具体实现方法如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
<?php function RandAbc( $length = "" ){ //返回随机字符串 $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" ; return str_shuffle ( $str ); } $filepath = 'index.php' ; $path_parts = pathinfo ( $filepath ); $filename = $path_parts [ "basename" ]; $T_k1 =RandAbc(); //随机密匙1 $T_k2 =RandAbc(); //随机密匙2 $vstr = file_get_contents ( $filename ); //要加密的文件 $v1 = base64_encode ( $vstr ); $c = strtr ( $v1 , $T_k1 , $T_k2 ); //根据密匙替换对应字符。 $c = $T_k1 . $T_k2 . $c ; $q1 = "O00O0O" ; $q2 = "O0O000" ; $q3 = "O0OO00" ; $q4 = "OO0O00" ; $q5 = "OO0000" ; $q6 = "O00OO0" ; $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 . '))));' ). '"));' ; $s ='<? '. $s . ' ?>'; echo $s ; //生成 加密后的PHP文件 ! is_dir ( 'create/' ) && mkdir ( 'create/' ); $fpp1 = fopen ( 'create/' . $filename , 'w' ); fwrite( $fpp1 , $s ) or die ( '写文件错误' ); echo '加密成功!' ; |
希望本文所述对大家的php程序设计有所帮助。