代码改变世界

使用 bcompiler 给PHP代码加密编译

2013-01-04 17:07  斌哥tobin  阅读(4121)  评论(0编辑  收藏  举报

PHP代码的加密,您开始想到的一定是Zend Encode,Zend官方出品当然值得信赖,但它是商业化产品,是收费的,网上找到的破解版也不尽人意。通过搜索,我找到了一个免费开源的加密工具 bcompiler,感谢作者开发出这么好的工具。

bcompiler全名是 PHP bytecode Compiler,即字节码编译。源码目前托管在PECL,网址:http://pecl.php.net/package/bcompiler

bcompiler是以PHP扩展的方式实现,用PHP函数的方式调用,十分方便PHP Coder们自行加密自己的代码。下面具体说一下安装和使用的方法。

关于安装

Linux安装bcompiler好像挺麻烦,要PECL库,有兴趣的同学可以搜索一下

今天拿到的是Windows的bcompiler,支持PHP 5.3,本人测试可以使用

安装办法

把php_bcompiler.dll复制到PHP扩展目录,改一下php.ini,加入

[PHP_BCOMPILER]
extension=php_bcompiler.dll

使用方法

<?php
$file_in[]="index.php";
$file_out[] = "index.compiler.php";//加密编译后的文件名
foreach ($file_out as $k=>$value) {
$fp = fopen( "$value" , "w");
bcompiler_write_header($fp);
bcompiler_write_file($fp, $file_in[$k]);//读取源文件代码,生成编译文件
bcompiler_write_footer($fp);
fclose($fp);
}
echo '<p>OK!</p>';
foreach ($file_out as $value) {
echo '<p><a href="'.$value.'">'.$value.'</a></p>';
}
?>

运行这段php代码就完成了加密编译了

php_bcompiler.dll下载地址

http://downloads.php.net/pierre/

搜索bcompiler即可,我的桌面环境是PHP 5.3 /CGI,所以下载的是php_bcompiler-5.3-nts-20111014.zip

单独加密某个文件可以使用Shen Cheng-Da已经写好的脚本:http://bencoder.urdada.net/

延伸阅读:

http://blog.urdada.net/2006/07/25/15/

使用 bcompiler 來編譯(加密)您的 PHP 原始碼

http://blog.lyhdev.com/2011/08/windows-bcompiler-php.html 

在 Windows 下使用 bcompiler 加密 PHP 程式源碼