我目前正在开发一个产品(使用C#语言开发),该产品将提供免费下载和安装,但是只有非常有限的功能。要想获得所有功能,用户必须支付许可证费用并收到钥匙。然后将该钥匙输入应用程序中以“解锁”完整版本。
由于使用类似的许可证密钥很普遍,因此我在想:
- 通常如何解决这个问题?
- 如何生成密钥,并且应用程序如何验证密钥?
- 如何避免密钥被发布在互联网上并被其他未支付许可证的人使用(这个密钥实际上不属于他们)?
我想我还应该将密钥与应用程序版本关联起来,以便可以在未来版本中为新密钥收费。
这种情况下还有什么需要考虑的吗?