PHP 源码加密模块 php-beast

GPL
PHP
跨平台
2013-05-14
liexusong

编译安装如下:


$ 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

温馨提示: 可以设置较大的缓存提高效率

使用php-beast的性能:

不使用php-beast的性能:

配置项:


 beast.cache_size = size
 beast.log_file = "path_to_log"
 beast.log_user = "user"
 beast.enable = On

支持的模块有:

 1. AES
 2. DES
 3. Base64

通过测试环境:


 Nginx + Fastcgi + (PHP-5.2.x ~ PHP-5.6.x)

注意

如果出现502错误,一般是由于GCC版本太低导致,请先升级GCC再安装本模块。

怎么加密项目

加密方案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)

1. $input_file: 要加密的文件
2. $output_file: 输出的加密文件路径
3. $expire_timestamp: 文件过期时间戳
4. $encrypt_type: 加密使用的算法(支持:BEAST_ENCRYPT_TYPE_DES、BEAST_ENCRYPT_TYPE_AES)

制定自己的php-beast

php-beast 有多个地方可以定制的,以下一一列出:

1. 使用 header.c 文件可以修改 php-beast 加密后的文件头结构,这样网上的解密软件就不能认识我们的加密文件,就不能进行解密,增加加密的安全性。

2. php-beast 提供只能在指定的机器上运行的功能。要使用此功能可以在 networkcards.c 文件添加能够运行机器的网卡号,例如:

char *allow_networkcards[] = {
	"fa:16:3e:08:88:01",
    NULL,
};

这样设置之后,php-beast 扩展就只能在 fa:16:3e:08:88:01 这台机器上运行。另外要注意的是,由于有些机器网卡名可能不一样,所以如果你的网卡名不是 eth0 的话,可以在 php.ini 中添加配置项: beast.networkcard = "xxx" 其中 xxx 就是你的网卡名,也可以配置多张网卡,如:beast.networkcard = "eth0,eth1,eth2"

3. 使用 php-beast 时最好不要使用默认的加密key,因为扩展是开源的,如果使用默认加密key的话,很容易被人发现。所以最好编译的时候修改加密的key,aes模块 可以在 aes_algo_handler.c 文件修改,而 des模块 可以在 des_algo_handler.c 文件修改。

开启debug模式

可以在configure时加入 --enable-beast-debug 选项来开启debug模式。开启debug模式后需要在php.ini配置文件中加入配置项:beast.debug_path 和 beast.debug_modebeast.debug_mode 用于指定是否使用debug模式,而 beast.debug_path 用于输出解密后的php脚本源码。这样就可以在 beast.debug_path 目录中看到php-beast解密后的源代码,可以方便知道扩展解密是否正确。

函数列表

1. beast_encode_file(): 用于加密一个文件

2. beast_avail_cache(): 获取可以缓存大小

3. beast_support_filesize(): 获取beast支持的最大可加密文件大小

4. beast_file_expire(): 获取一个文件的过期时间

5. beast_clean_cache(): 清空beast的所有缓存(如果有文件更新, 可以使用此函数清空缓存)

加载中

评论(10)

易水寒2012
winhex了解一下,可以查看加密密码
eechen的粉丝
eechen的粉丝
麻痹的真不错啊
李惟
李惟
不错 php-beast
理工小强
理工小强
效果如何 效率有没有影响 ~~ php-beast
pyruby
pyruby
求windows模块。。。 php-beast
pyruby
pyruby
php5.2.17安装完成后报段错误 php-beast
铂金小猪
铂金小猪
这个东西能在WIN平台下用吗? php-beast
铂金小猪
铂金小猪
列大,这个软件加密后的代码被暴力解密的可能性有多大?@liexusong php-beast
铂金小猪
铂金小猪
@liexuson 这个软件近期会有更新吗?WIN平台下的开发的怎么样了。我们的产品以后可能WIN平台下的做的更多一些。 php-beast
eechen
eechen
在使用 php-beast 加密代码后,在最坏情况下(时间复杂度为O(n^2))对10个数,执行10万次冒泡排序,耗时差距并不大: 1.583132982254秒(php-beast加密) vs 1.581433057785秒(正常),所以带有敏感数据的PHP文件,使用php-beast加密还是可以的。

php-beast Windows 版本发布,PHP 源码加密扩展

