2012-09-07 56 views
1

我有一个PHP的CMS,我想添加一个许可证。
我想在我自己的服务器上执行这个cms而不是在其他服务器上。
用户可以修改或复制所有源代码...
源监护人和ioncube对此不够安全。
我是新的C++写一个扩展名的PHP来创建一个可以在所有的CMS中使用的函数。
另一种方式是,我可以在另一台安全服务器上使用某些功能,并且所有的cms程序都必须连接到我的安全服务器并获得访问功能..但问题是,如果我的安全服务器遇到麻烦,所有其他cms将无法工作..
那么为每个cms添加许可证密钥的最佳方式是什么?什么是添加许可证到您的PHP程序的最佳方式?

+0

如果您的用户可以复制和更改所有代码,那么您打算如何保持许可证检查?我认为这将永远不会工作 – Nanne

+0

隐藏php的功能就是这样。但我怎样才能使用他们的身体不在源代码中的PHP函数。也许里面的DLL或扩展或??? –

+0

但是,如果只有许可证代码位于隐藏文件中,则它们可以删除对这些功能的调用并完成它。如果您在这些文件中添加了功能,那么在不使用这些文件时系统会有不完整的系统,那么用户无法修改所有相关的代码。如果它没有真正相关,他们会删除它们,所以它很可能是相当核心的功能。无论哪种方式,它不会像你所描述的。 – Nanne

回答

1
  1. 永远不要依赖连接到外部服务器!这将是一个很大的错误。
  2. iOnCube或Zend Guard有什么问题?我看不出有什么问题 - 不仅会混淆代码,代码也会被加密,应用程序运行得更好。

我会走这条路:

  1. 创建我的意志(一些领域和时间检查,解密等)的许可证要求的逻辑。
  2. Ioncube公司保护代码(如Zend的卫队为x倍更贵)
  3. 创建任何网站,我会用我的CMS(许可证将包含所需的域,许可证生命周期,其他一些信息)一个加密后的许可证。
  4. 这个网站可以在任何地方(iOnCube存在的地方)托管 - 当将CMS从托管移动到托管但在同一个域下时,没有任何反应,一切正常,与可能关闭的外部服务器没有关系。但是,将CMS移到其他域下后,CMS将停止工作,或者在许可证期满后,CMS将停止工作。

我没有看到这种方法有什么问题,你呢?

+0

ioncube甚至可以解码6.5版本。查看此http://dezend.me/或在谷歌搜索 –

1

许可证密钥在PHP等语言中成为大问题。几乎所有需要php应用程序的许可证都太复杂,其他许多都不安全。他们都必须隐藏/编码不是一小部分代码。虽然核心文件需要解码,但它增加了执行时间,并出现许多其他问题。

我曾与许多CMS需要许可证,我还没有找到保持代码“安全”的最佳途径。

在我看来,最好的做法是保持您的CMS开源,并且只需要钱来植入您的代码。但不幸的是,对于那些必须受到保护的小项目来说这不是一个好习惯。

对于小型项目,您可以提供将项目保留在托管服务器上,并仅在您的服务器上托管代码。

所有这些主要取决于项目的特殊性。

相关问题