Php 基于公钥/私钥的许可

Php 基于公钥/私钥的许可,php,aes,rsa,delphi-xe2,public-key-encryption,Php,Aes,Rsa,Delphi Xe2,Public Key Encryption,我想将许可添加到我的Delphi应用程序中 这就是我心目中的流程:- 当程序运行且未授权/激活时,用户会看到授权屏幕 他单击导出,导出一个包含用户机器硬件信息的文件。此文件将使用公钥(a)进行加密。(此操作的私钥将随web应用程序一起提供) 用户将此文件上载到我的web应用程序,这将允许用户下载其许可证文件。许可证文件将基于用户的硬件信息(MAC ID、CPU串行等)。此文件将使用另一个公钥(B)加密。(Delphi应用程序将提供其私钥) 用户将此许可证文件导入其Delphi应用程序以激活它 已

我想将许可添加到我的Delphi应用程序中

这就是我心目中的流程:-

  • 当程序运行且未授权/激活时,用户会看到授权屏幕

  • 他单击导出,导出一个包含用户机器硬件信息的文件。此文件将使用公钥(a)进行加密。(此操作的私钥将随web应用程序一起提供)

  • 用户将此文件上载到我的web应用程序,这将允许用户下载其许可证文件。许可证文件将基于用户的硬件信息(MAC ID、CPU串行等)。此文件将使用另一个公钥(B)加密。(Delphi应用程序将提供其私钥)

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

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

    为此,我正在探索涡轮动力锁箱3

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

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

    我不希望整个事情太复杂。我的安全水平一般

    请导游


    谢谢

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

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


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

    您使用的是什么非对称密钥算法?Rsa。实际上,您不需要两组密钥。一套就够了。使用公钥加密pc信息。和私钥来加密许可证密钥。您的主要目的是只有您才能生成许可证密钥。是否有人可以解密密钥并不重要。要使用PHP读取加密的硬件信息,您使用的是哪个库?据我所知,链接方法和其他属性应该与锁盒3的完全匹配,以成功读取phpBecame中的加密文件,因为mine是一个基于web的应用程序。它只使用ip地址和域名