使用PHP_Screw加密PHP

PHP使用php-screw-plus扩展进行加解密 1、上传到宝塔面板的wwwroot目录里,然后解压,把php-screw-plus-master文件夹名改为php-screw-plus;说明:虽然作者已经停止更新,但还是可以用的,相比sg11而已,这个是免费的,一般小白是破解不了的,反正我不懂怎么破解。在tools目录,执行./screw [路径] ,[路径]可以是单个文件也可以是文件夹,然后就可以实现加密了。2、我安装的是PHP7.1,所以上面的指令里是71,如果你安装其他版本,就改为其他的;和加密是差不多的, 在加密指令的后面,加-d参数则是解密。 阅读详情

摘要

  • PHP文件通常以文本格式存贮在服务器端, 很容易被别人读到源代码, 为了对源代码进行保护, 可以采用对源代码进行加密的方式
  • PHP_Screw是一款免费的针对PHP源码进行加密的PHP的扩展,可以自定义加密种子文件,加密后的文件效率还不会下降,目前还没有被破解。
  • 最新版本是php_screw_1.5 http://nchc.dl.sourceforge.net/project/php-screw/php-screw/1.5/php_screw-1.5.tar.gz

安装步骤

  • 下载源码
wget http://nchc.dl.sourceforge.net/project/php-screw/php-screw/1.5/php_screw-1.5.tar.gz
  • 解压缩
tar zxvf php_screw_1.5.tar.gz
  • 通过README.en文件可以看到该版本软件包要求PHP5.x 环境,并要求zlib支持(通过执行脚本来检查)。如果你使用的是PHP4.X版本,请下载php_screw_1.3版本
  • 进入源码目录
cd php_screw_1.5
  • 修改php_screw.h文件
# 编辑
vim php_screw.h

# 默认
define PM9SCREW “tPM9SCREWt”
define PM9SCREW_LEN 10

# 修改为 'tLAURENCEt' 可以自定义
define PM9SCREW “tLAURENCEt”
define PM9SCREW_LEN 9

说明: php_screw.h文件,如果不改这个文件,你加密的文件内容开头就会有 PM9SCREW ,你复制到google搜索下就知道是用screw模块加密的,虽然目前网上没发现解密算法,但以后就不一定,这么做就是为了隐藏加密算法,可以让别人不 知道你是用的什么算法加的密。改成COOL后10也要改成6.因为LAURENCE后字符长度是9发字符,如果你不对应加密后解密解析不了。

  • 修改my_screw.h文件
#编辑
vim my_screw.h

# 默认
short pm9screw_mycryptkey[] = {
11152, 368, 192, 1281, 62
};
# 自定义修改
short pm9screw_mycryptkey[] = {
12852, 968, 192, 1281, 62, 269
};

说明: 自定义加密种子文件,这个可能是该程序的亮点,用你喜欢的文本编辑器打开源码目录下的my_screw.h,修改文件里面的数组文件,可以用数字添 加该数组的长度。数组越长,加密越可靠。而且该数组的长度不会影响加密以及你的PHP程序执行的速度.测试发现不要大于5位数,大了就会解密解析有问题。

  • 执行phpize命令
phpize
Configuring for:
PHP Api Version: 20041225
Zend Module Api No: 20060613
Zend Extension Api No: 220060519

phpize 命令执行成功后,源码文件夹下出现configure文件
如果出现如下提示:phpize command not found,解决办法是安装php-devel
说明: 如果还是提示:phpize command not found,可能是由于你的php没有安装在标准目录下,请到php安装目录的bin文件夹下寻找,确定是否有该文件。然后回到 php_scre_1.5目录下,执行

  • 配置
./configure

如果php安装在非标准目录,需要查看在phpize目录下是否有php-config文件,然后执行该目录如下

 ./configure –with-php-config=/full/path/to/php-config
  • 安装
make
make install

上面命令执行成功后会输出:Installing shared extensions: /usr/lib64/php/modules/(这个目录是/etc/***/php.ini文件中extension_dir指定的目录),php_screw.so文件就在这里,当然编译目录的modules下也有

注意: 执行make命令提示错误,请参考本文下面: make 命令后出现的问题及解决办法

  • PHP添加php_screw扩展
# 编辑php.ini文件
vi /etc/***/php.ini
# 添加
extension=php_screw.so
# 保存 退出

重启 apache,查看phpinfo()里面应该有php_screw的相关信息
在这里插入图片描述

  • 生成加密程序 ,执行如下命令
# 进入tools目录
cd tools
# 编译
make

成功后会出现一个名为screw的程序,使用如下命令,就可以在任何目录下对文件进行加密

cp screw /usr/bin

