天天看点

Windows下使用php-beast加密php源代码Windows下使用php-beast加密php源代码

Windows下使用php-beast加密php源代码

目前官方教程linux上的使用已经写的比较详细,但对于Windows环境下的使用还是比较笼统,故做此记录。

php-beast官方github地址:https://github.com/liexusong/php-beast

使用方法

  1. 下载GitHub已经释放出的版本软件,假设解压放在D:\php-beast文件内。
  2. 官方已经提供了关于 Windows DLL 的下载地址,根据你的php环境下载对应的版本,这是已经编译好的释出版本:点击查看
  3. 将下载下来的 .dll 文件如 php_beast_x86_nts.dll 放入php扩展模块的文件内,一般默认位于 ext 文件内,并修改 php.ini 文件,加入配置项:
extension=php_beast_x86_nts.dll
           

4.安装完 php-beast 后,配置 tools 目录下的 configure.ini 文件,如下:

; source path
src_path = “D:\php\src_path”  //要加密项目的路径

; destination path
dst_path = “D:\php\dst_path”  //保存加密后项目的路径

; expire time
expire = “2020-03-29 14:59:00”   //设置项目可使用的时间,格式是:YYYY-mm-dd HH:ii:ss

; encrypt type (selection: DES, AES, BASE64)
encrypt_type = “DES”  //加密的方式,支持的加密算法DES, AES, BASE64
           

配置完成后,使用 encode_files.php来进行文件加密,其只会加密php文件,直接打开终端输入,先切

换到 encode_files.php 文件目录内,假设位于 D:\php-beast\tools

>D:
>cd D:\php-beast\tools
           

然后执行加密算法文件:

>php encode_files.php
           

出现以下语句,说明加密成功

Source code path: D:\php\src_path
Destination code path: D:\php\dst_path
Expire time: 2099-10-18 22:00:00
------------- start process -------------
Processed encrypt files [100%] - 100%
Finish processed encrypt files, used 105.650371 seconds
           

使用绝对路径写法(我用这个成功了)

>D:\php\php7.3.4nts/php.exe D:\php-beast\tools/encode_files.php
           

成功后,你可以在项目的输出路径文件夹内打开已加密php文件,如下图所以:

Windows下使用php-beast加密php源代码Windows下使用php-beast加密php源代码

此时表示加密源码成功,可尝试正常运行程序。

当然你可能只想加密部分文件,那就只指定到该文件加密即可。或者不做文件配置,那也可以使用beast_encode_file()函数,输入项目的路径和输出的项目路径,其参数与配置基本一致。具体使用请参考官方说明。

这里说一下,目前php-beast属于开源,支持的加密算法属于默认形式,为了更安全的调用,你应当修 header.c文件的头结构,更多的 制定自己的php-beast 内容请参考官方说明。

头文件结构修改如下所示:

char encrypt_file_header_sign[] = {
	0xe8, 0x16, 0xa4, 0x0c,
	0xf2, 0xb2, 0x60, 0xee,
	0xb4, 0xcc, 0x72, 0x8e,//扩展的非官方的加密的文件头结构,也可以直接修改官方加密头结构
};
————————————————
           

原文链接:https://blog.csdn.net/weixin_43930641/article/details/105176683