t2doo
V2EX  ›  问与答

PHP 加密要怎么搞?

  •  
  •   t2doo · Mar 7, 2017 · 6428 views
    This topic created in 3537 days ago, the information mentioned may be changed or developed.
    手头有个项目,对方出服务器,我的代码这下就彻底暴露了,想问下 PHP 加密什么方案好,让他们看到代码还得解密,麻烦老司机来指导一下,万分感谢!
    33 replies  •  2021-12-09 11:53:07 +08:00
    isCyan
    isCyan
    Mar 7, 2017 via Android
    1
    不会百度不会谷歌吗,现在 V 站帖子质量低到不行。
    popu111
    popu111
    Mar 7, 2017
    2
    @isCyan 严重同意系列

    以及回复楼主:没救, PHP 常见加密在淘宝十块以内都能解决,而且你还完全在人家手上跑。。。
    helloccav
    helloccav
    Mar 7, 2017 via Android
    3
    最简单的方法把函数名和变量,改成,没有意义的字符,增加别人修改的难度
    helloccav
    helloccav
    Mar 7, 2017 via Android
    4
    @isCyan
    @popu111
    我觉得这个不能怪楼主,你们说搜索一下,但是现在现在网络上能搜索到的答案,加密都是不完美的,就像你们自己回答那样,很容易破解。所以来这里就是想问一下,有没有更加安全的加密方式。
    R18
    R18
    Mar 7, 2017 via Android
    5
    一个项目只用一个 php 文件,搜索 a 可以出来几万匹配项
    explon
    explon
    Mar 7, 2017
    6
    楼主估计以为大家写完代码都是要加密给别人用的
    saharabear
    saharabear
    Mar 7, 2017
    7
    不熟悉私有 PHP 领域,见过两处方案:

    A :额外依赖,要想跑起 PHP ,需要加载一个.so 文件,这个文件是私有的,使用 C 语言编写,不知道具体是什么东西。没有这个东西,整个项目跑不起来,一部分业务与安全验证应该都在这个.so 里面。
    B :转译,最终形成了几个很难读懂的 PHP 文件,源代码依然是 PHP ,但是用了一个 shell 进行了这种转译,把 N 个 PHP 文件,压缩进几个无法读懂的 PHP 文件内,变量名全部转译成复杂的指令。

    以上两个项目都是别人的私有项目,我只是看到别人这么用过,具体原理及方案可行性,我没有太关注。
    HanSonJ
    HanSonJ
    Mar 7, 2017
    8
    也许你要换个语言。
    t2doo
    t2doo
    OP
    Mar 7, 2017 via iPhone
    9
    第一次考虑到加密,其实代码没啥东西,我就是有个数据库连接不想给人看到 Host 地址,回家仔细研究一下,感谢回复🙏
    torbrowserbridge
    torbrowserbridge
    Mar 7, 2017
    10
    试试 Zend Guard
    xiaoyaoking
    xiaoyaoking
    Mar 7, 2017
    11
    自己写扩展,核心代码用 c++ ,我个人是偷懒, 直接把 PHP 代码加密 然后 挂到扩展,最后拦截 PHP 文件名 解密 执行。。。
    torbrowserbridge
    torbrowserbridge
    Mar 7, 2017 via iPhone
    12
    giuem
    giuem
    Mar 7, 2017 via iPhone
    13
    docker
    rogerchen
    rogerchen
    Mar 7, 2017
    14
    @torbrowserbridge 开眼界了。
    @t2doo 字符串是不能加密的。。。这是常识,可以考虑用混淆的方案,让人看到一堆乱码就没心情了。
    em70
    em70
    Mar 7, 2017 via Android
    15
    不要对方服务器,把你的服务做成接口,按次收费或者包月。如果客户不买账,说明你的代码没那么高的价值,也不用纠结加密了
    torbrowserbridge
    torbrowserbridge
    Mar 7, 2017 via iPhone
    16
    @giuem docker 怎么搞?不给别人 image 么?给了还是能访问啊
    Felldeadbird
    Felldeadbird
    Mar 7, 2017 via iPhone
    17
    直接买现成的加密库
    fyibmsd
    fyibmsd
    Mar 7, 2017
    18
    zephir ,把核心部分加密就行
    47jm9ozp
    47jm9ozp
    Mar 7, 2017
    19
    封装成虚拟机镜像,磁盘加密,只暴露 80 端口
    shiji
    shiji
    Mar 7, 2017
    20
    那核心用 Java 或者 C++之类的写,最外面套一层 php 。 php 收到请求过滤参数,然后传递参数通过 shell_exe 给你编译好的的 java 或者 C++程序
    giuem
    giuem
    Mar 7, 2017
    21
    @torbrowserbridge 好吧,我忘了还能进容器看代码
    torbrowserbridge
    torbrowserbridge
    Mar 7, 2017 via iPhone
    22
    @ooxxcc 真心不错的方案
    eecjimmy
    eecjimmy
    Mar 7, 2017 via iPhone
    23
    加个扩展
    Citrus
    Citrus
    Mar 7, 2017 via iPhone
    24
    @xiaoyaoking 你这样只要改一点点在解密之后把解密内容输出,就全破解了。。。建议不要这么偷懒。。。
    cxbig
    cxbig
    Mar 8, 2017
    25
    不大现实, PHP 本就是挣快钱的,靠量取胜,想指着一个解决方案吃到底可能性不大
    如果对方不是那么的专业,做成 so 或者 phar 文件好了
    esile
    esile
    Mar 8, 2017 via iPhone
    26
    混淆一下别人基本就懒得改了
    t2doo
    t2doo
    OP
    Mar 8, 2017❤️1
    27
    https://github.com/del-xiong/screw-plus

    目前用的这个,主要是不想给人看到数据库地址
    kokutou
    kokutou
    Mar 8, 2017 via Android
    28
    混淆。。
    yanw
    yanw
    Mar 8, 2017 via iPhone
    29
    代码有多烂写多烂,烂到自己都不想维护
    thundernet8
    thundernet8
    Mar 8, 2017
    30
    自从我上一个 wordpress 主题被破解搞得没收入,破解人还嚣张的在破解版本植入辱骂我的文字,我现在新主题改成动态 so 扩展加密了, https://webapproach.net/tint-authorization.html
    Geniusssssss
    Geniusssssss
    Mar 8, 2017
    31
    还是建议开源精神 简单加密上面的诸位都阐述过了 复杂加密就动态获取 key 吧 将 php 代码写入.pak 然后加密 然后取 md5 传输服务器 服务器返回 key 使用 key 解密执行新加密写入然后再执行 php 内容
    当然 这只是增加解密难度 并不会导致不被破解 其实并不存在什么不能被破解的东西 只是看破解人的耐心与技术 记得那个正真用到的 pak 文件也要使用混合加密让它的变量参数什么的看着都是 OO000Oo 这样的
    ningcool
    ningcool
    Mar 8, 2017
    32
    建议隐私逻辑写到自己的服务器,客户端的向你的服务器接口获取 你的“核心逻辑运算的结果”。
    skyworker
    skyworker
    Dec 9, 2021
    33
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4413 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 82ms · UTC 08:19 · PVG 16:19 · LAX 00:19 · JFK 03:19
    ♥ Do have faith in what you're doing.