您如何保护您的商业应用程序不被仅拥有一个许可证的人安装在多台计算机上?
你认为不仅仅是基于串行的方案是个好主意吗?
我的一般规则是
你认为不仅仅是基于串行的方案是个好主意吗?
作为一个必须在各种机器上安装各种软件的人,在考虑您的复制保护方案时,请为可怜的网络管理员考虑一下。请,请,在编写您的安装程序时考虑网络范围的安装 - 一定要包括某种序列号保护,甚至让我打电话或联系您的网站并获取授权代码以获取站点范围的安装程序代码或其他,但请确保您的许可代码有效。确保您的技术优于市场上任何其他软件的一个好方法不会被安装和使用是弄乱安装程序或拥有一个太麻烦的安装系统。
只要您有一个公共服务器可供您使用,以下方法就可以很好地工作:
这使您可以防止有人简单地将注册表从一台计算机复制到另一台计算机。
如果用户尝试在另一台计算机上安装相同的序列号,服务器将不允许您将序列号绑定到 MAC 地址,因为它已经绑定。
这不是一个完美的解决方案,但它可以在 99% 的时间内保护您。
使用机器锁定许可证或需要激活的许可证将许可证锁定到特定机器。与其自己开发这样的方案,不如考虑使用支持这些功能的即用型方案,例如CryptoLicensing 。
免责声明:我为 CryptoLicensing 的开发商 LogicNP Software 工作。
我们使用 MAC 地址加许可证文件的方法。我们让客户将其 PC 的 MAC 地址发送给我们,然后根据该 MAC 地址生成许可证文件。然后我们通过电子邮件将文件发送给他们,然后他们将许可证文件加载到程序中。不利的一面是,如果人们换掉网卡,您将不得不向他们颁发新的许可证。需要更多的簿记以确保人们并不总是要求新的许可证,并且对您的客户群有一点信任,他们不会试图过多地玩弄系统。根据该信任级别,您可以在文件中添加编码或加密层,这样他们就不能轻易复制文件。从好的方面来说,您不必实现或维护任何类型的身份验证服务器。
如果软件值得,您可以随时使用 USB 加密狗。当然,所有加密狗制造商都声称他们的复制保护不能被破坏。
这种方法的优点是它允许用户在多台计算机上使用该软件,但一次只能在一台计算机上运行,实际上并不像某种产品激活那样麻烦。当然,缺点是您不能完全以电子方式部署应用程序。尽管您可能会认为相反,但实际上许多客户似乎接受使用加密狗,至少在我工作的领域中。如果您希望您的客户在某个地方使用(并安装!)该软件,它会特别有用没有互联网连接的地方。
编辑:我在原始问题中过度阅读了基于序列的内容。请注意,即使这样也可能比安装加密狗更让用户烦恼,而且对您来说也更容易,因为客户和您都不必处理这些数字。插入加密狗,应用程序即可运行。但是,仅串行方法是迄今为止最便宜的。
我们使用 Agilis 的 Orion。对于我们的一些用户,我们会激活节点锁定许可证,对于其他用户,他们通过网页或电子邮件获得激活,对于其他用户,我们在他们的场所放置许可证服务器。Orion 涵盖了我们需要的所有基础。