PHP源码加密,以前只知道zend guard,今天才知道,原来还有个 ioncube

本日在客户处事器上,安装产物的时候发明,客户的php源码是用ioncube加密的, 而我们利用的是zend guard,安装了zend optimizer后发明有斗嘴。。

下面是网上看到的关于这两种加密东西的比拟。

 

一、概述
        PHP代码属于开源WEB代码,不需要编译,属于表明型语言。(即在WebServer中追加相应扩展名的表明措施即可完成对代码的阐明处理惩罚)。
按照PHP语言表明型的特性,团结个项目需求,我们就可以利用php.exe(PHP表明措施)对PHP代码举办表明应用,使得PHP不只合用于WEB情况也合用于当地处理惩罚,如:GTK等。
        我手中有一项目回收Delphi通道(PIP)方法挪用phpexe表明器,表明PHP代码完成WEB中的进程。
可是另一方面漏洞又浮现出来,由于PHP回收开源方法,差异用户很容易看到利用PHP语言所篇写的源措施,对源措施举办阐明,很容易的获得数据连 接,处理惩罚流程,甚至处事器名等重要信息,同样的也倒霉于软件开拓商的版权掩护。因此就必需对PHP源代码举办加密授权处理惩罚,即(Encode化与 License授权)
        当前市场上较风行的对PHP举办上述加密授权的软件主要有二种:
(1)Zend公司的ZendGuard。—-当前最新版本5.0.1(2008/06/17)
(2)ionCube公司的ionCube PHP Encode。—-当前最新版本6.5(2008/06/17)
        对付这两各较常用的Encode软件其二者有着差异的成果与各自的利益。

二、Zend Guard
        Zend Guard只能对带有PHP标志或源码的文件举办加密(如:.php,inc等),对付其他不带有PHP标志的文本方法生存的文件不能举办加密操纵,支持期限,注册码。
        支持PHP4.2.X~5.2.X版本的加密。
        利用的ZendOptimizer(PHP引擎)可以提高源码20~50%以上的速度优化,团结ZendGuard可以提高至50%以上的机能速度 优化,且ZendOptimizer可以安装于当前较多主流系统中。(在利用ZendGuard加密时可选择ZendOptimizer版本举办更多的优 化处理惩罚),别的,ZendGuard只能用于设置了ZendOptimizer的情况中,不能独立运行。(必需在php.ini文件中举办设置)

*别的需要值得留意的是ZendGuard在PHP4下的错误,对付PHP4的绝对路径及相对路径在加密时会呈现较大的不同。

        在PHP4.4.1情况下,如有如下两个文件:
Test.php

引用:

<?php
require_once(”inc/test1.php”);
?>

inc/Test1.php

引用:

<?php
echo realpath(dirname(__FILE__));
?>

        不举办加密的前提下,显示的功效是: C:/LocalWeb/zendtest/inc
        可是加密后却显示: C:/LocalWeb/zendtest-encode/zendtest

        可以发明颠末ZendGuard加密后inc目次被去掉了,显示的是被包括之前的文件的地点。(即__FILE__被当成姑且常量显示了出来)。
*该问题经测试,在PHP5.2.6情况下没有发明该问题。

三、ionCube PHP Encode
        ionCube PHP Encode,由ionCube开拓,用于对PHP或非PHP文件举办加密事情。ionCube在成果方面颠末测试可以优胜于Zend公司的 ZendGuard,不只支持期限,注册码,等加密方法,还支持对IP,MAC地点等巨大的加密方法。别的,对付ionCube来说不只可以加密带有 PHP标志或源码的php文件还可以对非php文件的以text方法生存的文件举办加密操纵,如xml,js,css等。(可是读写时必需利用 ionCube所提供的读入API举办读写操纵。)
        可加密的PHP版本从PHP4.0.6~5.2.X(比ZendGuard高2个级别)
ionCube与Zend一样,为了提高PHP机能优化也提供了相应的PHP引擎,可觉得大大都操纵系统提供PHP优化成果,可是惋惜的是,至今未提供Windows版本的PHP引擎。
        对付之前ZendGuard中所说的PHP4情况下路径问题,在ionCube中没有呈现,可以看出ionCube相对不变。
对付ionCube来说,对带有PHP标志或源码的文件回收压缩加密方法处理惩罚,对付非php的文本类文件则回收加密方法处理惩罚。在读入时必需利用 “ioncube_read_file/ ioncube_write_file”读写文件。因此在利用ionCube加密前需要对相应的PHP代码举办改革后才气利用。

四、Zend Guard与ionCube较量功效
        以下较量功效项是小我私家按照自我判定发生不做为讼事方较量功效。

较量项目

 

ZendGuard

 

ionCube PHP Encode

 

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/8350.html