make 命令后出现的问题及解决办法

  • 问题1:/root/php_screw-1.5/php_screw.c: In function ‘pm9screw_compile_file’:
    解决办法:需要修改php_screw.c文件 (有三个地方需要调整)
org_compile_file(file_handle, type);
# 修改为
org_compile_file(file_handle, type TSRMLS_CC);
  • 问题2:‘zend_compiler_globals’ 没有名为 ‘extended_info’ 的成员make: *** [php_screw.lo] 错误 1
    解决办法: 需要修改php_screw.c文件 (有两个地方需要调整)
把CG(extended_info) = 1;
# 修改为
CG(compiler_options) |= ZEND_COMPILE_EXTENDED_INFO;

测试

  • 例如:加密phpinfo.php文件
screw phpinfo.php

我们加密后,现在目录下的phpinfo.php文件就是我们已经加密的了。而源文件被改名为phpinfo.php.screw

  • 我们访问以下phpinfo.php文件,是正常访问的,而且执行效率和未加密之前差不多
    在这里插入图片描述
  • 注意:
    php_screw_1.5有一个缺点就是screw 加密工具一次只能执行一个文件,如果你切换到你的php源码目录执行
    #screw *
    不会有任何文件被加密,如果要加密上百个文件,那正是灾难
  • 解决办法:
# 加密所有的.php文件
find /data/php/source -name “*.php” -print|xargs -n1 screw 
# 删除所有的.php源文件的备份文件
find /data/php/source -name “*.screw” -print|xargs -n1 rm 
宝塔面板实战:PHP7.1环境下php-screw-plus扩展加密全流程(附常见错误解决) 本文详细介绍了在宝塔面板的PHP7.1环境下,部署和使用开源加密扩展php-screw-plus的全流程。内容涵盖从源码获取、编译配置、解决宝塔禁用函数导致的典型错误,到扩展加载验证、实战加密解密操作以及安全强化策略,为开发者提供了一套免费、可靠的PHP源码保护方案。 阅读详情

相关推荐

php_screw:PHP的螺丝镜http

php_screw ##简介 转自 本人只是简单添加了一个screw的解密工具,在tools目录下,screwd. ##使用 编译php扩展就不说了,比较简单(本人自己测试在php5.6下可以编译通过,修正了原先旧版本编译不通过的问题). 在tools目录,make一下,就生成了两个可执行文件screw,screwd.这两个一个是用来加密文件,一个是用来解密文件. 加密后的文件名是原先的,原先未加密的文件变成了加.screw后缀的文件. 解密后的文件名在原先文件后加.src后缀 有任何疑问可以联系我

使用php_screw实现PHP代码加密

打开php-screw-plus-master目录下的 php_screw_plus.h文件修改KEY,建议最好16位以上。在php.ini里加入php_screw拓展。

huaweichenai的博客 1307

php_screw安装使用教程(另一个PHP代码加密实现)

开始之前,首先要澄清两个问题:第一,支持开源,不等于反对代码加密;第二,如果把不属于自己的东西(比如公司的)拿去开源,就更加不应该了。 以前知道的,PHP代码的加密都是用Zend的encoder,这东西不但是商业软件,好像还暴出过能够被破解的问题,所以就找到了替代的方案────php_screw,一个日本人开发的东东。 php_screw非常小巧,没有仔细看过它的算法,但从说明文档中看,可以自行更改SEED,然后自行编译so和可执行档。如果够牛的话,甚至可以自己去更改算法。不管怎样,对于我们这些“普通人”来说,这种加密应该就够了吧,如果真想滴水不漏,那还是不要公开的好,虽然作者说的并不是很容易

php screw 密钥,php-screw php代码加密工具用法(整理)

1、进入http://sourceforge.net/projects/php-screw/下载最新版本php_screw-1.5.tar.gz 解压安装: #tar zxf php_screw-1.5.tar.gz #cd php_screw-1.5 #vi php_screw.h 将 #define PM9SCREW “\tPM9SCREW\t” #define PM9SCREW_LEN 10...

weixin_32336149的博客 326

解析如何用php screw加密php源代码

在使用PHP过程中发现,自己编写的php代码因为都是源代码方式放在服务器上的所以很容易就被别人拿走随便修改(变成自己开发的)使用了。为了保住自己的劳动成果,我一直寻找一种可以加密php代码的软件。最著名的就是Zend公司的Zendencoder了,但是不是开源软件(要价很高,也没有找到破解版)。既然收费的用不起,我们就用开源的。我找到了php_screw这个开源软件,目前最新版本是1.5安装环境系统:centos 5.3软件:Apache 2.2.9PHP 5.2.10以上环境全部是自己下载配置安装的。具体的Apache+php+mysql安装方法请从网上搜索。安装1.用tar解压缩 tar

