我正在编写一个移动游戏,用户将其高分发送到PHP服务器。
我想在服务器中验证HTTP请求仅来自移动设备。我想拒绝恶意用户通过curl或其他带有假分数的HTTP客户端发送的呼叫。
这样做的标准通常方法是什么?
我认为我可以在移动客户端中输入HTTP消息,但是我需要使用encription键释放二进制文件,如果反编译可以检索它。
谢谢。
答案 0 :(得分:0)
看看这个:
https://github.com/serbanghita/Mobile-Detect
这是非常准确的,但它不会阻止伪造用户代理的客户。
一般来说,最好的办法是让客户做出任何决定。
以Eve Online等游戏为例。您所做的每个操作都作为用户操作发送到服务器,然后服务器验证操作并做出相应的决定。 如果服务器依靠客户端来决定一艘船正在造成多大的伤害,那么游戏就会受到训练师黑客攻击的影响。
答案 1 :(得分:0)
您可以使用JavaScript获取有关用户客户端的信息,例如Browser CodeName,Browser Name,Browser Version,Platform,User-agent header,User-agent language等。
可能存在可行的库(可能像Flosculu所提到的那样)可以帮助您进行移动专门检测,但您必须了解所有这些信息都可以被操纵,它主要取决于您如何传输数据,所以也许你不应该过度思考这个问题,而应该关注安全的数据传输方法。
快速搜索指向this mobile detection scripts。
但是再次......你不能依赖这样的东西,但如果它不是太耗费时间,那么无论如何都要为脚本添加另一个验证,如果它让你感觉更好:)