magento 扩展的许可证密钥 [重复]

Posted

技术标签:

【中文标题】magento 扩展的许可证密钥 [重复]【英文标题】:License key for magento extension [duplicate] 【发布时间】:2012-11-18 01:38:29 【问题描述】:

可能重复:license and protect php script

我有一个自定义 Magento 扩展,我想为它创建一个许可证密钥(如 Windows 密钥)。

我将使用远程服务器上的include 方法来检查许可证密钥(我不确定这是不是最好的选择)。

当我必须使用include方法检查许可证密钥时,我想如果我每次使用扩展时都这样做,网站加载会很慢。

你能给我一些想法,我该怎么做,或者可以给我其他决定的建议吗?

【问题讨论】:

您用来验证密钥的任何方法都可能很容易被绕过,只需编辑源代码(php 未加密/混淆)并让您的验证函数返回 true(或任何预期的返回值)值)。 此外,任何混淆都可以通过重命名变量轻松绕过。任何家庭 brew 加密然后 eval 方案都可以轻松绕过,因为您必须有一些未加密的代码才能解密/eval,并且您可以在 eval 之前回显源代码(更不用说 eval==evil 并且 eval 在多个主机上被禁用以确保安全) .有一些 php 源加密 shemes,但它们都需要某种 php 扩展,并且服务器必须安装它才能工作。最常见的是 zend 守卫,它在服务器上的可用性最高,但没有接近 100%,也不是 100% 万无一失。 ***.com/questions/1157425/… 如果您的删除服务器出现故障、无法访问或运行缓慢怎么办?您能保证为您的客户提供 SLA 吗?这是为什么这是一个非常糟糕的主意的众多原因之一。 【参考方案1】:

对此没有很好的解决方案。 Windows 许可证密钥有效,因为 Windows 是二进制可执行文件。查看 Window 的机器代码并提取许可证密钥的规则并非易事。

正如您所提到的,由于网络延迟问题,电话回家解决方案无法正常工作。除此之外,从分机中剥离回拨电话检查非常容易。

您可以查看 Ion Cube 或 Zend Guard Loader 等应用程序,它们允许您使用类似二进制的机器代码保护某些 PHP 文件。这些方法的问题是您需要您的客户安装一个额外的 PHP 扩展来使用您的代码。除了帮助客户安装这些扩展的麻烦之外,这些扩展还带来了性能开销。

你最好的方法?如果您要出售扩展程序,请设定一个公平但较高的价格。相信你的客户,也许在一些安装程序中添加一个微不足道的许可证密钥,并将正在进行的扩展升级与许可证注册联系起来。此外,如果它与您正在解决的问题相关,则放弃添加人们需要付费的云组件的扩展是另一种选择。

如果您真的想销售与许可证密钥 ala-windows、Indie Mac 开发等紧密相关的软件,那么 PHP 不是合适的目标平台。

【讨论】:

使用 ionCube 或 Zend Guard 是我在使用许可的 magento 模块时遇到的最常见的方法。由于代码是预编译的,因此无法查看它是否每次都兑现任何结果或发出请求。

以上是关于magento 扩展的许可证密钥 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

设置播放器时出错:许可证密钥周期无效

如何在 CSharp 中制作自己的许可证密钥

Magento文件系统目录结构

text Magento 2文件许可

跪求UltraEdit许可证密钥

在单独的表格上验证许可证密钥?