http://blog.sina.com.cn/s/blog_7873b3ad01017bve.html
pHP源码加密方法调查
目前调查到有三种方式:
一、用在线加密http://www.phpjm.net/,(简单,但是不推荐)
)
1、免费情况
补充解释说明:
1、按时间授权:不限加密文件数量。时间指的是你的账号在我们平台上能使用授权版加密的期限,不是文件加密后会过期的时间。文件加密后过期由“锁定在某个日期段内运行”功能设置生效。
2、IP:php文件所在web站点的服务器IP
3、域名:php文件所在web站点的域名
4、锁定在某个日期段内运行:可以用来发布日期限制的许可(可将您的代码以试用方式进行发布)
5、很重要一点,直接用在线编译的话,需要上传自己文件上去,通过编译之后转出来。所以这可能造成别人那里有一份源码。
二、使用zend
optimizer + Zend Guard 对PHP源码加密。
Zend
Optimizer(以下简称ZO)用优化代码的方法来提高php应用程序的执行速度。实现的原理是对那些在被最终执行之前由运行编译器(Run-Time
Compiler)产生的代码进行优化。
一般情况下,执行使用ZO的php程序比不使用的要快40%到100%。这意味着网站的访问者可以更快的浏览网页,从而完成更多的事务,创造更好的客户满意度。
要能执行加密后的代码必须在服务器安装zendoptimizer。
有以下功能:
1、
版权控制
2、
代码时间限制
以下缺点:
Zend
Guard只能对带有PHP标记或源码的文件进行加密(如:.php,inc等),对于其他不带有PHP标记的文本方式保存的文件不能进行加密操作,支持期限,注册码。
不支持IP地址加密,不支持物理MAC加密,PHP
4与PHP5加密兼容加密后会产生路径问题
价格:600美元(现在的兑换约3685.5037人民币元)
补充说明
1、
在92.109下尝试装了ZO,但是linux版的zend
guard安装不了,因为缺少X-server。至少在本地尝试装不了。
2、
经调查目前来说Zend Guard 4.x
加密过的文件已经可以被反编译回来,不可靠了。但是但是 5.x 系列还是坚强的。
3、
经过再调查,发现还有一法,修改zend引擎实现php源码加密。请看附件<<修改zend引擎实现php源码加密的原来和实践>>,涉及到C和一些不知道是什么的修改。
三、使用ionCube PHP Encode 加密
对于之前ZendGuard中所说的PHP4环境下路径问题,在ionCube中没有出现,可以看出ionCube相对稳定。
但是有一个大问题:
对于ionCube来说,对带有PHP标记或源码的文件采用压缩加密方式处理,对于非php的文本类文件则采用加密方式处理。在读入时必须使用
“ioncube_read_file/
ioncube_write_file”读写文件。因此在使用ionCube加密前需要对相应的PHP代码进行改造后才能使用。
补充说明:
综合以上几种,个人还是比较支持第二种,毕竟是由php公司zend开发的。比较可靠一些。