如何免费加密PHP文件?

10

我已经为WordPress创建了一个插件,但我想加密它以防止人们查看源代码。我听说过Zend Guard和IonCube,但是否有这些的免费替代品?

我已经为WordPress创建了一个插件,但我想加密它以防止人们查看源代码。我听说过Zend Guard和IonCube,但是否有这些的免费替代品?
5个回答

8

看起来你选择的东西不能正常工作:

  • WordPress是开源的
  • PHP没有被编译
  • 任何混淆都可以被解码

如果你不想分享源代码,可以把代码提供为服务。你可以要求用户输入API密钥等。


  • 在你的服务器上执行代码,并将响应(例如JSON或XML)发送到WordPress部分。
  • 只允许付费用户访问你服务器上的服务
  • 通过销售并检查API密钥来验证用户

参见:SaaS


哦,你说的 API 密钥是什么意思?如果使用它需要输入密钥,那就太好了,这也是加密代码的原因。 - Joey Morani

4
试试这个: PHP编码器 这可能是你要找的答案。

一种方法是创建一个函数,可能需要一个密钥来完成加密或解密。PHP有其内置的函数,如gzdeflate()gzinflate(),另一种方法是使用base64_encode()/base64_decode()str_rot13()hash()md5()函数。 - MyXEDNotes
2
“md5”不是一个可逆函数吗?你怎么能用它来混淆代码呢?如果你有 $h = md5($x);,但只知道 $h,你如何还原出 $x - Marco Demaio
3
@MyXEDNotes 网站已经无法访问。 - SaidbakR

2
你需要的是一个PHP混淆器。这篇文章可能与以下内容重复:是否有适用于PHP的代码混淆器? 然而,一些话。向开源世界做出贡献,例如贡献WordPress插件,可能会更有帮助,因为人们可以阅读您的代码。

不,源代码加密并不是混淆 - 它是更好的选择。所有函数、类和变量名字不会改变,但源代码是无法查看的。 - kz_sergey

2
我不知道你的插件代码具体是什么(而且显然你也不想让我知道),但请记住,如果在你的插件中重复使用了WordPress代码库的某些部分,则必须在相容许可证下分发你的代码。这意味着当前版本需要相容于GPLv2。
然而,这个GPL许可证要求你提供源代码,这明确意味着非模糊化和非加密的源代码是软件的形式,您用它来进行修改。
所以在您的情况下,加密您的插件代码并分发它可能会导致终止您对WordPress代码的使用权。这包括创建衍生品(您的插件)和分发这些衍生品(将您的插件发送给其他人)的权利。自然地,得到该插件的人也没有任何许可证来使用您的衍生产品。
如果你问我的话,这并不是一个理想的情况,特别是一旦权利被终止,你必须与每个版权持有者联系并要求重新恢复权利,这是你几乎无法做到的事情。
因此,请注意,如果您重新使用现有代码或创建衍生品,您必须符合许可要求,尤其是当涉及到您的权利时。
我不是律师,我只能建议你除了技术部分(如模糊化/加密)外,软件许可证也可能起到一定作用。你应该联系律师,澄清软件许可证的情况,不然你的客户有一天会向你要求东西,而你根本没有考虑过你必须处理的问题。最终你将与你的客户签订合同,所以最好小心谨慎。

1

由于PHP不是编译型语言,因此Ioncube和Zend Guard是您唯一的选择。您的用户还需要安装这些插件的加载器才能使用您的代码。在许多主机环境中可能无法实现。

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


您可以使用phpBolt PHP扩展。您可以从https://phpBolt.com下载。 - Arshid KV

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接