支付宝支付(三):周期扣款实现注意细节

一、周期扣款实现说明 1、官方文档入口:https://opendocs.alipay.com/open/20190319114403226822/intro 2、根据官方文档说明,周期扣款有两种方式:先签约后代扣场景和支付后签约场景 3、周期扣款接入问题文档: a>https://opendocs.alipay.com/support/01rg24 b>https://opensupport.alipay.com/support/knowledge/50249/20160248753

新鲜雾霾的博客 5702

使用php-screw对php站点进行加密

在给客户部署php站点的时候往往存在这样的问题,即不想让别人看到自己站点的php核心代码 在此给出一种实现方案,利用php-screw对php站点进行加密 首先到http://sourceforge.net/projects/php-screw/files/php-screw/下载安装包 解压 tar -zxvf php_screw-1.5.tar.gz 进入文件夹进行自定义加密文件

Andos's House 1707

百度API实现人流量数量检测(动态)

百度的这个API还挺好用的,对与不追求高精度的人来说非常适用,结合他官方给的文档,极易上手。 需要做的就是通过API Key和Secret Key获取的access_token。 然后稍微修改下代码就行,但是他给的代码并没有直接从摄像头获取视频,而是读取一个文件夹,那么就需要自己先对摄像头的输出视频进行处理。 识别结果如下,"person_num"是当前画面的人数,in是累计进入的人数,out是累计走出去的人数。 他这个有个缺点就是返回值里边并没有实时返回in和out的值,而是都是0,但是这个图片上有,图片

qq_42479987的博客 3380

php screw 密钥,PHP使用Screw把源代码加密

PHP源代码加密有时候是必须的事情,不然代码可能全部被别人盗取了,一些机密信息也被盗取了,只介绍一种PHP源代码的加密方式:Screw。 点击下载即可。把文件放在Linux服务器上面执行命令:tar zxvf php_screw-1.5.tar.gzcd php_screw-1.5vi php_screw.h#将#define PM9SCREW "\tPM9SCREW\t"#define PM9...

weixin_42470300的博客 206

CANoe实战:手把手教你用J1939.dbc发送超8字节长帧报文(附完整CAPL代码)

本文详细解析了使用CANoe和J1939.dbc实现超8字节长帧报文的分包发送技术,提供完整的CAPL代码实现与优化策略。内容涵盖J1939.dbc配置、分包发送模块设计、接收端处理逻辑,并与ISO 15765-2协议进行深度对比,帮助开发者构建高效可靠的商用车通信解决方案。

weixin_29169899的博客 393

Robosuite实战:通过Xbox手柄实现机械臂6-DoF精准控制的完整指南

本文详细介绍了如何通过Xbox手柄实现机械臂的6-DoF精准控制,结合Robosuite仿真环境与MuJoCo物理引擎,提供从环境配置到代码实现的完整指南。文章重点解析了手柄映射原理、核心控制代码以及数据采集优化技巧,帮助开发者高效完成机械臂控制任务。

weixin_29169505的博客 419

pm9screw php,PHP使用Screw把源代码加密

PHP源代码加密有时候是必须的事情,不然代码可能全部被别人盗取了,一些机密信息也被盗取了,只介绍一种PHP源代码的加密方式:Screw。安装方式:下载链接:https://sourceforge.net/projects/php-screw/files/php-screw/打开网址点击下载即可。把文件放在Linux服务器上面执行命令:tar zxvf php_screw-1.5.tar.gz cd...

weixin_39870132的博客 332

手把手教你为RK3588开发板适配RTL8211F网卡:设备树配置与PHY驱动匹配全流程

本文详细介绍了在RK3588开发板上适配RTL8211F千兆以太网PHY芯片的全流程,包括硬件原理图确认、设备树配置与PHY驱动匹配。通过实战案例和调试技巧,帮助开发者解决常见问题并优化网络性能,适用于嵌入式Linux开发中的Ethernet网络功能实现。

weixin_29184075的博客 526

php-screw 安装,php源码加密:php_screw 安装与使用

php为了保证源码安全,可以采用对源代码进行加密的方式来进行保护,分两部分去进行使用:第一部分:安装:1、进入http://sourceforge.net/projects/php-screw/下载最新版本php_screw-1.5.tar.gz2,解压安装:tar zxvf php_screw-1.5.tar.gzcd php_screw-1.5vi php_screw.h#每个加密的文件头部都...

weixin_42395171的博客 880

从硬件拆解到图像生成:一次搞懂MRI设备(主磁体、梯度线圈、射频系统)是如何协同工作的

本文深入解析MRI设备的三大核心系统——主磁体、梯度线圈和射频系统如何协同工作,实现从量子现象到诊断图像的转化。通过详细的技术参数和临床案例,揭示磁共振成像(MRI)在医疗图像处理中的精密工程原理和最新技术突破,帮助读者全面理解这一现代医学影像技术的运作机制。

