基于时间的PC软件串行密钥生成

时间:2013-10-01 06:23:54

标签: c# desktop-application windows-applications

如何为C#Desktop应用程序(Windows应用程序)生成串行密钥?

E.g。软件在一个月后过期。 (试用版)。

如果用户更改了机器时间,那么可以在指定的时间内验证软件吗?

1 个答案:

答案 0 :(得分:1)

有很多方法可以在C#中为您的应用程序生成序列密钥。您很可能会在简单性(即密钥的长度,可读性等)和特定系统的安全性之间进行某种权衡。

我会推荐Software Protector(http://softwareprotector.clizware.net/)和SKGL(https://skgl.codeplex.com/)。 Software Protector会为您提供一个用户界面,您可以在其中生成密钥,SKGL API将允许您验证自己应用程序中的密钥。如果您愿意,还可以包含SKGL API的源代码(目前可在C#和VB.NET中使用)。您可以设置0到999的时间限制,8个自定义功能和机器锁定。

关于时间变化问题,我看到的唯一方法是使用 time.windows.com 在线查找当地时间(针对该时区)并检查是否等于当前时间在电脑上的时间。请查看此文章:https://skgl.codeplex.com/discussions/472444

请注意我正在开发SKGL API和软件保护器,这意味着我的答案可能略有倾向!