【发布时间】:2009-03-31 14:29:42
【问题描述】:
授权自定义 .NET 组件或应用程序进行销售的最佳方法是什么?
- 封闭源代码
- 2 许可模式:
- 试用有限功能许可证(免费)
- 功能齐全
【问题讨论】:
-
作为licens_er_还是licens_ee_?
-
你是卖组件的,我知道吗?如果审判到处蔓延,你介意吗?您想阻止版权法已经阻止的任何事情吗?关于如何使用它们有什么具体或奇怪的地方吗?
授权自定义 .NET 组件或应用程序进行销售的最佳方法是什么?
【问题讨论】:
对于“封闭源代码”场景,请考虑使用混淆。我一直在使用SmartAssembly,对结果非常满意。
关于许可模式。您说的是 .net 组件,因此目标受众是开发人员。我认为他们不会处理免费的有限试用。如果您要向开发者社区出售有价值的东西,请准备好在 Rapidshare 或 torrent 上查看“全功能”版本。
我建议专注于支持和频繁的更新/增强,而不是保护。在大多数情况下,“业务”购买支持而不是二进制文件。
如果您需要一些工具名称,为什么不直接在 Google 上搜索呢? “.net 许可”查询将为您提供各种链接。
希望对您有所帮助。
【讨论】:
这里有很多缺失的细节。
您是从某人那里获得许可还是尝试创建许可?
开源、闭源、销售?如果卖,你提供货源吗?
组件/应用程序的最终用途是什么?您是托管它(如多租户网站)还是更多 COTS?
您的竞争对手对他们的销售模式做了什么?它似乎对他们有用吗?例如听起来合理吗?
当您回答这些问题时,您会找到适合您需求的许可证。
【讨论】:
GPL。或者宣布它为公共领域。或者一个 24 页的 EULA,它限制用户在使用该组件时剃须的能力。或者类似的东西。
您为什么不告诉我们您正在尝试做什么、预期用途是什么以及您希望发生什么?
【讨论】:
当您发布可升级到完整版本的软件试用版(换句话说,包含所有功能的程序集)时,您无能为力以防止有人最终破解它。 (使用 .net 比使用本机程序集更容易)。
签名和混淆是防止它以非常易读的形式被逆向工程的唯一方法,但仅使用反射器之类的东西基本上可以为您提供完整的信息。
保持许可外观的最简单方法之一是:
作为替代方案,您可以在应用程序中以明文形式包含带有哈希码的许可信息(这是许可密钥,算法也应该支持公钥/私钥),并且仅检查许可信息是否匹配哈希码。
【讨论】: