前言
首要说说为何要用PHP-Beast?
有时候咱们的代码会放到代理商上, 因此特别有可能代码被盗取,或咱们写了一个商场系统况且不期盼代码开源,因此此时候就必须加密咱们的代码。 另一PHP-Beast是完全免费和开源的, 当其不可完成满足你的需求时, 能够修改其代码而满足你的要。
编译安装如下
重视:倘若你必须运用,首要修改key。能够参考下文
Linux编译安装:
$ wget https://github.com/liexusong/php-beast/archive/master.zip
$ unzip master.zip
$ cd php-beast-master
$ phpize
$ ./configure
$ sudo make && make install
编译好之后修改php.ini配置文件, 加入配置项: extension=beast.so, 重启php-fpm 。
配置项:
beast.cache_size = size
beast.log_file = "path_to_log"
beast.log_user = "user"
beast.enable = On
beast.log_level支持参数:
1. DEBUG
2. NOTICE
3. ERROR
支持的模块有:
1. AES
2. DES
3. Base64
经过测试环境:
Nginx + Fastcgi + (PHP-5.2.x ~ PHP-7.1.x)
怎么加密你的项目
加密方法1:
安装完 php-beast 后能够运用 tools 目录下的 encode_files.php 来加密你的项目。运用 encode_files.php 之前先修改 tools 目录下的 configure.ini 文件,如下:
; source path
src_path = ""
; destination path
dst_path = ""
; expire time
expire = ""
; encrypt type (selection: DES, AES, BASE64)
encrypt_type = "DES"
src_path 是要加密项目的路径,dst_path 是保留加密后项目的路径,expire 是设置项目可运用的时间 (expire 的格式是:YYYY-mm-dd HH:ii:ss)。encrypt_type是加密的方式,选取项有:DES、AES、BASE64。 修改完 configure.ini 文件后就能够运用命令 php encode_files.php 起始加密项目。
加密方法2:
运用beast_encode_file()函数加密文件,函数原型如下:
beast_encode_file(string $input_file, string $output_file, int expire_timestamp, int encrypt_type)。 $input_file: 要加密的文件$output_file: 输出的加密文件路径$expire_timestamp: 文件过期时间戳$encrypt_type: 加密运用的算法(支持:BEAST_ENCRYPT_TYPE_DES、BEAST_ENCRYPT_TYPE_AES)制定自己的php-beast
php-beast 有多个地区能够定制的,以下一一列出: 运用 header.c 文件能够修改 php-beast 加密后的文件头结构,这般网上的解密软件就不可认识咱们的加密文件,就不可进行解密,增多加密的安全性。php-beast 供给只能在指定的设备上运行的功能。要运用此功能能够在 networkcards.c 文件添加能够运行设备的网卡号,例如:char *allow_networkcards[] = {
"fa:16:3e:08:88:01",
NULL,
};
这般设置之后,php-b
|