基于公钥/私钥的许可

时间:2012-08-22 07:34:05

标签: php aes rsa delphi-xe2 public-key-encryption

我想在我的Delphi应用程序中添加许可。

这是我想到的流程: -

  1. 用户在程序运行时看到许可屏幕并且未获得许可/激活。

  2. 他点击导出,导出包含用户机器硬件信息的文件。该文件将使用公钥(A)加密。 (Web应用程序可以使用私钥)

  3. 用户会将此文件上传到我的网络应用程序,从而允许用户下载他的许可证文件。许可证文件将基于用户的硬件信息(MAC ID,CPU Serial等)。该文件将使用另一个公钥(B)加密。 (Delphi应用程序可以使用它的私钥)

  4. 用户将此许可证文件导入其Delphi应用程序以激活它。

  5. 已添加导入/导出步骤,以防万一用户没有要使用此应用程序的互联网连接

    我正在为此目的探索TurboPower LockBox 3.

    在决定我的做法是否正确时,我需要一些帮助。

    我应该使用对称加密代替这种情况吗?

    我不希望完整的事情过于复杂。我对平庸的安全感很满意。

    请指导。

    谢谢!

1 个答案:

答案 0 :(得分:1)

您应该使用非对称密钥。别忘了要在你的程序中使用密钥才能使用。任何具有十六进制编辑器的人都可能打开您的exe文件并查看您的密钥。

此外,密钥文件应使用私钥而非公钥加密。这样,只有您可以生成密钥。

我为我的应用做了类似的事情。我花了大约2天的时间来实施。