首页 >后端开发 >PHP问题 > 正文

核心php代码如何保护

原创2019-09-10 16:04:4202378
保护PHP就是保护知识产权之类的,包括一些重要的接口等等。

目前常用的方案:

对于PHP这类的动态语言的保护,感觉跟前面总结的js保护上差不多,无非就是:(推荐学习:PHP编程从入门到精通

加密;(强度最弱,没办法,这种动态解释语言的特性导致)动态调试或者hook来解决,当然瞪眼发也可以。

混淆;(就是一些局部的混淆,包括对于变量和代码中字符串的修改,强一点的会进行逻辑混淆);通过开源的php ast来进行反混淆处理。

虚拟机保护,老生常谈的问题,至于虚拟机的加强看跟本地层怎么很好的结合,以及Handler怎么更好的设计;比如魔方,逆向嘛,52有个大佬Ganlv研究的很透彻,可以去拜读;

还有就是引入编译,编译为字节码文件,进行解释执行,字节码跟解释之间有着对应关系,这时候就可以进行修改映射规则的修改;比如Zend Guard

目前Swoole Compiler强度是最强的,同时性能影响还不大,十分好奇,对这个扩展加密比较感兴趣,当然我不会分析,一没有样本,二没有时间。

我们知道像PHP这种动态语言一定运行在一个解释器上。

Zend bytecode解释器,这里可能做的是将Zend bytecode to LLVM ir,然后借助于llvm中很多很好的优化pass进行优化处理,同时也可以混淆处理。

Swoole Compiler是把php编译为字节码或者更低层级的文件,然后提供客户一个扩展工具进行解释;对于Swoole Compiler来说可能对Zend虚拟机中的解释部分魔改的东西比较多,再加上其他的一些安全措施,可能带来的效果会比较强大,估计现在后多已有的破解套路都会失效,同时本身Swoole 就是传说中PHP 中的 Node.js,肯定在性能做了好大的优化,所以弥补了虚拟化保护中性能损失

以上就是核心php代码如何保护的详细内容,更多请关注php中文网其它相关文章!

php中文网最新课程二维码

声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理

  • 相关标签:php
  • 相关文章

    相关视频


    网友评论

    文明上网理性发言,请遵守 新闻评论服务协议

    我要评论
  • 专题推荐

    作者信息
    推荐视频教程
  • ThinkPHP5基础视频教程ThinkPHP5基础视频教程
  • PHP技术小知识每日分享(精品)PHP技术小知识每日分享(精品)
  • PHP开发编码规范PHP开发编码规范
  • 行业大牛 ,细说PHP作者,现身PHP中文网直播送书300本,PHP中文网学员超级福利!行业大牛 ,细说PHP作者,现身PHP中文网直播送书300本,PHP中文网学员超级福利!
  • 视频教程分类