VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > PHP >
  • php源码程序加密方法

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

实例1,代码如下:

  1. <?php  
  2. function encode_file_contents($filename) {  
  3. $type=strtolower(substr(strrchr($filename,'.'),1));  
  4. if('php'==$type && is_file($filename) && is_writable($filename)){// 如果是PHP文件 并且可写 则进行压缩编码  
  5. $contents = file_get_contents($filename);// 判断文件是否已经被编码处理  
  6. $contents = php_strip_whitespace($filename);  
  7. // 去除PHP头部和尾部标识  
  8. $headerPos = strpos($contents,'<?php');  
  9. $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."'".")));nn?>";  
  13. return file_put_contents($filename,$encode); 
  14. //开源代码phpfensi.com 
  15. }  
  16. return false;  
  17. }  
  18. //调用函数  
  19. $filename='dam.php';  
  20. encode_file_contents($filename);  
  21. echo "OK,加密完成!"  
  22. ?> 

实例2,代码如下:

  1. <?php  
  2. function RandAbc($length=""){//返回随机字符串 
  3.   $str="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
  4.   return str_shuffle($str); 
  5. $filename='dam.php'
  6. $T_k1=RandAbc();//随机密匙1 
  7. $T_k2=RandAbc();//随机密匙2 
  8. $vstr=file_get_contents($filename);//要加密的文件 
  9. $v1=base64_encode($vstr); 
  10. $c=strtr($v1,$T_k1,$T_k2);//根据密匙替换对应字符。 
  11. $c=$T_k1.$T_k2.$c
  12. $q1="O00O0O"
  13. $q2="O0O000"
  14. $q3="O0OO00"
  15. $q4="OO0O00"
  16. $q5="OO0000"
  17. $q6="O00OO0"
  18. $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.'))));').'"));'
  19. $s='<?php 
  20. '.$s
  21.  ?>'; 
  22. echo "OK,加密完成!"
  23. //生成 加密后的PHP文件 
  24. $fpp1 = fopen('dam.php','w'); 
  25. fwrite($fpp1,$sor die('写文件错误');  
  26. ?> 
  27.  

出处:http://www.phpfensi.com/php/20140823/4677.html


相关教程