代码之家  ›  专栏  ›  技术社区  ›  caesay

生成产品密钥[重复]

  •  6
  • caesay  · 技术社区  · 14 年前

    可能重复:
    Secure algorithm for creating license keys?

    我正在寻找一种基于特定模式创建25个字符的密钥的方法,这样我就可以在没有任何互联网连接等的情况下检查它是否有效。

    我试过几种可能的方法,但没有成功。

    1 回复  |  直到 14 年前
        1
  •  6
  •   winwaed    14 年前

    是的,所有这样的系统都可以绕过,但是大多数供应商使用的实用方法是让它很难让诚实的人保持诚实。一种流行的方法是用名称、许可证类型和日期为许可证设置密钥。执行此操作的常见方法是使用部分密钥验证:

    http://www.brandonstaggs.com/2007/07/26/implementing-a-partial-serial-number-verification-system-in-delphi/

    (一个快速的谷歌会找到其他的实现和示例,但是布兰登的很受欢迎)

    使用pkv方法,您可以在不使旧密钥无效的情况下更改软件新版本中的测试。当你的系统被黑客攻击时,你会想这样做(而且它会被黑客攻击!).同样,最好保留一个黑客密钥列表,以便在将来的程序版本中自动过期。