PHP源代码加密有时候是必须的事情,不然代码可能全部被别人盗取了,一些机密信息也被盗取了,只介绍一种PHP源代码的加密方式:Screw。

安装方式:下载链接:https://sourceforge.net/projects/php-screw/files/php-screw/打开网址


点击下载即可。

把文件放在Linux服务器上面执行命令:

tar zxvf php_screw-1.5.tar.gz
cd php_screw-1.5
vi php_screw.h
#将
#define PM9SCREW  "\tPM9SCREW\t"
#define PM9SCREW_LEN 10
#修改为任意字串,如:
#define PM9SCREW  "\tPHPENC\t"
#define PM9SCREW_LEN 6
#如果不改这个文件,加密的文件内容开头就会有 PM9SCREW,这么做是为了隐藏加密算法。

vi my_screw.h


#修改加密密钥:
short pm9screw_mycryptkey[] = {11152, 368, 192, 1281, 62};
#修改为如:
short pm9screw_mycryptkey[] = {18822, 668, 185, 1911, 82, 669};
#越长加密越可靠,建议不要大于5位数。

phpize

./configure --with-php-config=PATH(php_config路径不知道的就执行命令 find / -name php-config)

make

如果编译报错就修改php_screw.c文件:

把 CG(extended_info) = 1;修改为 CG(compiler_options) |= ZEND_COMPILE_EXTENDED_INFO;

重新make;

然后cd tools

执行make 生成screw工具

执行 cp tools/screw  /usr/bin/screw(全局使用的命令 ,不然 会提示找不到该命令)

找到php.ini文件

增加:extension=php_screw.so(注意php_screw.so的路径要放在php默认的扩展lib文件夹下面去不然找不到)

php_screw.so文件就生成在modules文件夹下面自己去找复制到php的扩展lib文件夹下面去。

执行完毕之后

php -m可以看到已经扩展的文件


进行测试下能不能加密:



一个加密的文件,一个源文件,至此成功了。



文件对比。

常用命令:

find ./ -name "*.php" -print|xargs -n1 screw //加密所有的.php文件
find ./ -name "*.screw" -print|xargs -n1 rm //删除所有的.php源文件的备份文件



Logo

更多推荐