为软件生成激活码的最佳方法是什么?

时间:2009-08-26 19:26:23

标签: c# activation-codes

有什么方法可以随机生成一些不太可能随机生成的激活码来激活软件?我正在为Web应用程序制作一个自动执行系统。

我正在使用C#。

4 个答案:

答案 0 :(得分:16)

答案 1 :(得分:4)

这取决于你的目标。 GUID很容易生成,但如果用户必须手动输入,则会很痛苦。如果通过(例如)点击电子邮件中提供的URL进行激活,或者您希望用户复制并粘贴激活电子邮件中的值,那就没问题。

在其他情况下(例如,以某种方式在包装上物理印刷激活码的收缩包装软件),用户将手动输入代码。在这种情况下,您最好使用类似于Microsoft和Blizzard使用的方法:生成由五组五个随机字母数字字符组成的代码(如果您想消除激活代码包含类似内容的风险,请省略元音4SHIT),并检查针对主列表生成的每个代码是否重复。 (虽然我认为甚至从{1,2,... 34 ^ 26 - 1}中提取的包含重复的100,000序列的几率非常小。很难说是肯定的,因为我知道计算的唯一方法它溢出了一双。)

答案 2 :(得分:2)

Guid.NewGuid()。toString()方法

如果你不介意长度为36个字符。

答案 3 :(得分:1)

您应该只使用Guid