【问题标题】:How to encrypt a PHP file for free? [closed]如何免费加密 PHP 文件? [关闭]
【发布时间】:2011-10-12 04:29:31
【问题描述】:

我已经为 WordPress 创建了一个插件,尽管我想对其进行加密以阻止人们查看源代码。我听说过 Zend Guard 和 IonCube,尽管有免费的替代品吗?谢谢您的帮助。 :)

【问题讨论】:

  • 我也完全支持开源,但如果 OP 想要加密代码,那么我想我们必须尽我们所能提供帮助 =)
  • 啊哈。有人购买了这个插件,但不想看到源代码。
  • 自己买没问题,买来转卖,写好相应的license。

标签: php encryption ioncube zend-guard


【解决方案1】:

看起来你选择的东西不是这样工作的:

  • Wordpress 是开源的
  • PHP 未编译
  • 任何混淆都可以被解码

如果您不想共享源代码,请将代码作为服务 提供。您可能会要求用户输入 API 密钥等。


  • 在您的服务器上执行代码并将响应(例如 JSON 或 XML)发送到 Wordpress 部分。
  • 只允许为服务付费的用户访问您服务器上的服务
  • 通过销售然后检查 API 密钥对用户进行身份验证

见:SaaS

【讨论】:

  • 哦,API 密钥是什么意思?如果他们需要输入密钥才能使用它,那就太好了,这就是加密代码的原因。
【解决方案2】:

试试这个: PHP Encoder

这可能就是您正在寻找的答案。

【讨论】:

  • 一种方法是创建一个可能需要密钥来完成加密或解密的函数。 PHP有它的内置函数,如gzdeflate()gzinflate(),另一个使用base64_encode()/base64_decode()str_rot13()hash()md5()函数。
  • md5 不是一个不可逆的函数吗?你怎么能用它来混淆代码? $x = 'something'; $h = md5($x); 如果你只知道$h,你将如何恢复到$x
  • @MyXEDNotes 该网站不再可用。
【解决方案3】:

您正在寻找的是 php 的混淆器。此帖子可能与以下内容重复:Is there a code obfuscator for PHP?

不过有些话。对开源世界的贡献,例如贡献一个 wordpress 插件,可能会在人们能够阅读您的代码时为您提供更多帮助。

【讨论】:

  • 没有。源加密不是混淆 - 这是更好的事情。所有函数、类和变量名称都不会改变,但源代码不可用。
【解决方案4】:

我不具体了解您的插件代码(显然您不想让我知道),但请记住,如果您在插件中重复使用部分 wordpress 代码库,则必须分发您的兼容许可下的代码。这意味着当前版本兼容 GPL v2。

但是,此 GPL 许可要求您提供源代码,这具体意味着非混淆和非加密。源代码是用来对其进行修改的软件形式。

因此,在您的情况下,加密您的插件代码并分发它可能会导致终止您对 wordpress 代码的使用权。这包括创建衍生产品(您的插件)和分发此类衍生产品(将您的插件发送给其他人)的权利。自然,那些将获得该插件的人也没有任何许可来使用您的衍生产品。

如果您问我,这并不是一个理想的情况,尤其是在权利终止生效后,您必须与 wordpress 包的每个版权所有者联系并要求恢复权利,您会这样做几乎做不到。

因此,如果您重复使用现有代码或创建符合许可要求的衍生产品,请务必小心。尤其是涉及到您的权利时。

IANAL 和我只能建议,除了混淆/加密等技术部分之外,还有可以发挥作用的软件许可部分。您只需联系律师并澄清软件许可情况,而不是您的客户有一天会要求您提供您从未想过必须处理的东西。最后你会和你的客户签订合同,所以最好小心点。

【讨论】:

    【解决方案5】:

    因为 PHP 没有被编译。 Ioncube 和 Zend Guard 是您唯一的选择。您的用户还需要为这些插件安装加载器才能使用您的代码。这在许多托管情况下可能是不可能的。

    由于这些插件旨在加密完整的应用程序,因此它们可能无法与插件一起使用。

    【讨论】:

    • 您可以使用 phpBolt PHP 扩展。您可以从phpBolt.com下载
    猜你喜欢
    • 1970-01-01
    • 2020-10-20
    • 2019-07-02
    • 2011-04-09
    • 1970-01-01
    • 1970-01-01
    • 2023-03-06
    • 2013-06-28
    • 2023-03-09
    相关资源
    最近更新 更多