zoukankan      html  css  js  c++  java
  • php代码混淆器2.0.0版

    php代码混淆器2.0.0版

    PHPObfuscator2.0.0版

    在网上搜索一下有很多 JS的混淆器并且效果很好,但就没有一个混淆PHP代码的工具。为了做PHP代码混淆本人在网上纠结了一段时间。国外的混淆工具也调试了几个,就没有对中文支持的。

    之后花了一段时间,从php文件夹遍历到分析PHP代码的特征,然后到字符串的混淆,写了这个简单的PHP代码混淆工具。方法很笨,但混淆的效果还不错,能够实现 PHP变量、函数、类和JS变量、函数、类的混淆,并且将PHP与JS、HTML的混合代码压缩为一行,这样即缩小了PHP文件的大小,又使PHP文件的代码更加难读懂。

    本方法的开源地址为:

    http://download.csdn.net/source/2805147

    版本为 php代码混淆器2.0.0版

    如果你用了这个方法,或是改写了方法中的某部分,可以在QQ群37304662中讨论,或者评论到本文后面。

    使用方法如下:

    /*
    #作者:潇湘博客
    #BLOG:http://blog.csdn.net/fkedwgwy
    #QQ群:37304662
    #开源地址:http://code.google.com/p/omcode/
    #本程序采用的是直接替换方法,因此在使用过程中应注意PHP、JS的函数、类的存在位置。
    #本程序功能是混淆PHP、JS的变量、函数、类,使得混淆后的程式难以读懂。并对PHP、HTML的混合代码进行格式化为一行。
    使用方法:

    红色部分是根据你项目的需要进行设置的。

    //要混淆的文件位置
    $mwww='./libwww1';
    //混淆后的文件存放位置
    $mdir='./libwww2';
    //不混淆的php文件
    $notfile=array('pinyin.php');

    //要替换的变量
    $mreplase=array('$select','$where',);

    //要替换的函数
    $mrefun=array('seturl','str_check');

    //要替换的类
    $mreclass=array('UploadFile');   
    */

    本工具对验证码类的混淆压缩效果如下:

    <? # #版权所有@翻版必究 # ?><?php class _RLMS_5fd823d908687d80c5b837be48e93a80b4daca { private $width,$height,$codenum; public $_RLMS_ee09f9ba96ac63eeff9b75417008357f06d3738d783f; private $_RLMS_5a237706df586a68d7bd5622b631f41506d3738d783f37cc29; private $_RLMS_29f57c1ce07ddb52facc8ca41229182106d373c422965c77eeb3849d = ''; function __construct($width='80',$height='20',$codenum='4') { $this->width=$width; $this->height=$height; $this->codenum=$codenum; } function _RLMS_0d870567895d8b2c7f03b06828f3b3fef1584b() { $this->outFileHeader(); $this->createCode(); $this->createImage(); $this->_RLMS_616f711d9800a56e062ef34bbe09b5a98ddf87b656183794e2(); $this->_RLMS_a621b9026cade2311acceb3408dc75d3a95dcbfb6523(); imagepng($this->_RLMS_fa747dcd2284a7eeb022a47e4493b9e9a9f7e93a311fb7a4f76dcf062b4b2d3b3bfb); imagedestroy($this->_RLMS_fa747dcd2284a7eeb022a47e4493b9e9a9f7e93a311fb7a4f76dcf062b4b2d3b3bfb); } private function outFileHeader() { header ("Content-type: image/png"); } private function createCode() { $this->checkcode = strtoupper(substr(md5(rand()),0,$this->codenum)); } private function createImage() { $this->_RLMS_fa747dcd2284a7eeb022a47e4493b9e9a9f7e93a311fb7a4f76dcf062b4b2d3b3bfb = @imagecreate($this->width,$this->height); $back = imagecolorallocate($this->_RLMS_fa747dcd2284a7eeb022a47e4493b9e9a9f7e93a311fb7a4f76dcf062b4b2d3b3bfb,255,255,255); $border = imagecolorallocate($this->_RLMS_fa747dcd2284a7eeb022a47e4493b9e9a9f7e93a311fb7a4f76dcf062b4b2d3b3bfb,0,0,0); imagefilledrectangle($this->_RLMS_fa747dcd2284a7eeb022a47e4493b9e9a9f7e93a311fb7a4f76dcf062b4b2d3b3bfb,0,0,$this->width - 1,$this->height - 1,$back); imagerectangle($this->_RLMS_fa747dcd2284a7eeb022a47e4493b9e9a9f7e93a311fb7a4f76dcf062b4b2d3b3bfb,0,0,$this->width - 1,$this->height - 1,$border); } private function _RLMS_616f711d9800a56e062ef34bbe09b5a98ddf87b656183794e2() { for ($_RLMS_586ca1c0f20074d205c4e7b591870c5f06d3739d7bdf05a60d7fc402d97c74=0;$_RLMS_586ca1c0f20074d205c4e7b591870c5f06d3739d7bdf05a60d7fc402d97c74<=200;$_RLMS_586ca1c0f20074d205c4e7b591870c5f06d3739d7bdf05a60d7fc402d97c74++) { $this->disturbColor = imagecolorallocate($this->_RLMS_fa747dcd2284a7eeb022a47e4493b9e9a9f7e93a311fb7a4f76dcf062b4b2d3b3bfb, rand(0,255), rand(0,255), rand(0,255)); imagesetpixel($this->_RLMS_fa747dcd2284a7eeb022a47e4493b9e9a9f7e93a311fb7a4f76dcf062b4b2d3b3bfb,rand(2,128),rand(2,38),$this->disturbColor); } } private function _RLMS_a621b9026cade2311acceb3408dc75d3a95dcbfb6523() { for ($_RLMS_586ca1c0f20074d205c4e7b591870c5f06d3739d7bdf05a60d7fc402d97c74=0;$_RLMS_586ca1c0f20074d205c4e7b591870c5f06d3739d7bdf05a60d7fc402d97c74<=$this->codenum;$_RLMS_586ca1c0f20074d205c4e7b591870c5f06d3739d7bdf05a60d7fc402d97c74++) { $bg_color = imagecolorallocate ($this->_RLMS_fa747dcd2284a7eeb022a47e4493b9e9a9f7e93a311fb7a4f76dcf062b4b2d3b3bfb, rand(0,255), rand(0,128), rand(0,255)); $_RLMS_83082d22f02a8c20bc3a48662fcacad106d3734c010d890386413ca7a65c5cf38004 = floor($this->width/$this->codenum)*$_RLMS_586ca1c0f20074d205c4e7b591870c5f06d3739d7bdf05a60d7fc402d97c74+5; $_RLMS_01700ca6c11bf8f67d9b1a10915a457406d373cf84226b2ee10e2cac2101ffea07e0545d44 = rand(0,$this->height-15); imagechar ($this->_RLMS_fa747dcd2284a7eeb022a47e4493b9e9a9f7e93a311fb7a4f76dcf062b4b2d3b3bfb, rand(5,8), $_RLMS_83082d22f02a8c20bc3a48662fcacad106d3734c010d890386413ca7a65c5cf38004, $_RLMS_01700ca6c11bf8f67d9b1a10915a457406d373cf84226b2ee10e2cac2101ffea07e0545d44, $this->checkcode[$_RLMS_586ca1c0f20074d205c4e7b591870c5f06d3739d7bdf05a60d7fc402d97c74], $bg_color); } } function __destruct() { unset($this->width,$this->height,$this->codenum); } } ?>

  • 相关阅读:
    HTTP和HTTPS的区别
    python计算机二级考试知识点——文件操作
    python二级考试知识点——turtle、random、time、PyInstaller、jieba、wordcloud
    淘宝搜索功能的测试
    百度搜索测试用例
    微信朋友圈测试用例
    微信聊天功能测试用例
    微信红包测试用例
    微信点赞功能测试用例
    SQL Server 远程共享文件夹备份
  • 原文地址:https://www.cnblogs.com/fengju/p/6173777.html
Copyright © 2011-2022 走看看