如何免费加密 PHP 文件? [关闭]
Posted
技术标签:
【中文标题】如何免费加密 PHP 文件? [关闭]【英文标题】:How to encrypt a PHP file for free? [closed] 【发布时间】:2011-10-12 04:29:31 【问题描述】:我已经为 WordPress 创建了一个插件,尽管我想对其进行加密以阻止人们查看源代码。我听说过 Zend Guard 和 IonCube,尽管有免费的替代品吗?谢谢您的帮助。 :)
【问题讨论】:
我也完全支持开源,但如果 OP 想要加密代码,那么我想我们必须尽我们所能提供帮助 =) 啊哈。有人购买了这个插件,但不想看到源代码。 自己买没问题,买来转卖,写好相应的license。 【参考方案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下载以上是关于如何免费加密 PHP 文件? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章