是否可以根据服务器硬件/操作系统生成唯一ID?我想基于客户服务器为我的PHP Web应用程序生成许可证密钥,就像Atlassian JIRA一样。
感谢您的帮助。
答案 0 :(得分:3)
您可以尝试阅读多个$_SERVER
/ $_ENV
变量并将它们组合成一个字符串。在这个字符串md5之后,您将获得许可证密钥。
如果您不希望客户每次更新服务器时都获得新的许可证密钥,则必须注意选择哪些变量。此外,并非所有变量都适用于所有系统配置。
答案 1 :(得分:0)
我认为更好的方法是使用从服务器获取HWID的任何其他语言编写EXE,然后让您的PHP脚本exec()EXE,如果EXE的输出匹配则运行脚本。 ..如果没有,则显示错误。
您可能希望至少在PHP中使用blenc_encrypt(),以便您可以阻止用户进入并将“if(systemhwid == validhwid)”更改为“if(1 == 1)”
更好的加密选项是使用IonCube(我认为它是加密PHP文件的Ioncube),但遗憾的是它需要花费很多钱。
在PHP.net中搜索blenc_encrypt()函数
对于那些通过说“网络服务器不打算这样做”或“你不需要在服务器上验证HWID”之类的东西来避免问题的人,我们只是回答这个问题!不要只是说这是不可能的,因为我的答案证明它是可能的......你只需要在盒子外思考,你需要一点思考。此外,不要质疑用户的意图,他们只想要一个直接的答案,没有BS。