如何为 Mac 地址制作许可证密钥以保护我的 php 应用程序

How make Licence Key for Mac Address to protect my php application

我正在使用 php 语言开发热点系统, 现在我想出售这个系统,但我如何才能保护我的系统不被买家转售,我想确保许可证密钥由 machine 和 mac 的权利使用地址,这意味着许可证密钥不能使用超过一次。 我该怎么做,我不知道

MAC 地址不是许可证绑定的可靠数据源。在大多数情况下,用户可以更改 MAC 网卡地址,并以此方式绕过您的安全措施。

您可以使用更复杂的算法将许可证绑定到PC。获取主板类型、CPU 类型、RAM 类型和 MAC 类型。计算所有这些数据的某种哈希值,并基于它生成许可证。

不幸的是,如果您的合法用户更改了硬件,he/her 将不得不通知您并要求提供新的许可证代码。

我假设您的系统是 Linux,因此您可以通过从 php 调用 shell 命令来获取有关系统的所有信息。

获取CPU信息:

$cpu = array_filter(
    array_unique(
        split("\n",
            shell_exec('cat /proc/cpuinfo | grep "model name\|vendor_id"')
        )
    )
);
print_r($cpu);

它将输出如下内容:

Array                                                                   
(                                                                       
    [0] => vendor_id    : GenuineIntel                                  
    [1] => model name   : Intel(R) Xeon(R) CPU E5-2670 v3 @ 2.30GHz     
)                                                                       

要获取有关主板的信息,您可以 运行 shell 命令 "sudo dmidecode -t 2"(您必须授予 php 用户(www-data)访问权限至 运行 sudo dmidecode)

要获取内存信息,命令应该是"sudo dmidecode -t 17"