PHP-基于服务器硬件/操作系统/环境生成唯一ID


PHP - Generating a unique ID based on server hardwares/OSes/environments?

是否可以基于服务器硬件/OS生成唯一ID?我想像AtlassianJIRA一样,基于客户服务器为我的PHP web应用程序生成许可证密钥。

谢谢你的帮助。

您可以尝试读取几个$_SERVER/$_ENV变量,并将它们组合成一个字符串。在这个md5这个字符串之后,您将拥有您的许可证密钥。

如果您不希望客户每次更新服务器时都获得新的许可证密钥,则必须小心选择哪些变量。此外,并非所有变量都可用于所有系统配置。

我认为更好的方法是用从服务器获取HWID的任何其他语言编写EXE,然后让你的PHP脚本exec()EXE,如果EXE的输出匹配,那么你运行脚本。。。如果没有,则显示错误。

您可能至少想在PHP中使用blenc_encrypt(),这样就可以防止用户进入并将"if(systemhwid==validhwid)"更改为"if(1==1)"

加密的一个更好的选择是使用IonCube(我认为是IonCube加密PHP文件),但不幸的是,它要花很多钱。

在PHP.net中搜索blenc_encrypt()函数

对于那些通过说"网络服务器不应该这样做"或"你不需要在服务器上验证HWID"来回避问题的人,请回答这个问题!不要只是说这不可能,因为我的回答证明了这是可能的。。。你只需要跳出框框思考,你需要一点思考。此外,不要质疑用户的意图,他们只想得到一个直接的答案,而不是BS.