php-beast是一个PHP源码加密的模块,其使用DES算法加密,用户可以自定义加密的key来加密源代码,可以很好的保护你的代码。主要应用情景有:1) 代码放在虚拟主机上,有泄漏源码的危险。2) 商业保护,当项目需要收费时就可以加密你的代码不被修改。
可以通过修改项目目录下的key.c文件来修改加密的key,也可以通过项目目录下的gen_key.php来生成一个随机的key文件。
可以通过项目目录下的encode_files.php来进行加密整个项目,使用方法是:
$ php encode_files.php source_dir target_dir
source_dir是要加密的项目,而target_dir是生成后保存的目录。
使用了php-beast之后性能不会下降,而且会有所提升,主要原因是php-beast缓存了解密后的代码,所以二次访问时不会再进行解密操作,所以会比原来读文件更快。另外设置较大的缓存效率会更好,可以通过beast.cache_size配置项来设置。
1.5 版本是稳定的版本,完全可以使用在商业项目,而且对原来的bug进行了修复。值得一提的是,1.5版本会限制加密PHP文件的大小(一般最大为64k,可以通过beast_support_filesize()函数来获取最大值),所以加密失败很大可能是因为文件太大。