php-beast Windows 版本发布了。 此次更新主要增加到 Windows 平台的支持,可以在 VS11 和 VS14 版本上编译。之前不支持 Windows 平台是 beast 的痛,感谢 马犇 @imaben (https://github.co...

2017/03/22 21:49

PHP 源码加密扩展,php-beast v2.6 发布

php-beast v2.6 发布了。 此次更新主要功能是支持大文件加密,由于此前一直不支持大文件加密,所以导致某些有大文件的项目不能正常加密,为了解决这个问题而增加了大文件解密的功能。 更新到...

2017/03/20 13:46

PHP 源码加密扩展(php-beast)PHP7 版本发布

此版本主要支持PHP7,在github(https://github.com/liexusong/php-beast)上选择php7分支然后编译安装即可。 编译安装如下: $ wget https://codeload.github.com/liexusong/php-beast/zip...

2016/08/10 11:32

PHP-Beast v2.2 发布,PHP 源码加密扩展

PHP-Beast v2.2 发布了,此版本主要增加了以下功能: 加密项目的使用时间限制 绑定网卡号等功能。 怎么加密项目 安装完 php-beast 后可以使用 tools 目录下的 encode_files.php 来加密你的项...

2016/07/08 14:14

PHP-Beast V2.1 版本发布

PHP-Beast V2.1 版本发布了,此版本主要增加的功能有: 1. 增加AES加密模块 2. 增加base64加密模块 要使用AES加密模块只需要在php.ini修改配置项:beast.encrypt_handler = "aes-algo" 编译安...

2016/05/17 15:05

PHP 源码加密扩展 PHP-Beast V2.0 发布

此次更新主要支持自定义加密算法,你可以通过编写自己的加密算法嵌入到php-beast中。 你可以使用非公开的加密算法来加密你的php脚本,从而增加解密的难道. 具体编写教程可以参考链接: https...

2016/05/04 14:36

php-beast v1.5 版本发布,PHP 源码加密扩展

php-beast v1.5 版本发布,此次更新主要修复a.php包含b.php,b.php包含c.php出错的bug。例如: a.php <?php include 'b.php'; b.php <?php include 'c.php'; c.php <?php echo "Hello W...

2015/12/01 01:43

php-beast v1.4 发布(PHP源码加密扩展)

php-beast v1.4 发布,改进内容如下: 1) 此次更新主要修改自旋锁导致CPU 100%的bug。 2) 增加加密文件时过滤注释和空白功能,更节省内存。 使用案例: http://www.beastcoder.com/ PHP Beas...

2014/06/23 17:31

php-beast windows 版本发布

此版本增加了缓存功能,在https://github.com/liexusong/php-beast/tree/master/win32 下有编译好的PHP5.2版本的dll文件,可以下载使用。另外,由于win版本加密后的文件跟linux版本加密的文件...

2014/04/04 10:35

php-beast V1.3 发布 (PHP源码加密模块)

php-beast V1.3 发布,这次更新主要是修改了include()和require()时运行失败的情况, 可以完美运行所有加密的程序. php-beast的使用案例: http://www.beastcoder.com/ PHP Beast是一个源码加密...

2014/01/25 17:23

没有更多内容

加载失败,请刷新页面

1
回答
php-beast windows 如何编译?

@eechen 你好,想跟你请教个问题: 在帖子http://www.oschina.net/news/50430/php-beast-windows 中...

2016/07/12 12:33
3
回答
进行过性能测试没有?

这个性能会不会大打折扣。

2014/06/29 18:00

没有更多内容

加载失败,请刷新页面

没有更多内容

使用PHP-Beast加密你的PHP源代码

PHP-Beast是一个PHP源码加密的模块,其使用DES算法加密,用户可以自定义加密的key来加密源代码。 1. PHP-Beast的安装 $ wget https://github.com/liexusong/php-beast/archive/master.zip ...

2013/06/11 14:31
9K
4
用php-beast加密php代码

# PHP-Beast介绍 PHP-Beast是一个PHP的模块,用于对PHP源代码进行加密。 项目的地址是:https://github.com/liexusong/php-beast # 安装 我的测试主机是Debian 8。 ``` Distributor ID: Debi...

2016/03/30 16:44
293
1
PHP加密扩展 (php-beast) 1.5版本 常见问题解答

1. 什么是php-beast? php-beast是一个PHP源码加密的模块,其使用DES算法加密,用户可以自定义加密的key来加密源代码,可以很好的保护你的代码。主要应用情景有:1) 代码放在虚拟主机上,有泄...

2015/12/02 17:38
1K
2
安装mamp扩展

下载 解压进入目录 执行 ./configure --with-php-config=/Applications/MAMP/bin/php/php5.6.32/bin/php-config 执行 sudo make && make install 找到php.ini文件加入末尾 extension=beast....

2018/03/15 14:11
3
0
Monster beats headphones once you placed on ind...

Stay-at-homes adore Beast Is better than earphones I should not cause along with my personal roommates when they're producing sounds, simply because right now I've sound elimina...

2012/07/31 14:11
20
0
beats by dre Canada that adore Fitzgibbons

Replicate your own amusement along with Beast Is better than I understand a lot of individuals, beats by dre Canada that adore Fitzgibbons as well as like to display regard in o...

2012/07/31 15:13
13
0
PHP7中用opcache.file_cache导出脚本opcode实现源代码保护

停止php-fpm(apache同理): sudo /png/php/7.0.0/png_fpm stop 创建opcode缓存目录: mkdir -m 777 /png/php/opcache_file_cache 在php.ini中配置: zend_extension=/png/php/7.0.0/lib/php/ext...

2015/12/07 00:55
10.8K
10
php screw加密

Download http://sourceforge.net/projects/php-screw/ Installation(参照压缩包内README.en) (1) Unpack php\_screw-1.5.tgz. (2) Customize encryption / decryption vi my\_screw.h c...

2016/02/18 16:21
61
1

没有更多内容

加载失败,请刷新页面

返回顶部
顶部