好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

php源码程序加密方法 - php函数

php源码程序加密方法

文章介绍了两个给php程序自身加密的方法,我们常的方法base64_encode(gzdeflate($contents))这样来加密了,第二种方法不多见有需要的朋友也可以参考一下.

实例1,代码如下:

<?php   function  encode_file_contents( $filename ) {   $type = strtolower ( substr ( strrchr ( $filename , '.' ),1));   if ( 'php' == $type  &&  is_file ( $filename ) &&  is_writable ( $filename )){ // 如果是PHP文件 并且可写 则进行压缩编码    $contents  =  file_get_contents ( $filename ); // 判断文件是否已经被编码处理    $contents  = php_strip_whitespace( $filename );   // 去除PHP头部和尾部标识    $headerPos  =  strpos ( $contents , '<?php' );   $footerPos  =  strrpos ( $contents , '?>' );   $contents  =  substr ( $contents , $headerPos +5, $footerPos - $headerPos );   $encode  =  base64_encode (gzdeflate( $contents )); // 开始编码    $encode  =  '<?php' . "n eval(gzinflate(base64_decode(" . "'" . $encode . "'" . ")));nn?>" ;   return   file_put_contents ( $filename , $encode );  //开源代码phpfensi.com   }   return  false;   }   //调用函数    $filename = 'dam.php' ;   encode_file_contents( $filename );   echo   "OK,加密完成!"    ?> 

实例2,代码如下:

<?php   function  RandAbc( $length = "" ){ //返回随机字符串      $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" ;     return   str_shuffle ( $str );  }  $filename = 'dam.php' ;  $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 ='<?php  '. $s .  '   ?>';  echo   "OK,加密完成!" ;  //生成 加密后的PHP文件   $fpp1  =  fopen ( 'dam.php' , 'w' );  fwrite( $fpp1 , $s )  or   die ( '写文件错误' );   ?> 

查看更多关于php源码程序加密方法 - php函数的详细内容...

  阅读:40次