weixin_33734785的博客 549

SAP-ABAP:SAP创建CDS视图(SQL语句创建)实例详解

通过Eclipse和ADT创建CDS视图是SAP开发中的一项重要技能。CDS视图不仅简化了数据建模,还提供了高性能和灵活性。掌握CDS视图的开发和使用,可以帮助你更好地支持SAP S/4HANA和Fiori应用的开发。

baidu_35680696的博客 1824

Php.so加密,使用php_screw为php程序文件加密

解压,更改my_screw.h,里面的几个数字就是SEED,相当于密码,可以随意更改、增加2、编译so文件:$ phpize$ ./configure --with-php-config=/usr/local/php/bin/php-config$ make$make install$ls /usr/local/php/lib/php/extensions/no-debug-non-zts-2...

weixin_35044945的博客 247

Java全栈开发:充电桩管理系统项目实战

技术收获深入理解分布式系统架构掌握高并发场景解决方案提升系统设计能力经验教训前期需求分析的重要性技术选型需要考虑长期维护测试覆盖率的重要性未来展望引入AI预测故障支持更多支付方式优化用户体验通过此项目的开发,不仅实现了充电桩的智能化管理,也积累了宝贵的全栈开发经验。项目中的很多技术方案和架构设计都具有普遍适用性,可以在其他类似项目中借鉴使用。@Componentstatic {// 初始化状态转换规则。

exlink2012的专栏 1252

PHP使用Screw把源代码加密

PHP源代码加密有时候是必须的事情,不然代码可能全部被别人盗取了,一些机密信息也被盗取了,只介绍一种PHP源代码的加密方式:Screw。 安装方式:下载链接:https://sourceforge.net/projects/php-screw/files/php-screw/打开网址 点击下载即可。 把文件放在Linux服务器上面执行命令: tar zxvf php_screw-1

咖啡如同生活的专栏 3634

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

如何使用php-screw-plus来对php文件进行加密

原文:https://www.cnblogs.com/feixiablog/p/9870193.html 1.克隆一份代码 git clone https://git.oschina.net/splot/php-screw-plus.git 2.执行php的phpize文件 /usr/local/php/bin/phpize (1)phpize是干嘛的? phpize是什么东西呢?php官方的说明: http://php.net/manual/en/install.pecl.phpize.php phpiz

liuyuedechuchu的博客 522

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

使用php_screw为php程序文件加密

先下载php_screw  http://sourceforge.net/projects/php-screw/files/  解压,更改my_screw.h,里面的几个数字就是SEED,相当于密码,可以随意更改、增加   2、编译so文件: $ phpize $ ./configure --with-php-config=/usr/local/php/bin/php-confi

张海宁的专栏 869

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

使用php_screw加密php源代码

在使用PHP过程中发现,自己编写的php代码因为都是源代码方式放在服务器上的所以很容易就被别人拿走随便修改(变成自己开发的)使用了。 为了保住自己的劳动成果,我一直寻找一种可以加密php代码的软件。 最著名的就是Zend公司的Zendencoder了,但是不是开源软件(要价很高,也没有找到破解版)。 既然收费的用不起,我们就用开源的。我找到了php_screw这个开源软件,目前最新版本是1.

盐碘 703

【转】php_screw 1.5:php加密: 安装与使用

php文件通常以文本格式存贮在服务器端, 很容易被别人读到源代码, 为了对源代码进行保护, 可以采用对源代码进行加密的方式.要实现该功能需要两部分:     一是加密程序,实现对PHP文件的加密. 另一个就是对加密过的PHP文件进行解析, 以得到运行结果. 前者的实现比较简单, 就是一程序而已. 后者的实现大部分都是通过php module的形式来实现的.     php_screw(螺丝钉)可以实现以上的功能.最新版本是1.5,可以在sourceforge上下载.     安装:     安装的

架构精进之路 328

php_screw 1.5:php加密: 安装与使用

php文件通常以文本格式存贮在服务器端, 很容易被别人读到源代码, 为了对源代码进行保护, 可以采用对源代码进行加密的方式.要实现该功能需要两部分: 一是加密程序,实现对PHP文件的加密. 另一个就是对加密过的PHP文件进行解析, 以得到运行结果. 前者的实现比较简单, 就是一程序而已. 后者的实现大部分都是通过php module的形式来实现的. php_screw(螺丝钉)可以实现

依天道,行自然 3481
上一篇: Ubuntu16.04 安装 PHP7.2
下一篇: JavaScript 鼠标事件
dadeity
博客等级 码龄10年 1172粉丝 225原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dadeity

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值