9

我制作了一个程序,在将其出售给客户之前需要获得许可。由于我不确定它是否至少能让我获得商业许可软件的成本,所以我不想购买。

因此,我正在寻找有关如何使用以下逻辑实现许可功能的建议:

  • 每次应用程序启动时,所有许可证密钥都会在服务器端进行验证(除了许可证号之外,用户端没有存储任何许可信息)。
  • 只有一个应用程序同时使用一个许可证密钥运行。

我不知道如何保护我的程序免于简单的反编译/反汇编以及仅删除检查许可证的调用?或者制作自己的服务器,在每个许可证上做出响应?这种安全性通常是如何产生的?

我搜索了免费的 SDK 或类似的东西,但找不到任何东西。我将非常感谢您的帮助!

PS:我并不渴望让系统“坚不可摧”,但我希望获得比支付 5.10 美元购买程序副本更昂贵的破解保护。

PPS:对不起我的英语不好。

4

2 回答 2

2

我不知道如何保护我的程序免于简单的反编译/反汇编以及仅删除检查许可证的调用?或者制作自己的服务器,在每个许可证上做出响应?这种安全性通常是如何产生的?

您混淆了许可和混淆。为了防止上述情况,您需要使用混淆器来混淆您的 exe 和 dll。

由于我不确定它是否至少能让我获得商业许可软件的成本,所以我不想购买。

恕我直言,比起从头开始开发许可计划(正如他们所说,重新发明轮子),您最好专注于并花时间在您的实际软件上。

如果您愿意接受付费解决方案,请查看CryptoLicensing(用于许可和复制保护)和Crypto Obfuscator(用于混淆和代码保护)。

免责声明:我为上述产品的开发商 LogicNP Software 工作。

于 2012-08-01T11:04:52.867 回答
1

(抱歉不能评论别人的帖子???)

这取决于您的应用程序在做什么。

我目前面临和你一样的问题。我要登录系统,只需获取并与数据库中的内容进行比较。如果不存在,请不要启动应用程序。并不是说我需要更多,该应用程序依赖于我的数据库,没有它它就毫无用处。

然后他们可以花几个小时根据他们在查询中看到的内容来弄清楚我的数据库是什么样子,或者实际上重写了我的整个产品。我将在应用程序安全方面花很少的钱。我希望拥有的唯一保护是不显示我的服务器数据。

于 2012-08-01T11:13:01.233 回答