1

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

这是我想到的流程:-

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

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

  3. 用户将此文件上传到我的网络应用程序,这反过来将允许用户下载他的许可证文件。许可证文件将基于用户的硬件信息(MAC ID、CPU 序列号等)。该文件将使用另一个公钥 (B) 进行加密。(它的私钥将在 Delphi 应用程序中可用)

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

添加了导入/导出步骤,以防用户没有想要使用此应用程序的 Internet 连接

为此,我正在探索 TurboPower LockBox 3。

我需要一些帮助来决定我的方法是否正确。

我应该在这种情况下使用对称加密吗?

我不希望整个事情太复杂。我可以接受中等水平的安全性。

请指导。

谢谢 !

4

1 回答 1

2

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

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

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

于 2012-08-22T11:01:57.743 回答