0

我正在编写一个手机游戏,用户将他的高分发送到 PHP 服务器。

我想在服务器中验证 HTTP 请求仅来自移动设备。我想拒绝恶意用户可能通过 curl 或其他带有虚假分数的 HTTP 客户端发送的呼叫。

这样做的标准,通常的方法是什么?

我认为我可以在移动客户端中加密 HTTP 消息,但随后我需要使用加密密钥发布二进制文件,如果反编译可以检索该二进制文件。

谢谢你。

4

2 回答 2

0

看看这个:

https://github.com/serbanghita/Mobile-Detect

它非常准确,但是它不会阻止伪造用户代理的客户。

然而,通常最好的方法是不要让客户做出任何决定。

以 Eve Online 之类的游戏为例。您所做的每个操作都作为用户操作发送到服务器,然后服务器验证该操作并做出适当的决定。如果服务器依靠客户端来决定一艘船正在造成多少伤害,那么游戏将受到无休止的教练黑客攻击。

于 2013-07-19T15:47:46.053 回答
0

您可以使用 JavaScript 获取有关用户客户端的信息,例如浏览器代码名称、浏览器名称、浏览器版本、平台、用户代理标头、用户代理语言等。

那里可能有可行的库(可能像 Flosculu 提到的那样)可以帮助您进行移动专用检测,但是您必须了解所有这些信息无论如何都可以被操纵,这主要取决于您如何传输数据,所以也许您不应过度考虑这一点,而应专注于安全的数据传输方法。

不过,快速搜索指向了这个移动检测脚本

但是再次......你不能依赖这样的东西,但如果它不是太耗时,那么如果它让你感觉更好,那么一定要在脚本中添加另一个验证:)

于 2013-07-19T15:52:18.623 回答