我想为我的Delphi应用程序添加许可。
这就是我心中的流程:-
-
当程序运行且未获得许可/激活时,用户会看到许可屏幕。
-
他点击导出,导出包含用户机器硬件信息的文件。该文件将使用公钥(a)进行加密。(网络应用程序将提供专用密钥)
-
用户将把这个文件上传到我的网络应用程序,这将允许用户下载他的许可证文件。许可证文件将基于用户的硬件信息(MAC ID、CPU序列号等)。此文件将使用另一个公钥(B)进行加密。(它的私钥将与Delphi应用程序一起提供)
-
用户将把这个许可证文件导入他的Delphi应用程序来激活它
添加了导入/导出步骤,以防用户没有想要使用此应用程序的互联网连接
为此,我正在探索TurboPower LockBox 3。
我需要一些帮助来决定我的方法是否正确。
在这种情况下,我应该使用对称加密吗?
我不希望整件事太复杂。我的安全水平一般。
请引导。
谢谢!
您应该使用非对称密钥。不要忘记钥匙需要在你的程序中才能使用。任何拥有十六进制编辑器的人都可能打开你的exe文件并查看你的密钥。
此外,密钥文件应该使用私钥而不是公钥进行加密。这样,只有您才能生成密钥。
我为我的应用程序做了类似的事情。我花了大约2天的时间来实施。