micro SAPI请问这个是干嘛用的?能用来加密源码吗?

happy321

问题描述

好像是可以把php打包成二进制,是不是就可以加密源码用了?

请大佬帮忙解答下 谢谢

为此你搜索到了哪些方案及不适用的原因

这里写搜到的方案及不适用原因

https://docs.toast.run/micro/chs/what-is-micro.html

677 2 0
2个回答

喵了个咪

php 有很多 sapi,比如熟悉的 php-fpm php-cli,micro 也是其中一个,都是运行php程序的。micro 允许将代码拼接到micro 自身的程序里然后运行,仅仅是拼接,并不是加密。

webman前一阵也出了二进制打包,可以运行在任何没有php环境的linux服务器上。看源码原理也是micro与phar拼接,并不是加密。

php webman二进制打包

  • 暂无评论
kspade

不管是 H框架的box 或者 swoole 又或者 webman的 二进制打包都是 sapi ,生成的也并不是真正的二进制文件(真假二进制你上UPX压缩壳就知道了)(其实就是把代码(或者phar)拼接到micro后面)可以理解为:是PHP出的一种代码运行模式(sapi)
并没有任何加密效果,甚至可以很简单的用各种ide软件直接分离出源代码(或phar)
PHP目前的加密方式还是只有加密源代码,比如著名的:sg11 swoole-load 等

关于加密其实我最近都在一直琢磨
我计划是修改 php webman build:bin 的打包流程
目前的webman二进制打包流程是:1.打包pohar 2.cat拼接到micro
准备重新编译一个micro,让其支持sg11扩展(但是我更想参照git上的PHP加密扩展项目 - 自己编写一个PHP代码加密扩展),然后重新编译一个micro,
从而在打包webman build:bin 时:
1.将对应指定的PHP源代码加密(插件控制加密那些目录文件 或 指定文件)
2.打包为phar
3.cat拼接到micro 得到二进制文件

简单说就是在打包phar前先自动将源代码进行加密,这样即使被分离 解包phar 后 代码依旧是加密的,

  • walkor 2023-03-10

    这个是很多人期待的功能,强烈支持

年代过于久远,无法发表回答
🔝