关于PHP源代码进行加密受权处理的两种加密工具对比
温馨提示:这篇文章已超过534天没有更新,请注意相关的内容是否还可用!
现在在用户服务器上,安装产品的之后看到,客户的php源码是用加密的,而咱们使用的是zendguard,安装了zend后看到有冲突。。php
以下是网上发现的关于这两种加密软件的对比。css
1、概述
PHP代码属于开源WEB代码,不需要编译,属于解释型语言。(即在中追加相应扩展名的解释程序便可完成对代码的剖析处理)。
根据PHP语言解释型的特点,结合个项目需求,咱们就可使用php.exe(PHP解释程序)对PHP代码进行解释应用,使得PHP不只适用于WEB环境也适用于本地处理,如:GTK等。
我手中有一项目引入通道(PIP)模式调用解释器,解释PHP代码完成WEB中的过程。
但是此外一方面问题又表现起来,因为PHP采用开源形式,不一样用户很容易看见使用PHP语言所篇写的源程序,对源程序进行预测php源码加密后报错,很容易的获取数据连接,处理流程,甚至服务器名等重要信息,一样的也不促使软件研发商的版权保护。所以就需要对PHP源代码进行加密受权处理,即(化与受权)
当前市场上较流行的对PHP进行上述加密受权的硬件主要有二种:
(1)Zend公司的。—-当前最新版本5.0.1(2008/06/17)
(2)公司的PHP。—-当前最新版本6.5(2008/06/17)
针对这两各较频繁使用的硬件其两者有着不一样的功能与各自的优势。
2、ZendGuard
ZendGuard只能对具有PHP标记或源码的文件进行加密(如:.php,inc等),对于其余不具有PHP标记的文本形式储存的文件不能进行加密操做,支持期限,注册码。
支持PHP4.2.X~5.2.X版本的加密。
使用的(PHP引擎)才能提高源码20~50%以上的速率优化,结合从而提高至50%以上的性能速度改进,且无法加装于当前较多主流平台中。(在使用加密时可选用版本进行更多的优化处理),另外,只能用于配置了的环境中,不能独立运行。(需要在php.ini文件中进行配置)
*另外需要值得留意的是在PHP4下的错误,对于PHP4的绝对模式及相对路径在加密时会发生较大的差别。性能改进
在PHP4.4.1环境下,若有下列两个文件:
Test.php服务器
引用:工具
inc/Test1.php性能
引用:测试
不进行加密的前提下,显示的结果是:C:///inc
但是加密后却显示:C://-/优化
能够看到通过加密后inc目录被除去了,显示的是被包括当时的文件的地址。(即被称作临时常量显示了起来)。
*该问题经测试,在PHP5.2.6环境下没有看到该问题。ui
3、PHP
PHP,由开发,用于对PHP或非PHP文件进行加密工做。在用途方面通过测试无法优胜于Zend公司的,不只支持期限,注册码,等加密方法,还支持对IP,MAC地址等复杂的加密方法。另外,对于来讲不只无法加密带有PHP标记或源码的php文件还无法对非php文件的以text方式保存的文件进行加密操做,如xml,js,css等。(但是读写时需要使用所提供的调用API进行读写操做。)
可加密的PHP版本从PHP4.0.6~5.2.X(比高2个级别)
与Zend同样,为了提高PHP性能改进也提供了相应的PHP引擎,能够为大多数操做平台提供PHP优化功能,可是惋惜的是,至今未提供版本的PHP引擎。
针对当时中所说的PHP4环境下模式问题php源码加密后报错,在中没有发生,能够看出相对稳定。
针对来讲,对具有PHP标记或源码的文件采用压缩加密方法处理,对于非php的文本类文件则采取加密方法处理。在调用时需要使用“/”读写文件。所以在使用加密前需要对相应的PHP代码进行改造后能够使用。
4、ZendGuard与比较结果
如下非常结果项是我的依据自我判断造成不成为官司方非常结果。
比较项目
PHP
比较结果
(强项)
PHP版本
PHP4.2.X~5.2.X
PHP4.0.6~5.2.X
PHP引擎
(支持主流系统)
PHP
(不包括的主流系统)
支持文件格式
php,inc或只能含有php标记代码的文件进行化处理。
php,inc,xml,js,.css可对全部以文本方式保存的文件进行处理。对php及带有php标记的文件以形式加密(二进制),对非php文件采用(加密方)式进行加密处理。但调用时需要采取其提供的API调用文件解读后使用。
IP地址加密
不支持
支持
物理MAC加密
不支持
支持
受权控制
支持
支持
代码时间限制
支持
支持
销售价格
(加密软件)
600美元约5160元(人民币)
约5850元(人民币)
引擎价格
免费
免费
PHP4与PHP5加密兼容问题
加密后会造成路径问题
不会造成路径问题
配置状况
需配置php.ini文件运行于相应下
(1)固定模式,配置php.ini文件;
(2)绑定方法,加密时手动绑定解密用dll文件(生成目录)不需配置php.ini文件。
无法看出对于与来讲各有优劣点,所以在选取产品时需要按照项目及代码情况来决定采取什么工具进行处理。
原文:
本文来自网络,如有侵权请联系网站客服进行删除
还没有评论,来说两句吧...