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 程式源碼
