代码之家  ›  专栏  ›  技术社区  ›  Rhys

如何验证PHP应用程序的用户?

  •  7
  • Rhys  · 技术社区  · 15 年前

    在将应用程序安装到客户机的服务器上时,我希望确保客户机(或其未来的开发人员等)不会复制我的应用程序并将其放置在其他域/服务器/本地服务器上。

    如何验证我的应用程序是否在安装它的服务器上运行?我不希望每次脚本运行时都有任何实质性的延迟,因此我认为“握手”方法不合适。

    我在想这个脚本每次运行时都可以在我自己的服务器上请求一个PHP页面。这可以向我的服务器发送他们的服务器信息和域名,我的脚本可以根据接受的客户端数据库进行检查。如果请求无效,我的服务器将处理通过电子邮件向我发送详细信息的工作,以便我可以跟进。这不应该减慢客户端的脚本,因为它不期望有响应,并且仍然会在他们的“无效”服务器上操作,直到我可以对此进行调查并亲自跟进。

    如果这是最好的方法(或者有更好的方法),我应该调用什么PHP来请求服务器的脚本? file_get_contents , curl 类似的东西似乎总能得到我不需要的回应。

    更新

    因此,有人可能仍然违反我的许可证,它很可能会被忽视,但如果我实现这个脚本,我有任何'懒惰的强盗'谁不打破我的应用程序和删除之前撕开它的验证器的优势。

    这是否证明使用这样的脚本是合理的?如果是这样,卷曲是我最好的选择吗?

    7 回复  |  直到 15 年前
        1
  •  2
  •   davemac    9 年前

    任何用于验证的检查代码都很容易替换为 return true; https://stackoverflow.com/tags/php/info :


    A.没有有效的技术解决方案来保护、编码或加密PHP源代码。有许多产品提供了一定程度的保护,但都可以打破与时间和努力。您最好的选择不是技术解决方案,而是许可协议形式的法律解决方案。

        2
  •  1
  •   Incognito    15 年前

        3
  •  1
  •   Alex Howansky    15 年前

    SaaS是你的朋友。在您自己的安全服务器上托管应用程序,并向您的客户收取访问许可费。

        4
  •  0
  •   Ke.    15 年前

    在我看来,它值得检查一些joomla扩展,这样做。有几个不同的实现,一些在执行前检查域并验证它,大多数都是加密的,还有一个域验证。我记得sakic的url sef扩展用来做这个。有相当多的商业扩展使用相同的东西。除此之外,我想不出别的了是的。可能吧另一个好主意是有一个好的执照和一个好的律师。。。。

        5
  •  0
  •   NullUserException Mark Roddy    15 年前

    简短的回答 :这不可能。

    冗长的回答

    你唯一的选择就是通过积极追查版权侵权者来保护你的知识产权。即使这样也不是万无一失的,正如我们来自RIAA和MPAA的人非常清楚的那样。在这个时代,我认为这不是一个可以解决的问题。

        6
  •  0
  •   Community Mohan Dere    9 年前

    你可以将“电话之家”行为整合到你的软件中,但你可能应该咨询律师来讨论有关该行为的隐私问题,并为你的客户的使用许可制定隐私准则和使用条款。

    需要注意的一点是,您发送的数据(以及发送数据的方式,即是否安全加密)用于识别非法使用您的产品的客户,因为它可能被用于危害您客户的基础设施或监视您的客户。

    关于phone home函数,需要注意的是,客户端可能只是找到并删除它,因此使用PHP模糊器或编译器可能会提供一些额外的保护来防止这种情况(尽管任何有足够决心的PHP开发人员可能会禁用这种功能)。请注意,你的保护只会起到威慑作用,目的是使规避成本 接近或超过合法使用的成本。

    编辑:
    poke 在问题注释中写道,您可以将安装在客户端站点的软件之外的部分代码移到服务器上,但如果由于某种原因(例如维护)无法访问服务器,则可能会适得其反。

    最后,我认为客户满意度应该比保护您的软件不受客户影响更重要,也就是说,尽量避免可能使您的客户生气的保护。

        7
  •  -2
  •   Darren    15 年前

    您可以对其进行编码,并硬编码一个许可证文件,使其只能在其预期的域上工作(例如,使用ioncube或zend对一个文件进行编码,该文件检查HTTP主机是否是预期的域,而不进行握手)。然后,您可以使该文件在所有其他文件中都是必需的(如果所有文件都已编码)。

    推荐文章