Windows应用程序的许可证密钥生成

时间:2011-12-20 06:47:09

标签: c# c#-4.0

我们正在构建一个C#4.0 Windows应用程序。我需要实现一种功能,其中应用程序的许可证密钥必须每周到期,以便用户可以向团队请求新的许可证密钥。

只是一个简单的逻辑可以做,我不介意黑客攻击,因为这个应用程序只适用于组织内部。

您能否建议如何通过示例在C#中实现这一目标?

1 个答案:

答案 0 :(得分:4)

我会使用盐渍哈希

您可以采取特定的方式,例如客户ID和其他识别信息。你把它放在一个字符串中,添加你自己的密钥作为盐,并哈希值(MD5?Sha1?拿你的选择...)

哈希值是他们的关键。

如果他们有服务器特定许可证,请考虑将mac地址添加到预哈希字符串中,这样他们就无法将许可证复制到多个服务器。

由于涉及许可证持续时间,请考虑将创建的日期添加到预哈希字符串中。

另一件需要考虑的事情是为什么让密钥每周到期?我的意思是,如果它在您的组织内部,为什么您甚至需要许可证?你们不是同一支球队吗? (我的意思是,所有人都朝着同一个共同目标努力 - 改善你的企业。)