Warm tip: This article is reproduced from serverfault.com, please click

security-如何保护我的API免受“虚拟”有效载荷的侵害?

(security - How to secure my API against "fictitious" payload?)

发布于 2020-11-27 18:47:59

我已经开发了适用于Android / iOS的应用程序,该应用程序根据用户输入来计算值。如果发生事件,此计算值将作为常规HTTPS有效负载发送到我的后端。现在我的问题是,如何确定该值实际上仅由我的应用程序的源代码计算得出?有没有办法解决这样的问题?

明确地说:我想避免有人在扎根他的手机,从我的应用程序的私有存储中提取Auth-Token,并通过人工或通过操纵源代码将有效的HTTPS有效负载和虚拟负载发送到我的后端。

从后端的角度来看,很难根据有效负载的值评估有效负载(如果有效或无效)。

任何建议表示赞赏!

- - - - - 编辑 - - - - - -

为了完整起见:除了这里的答案之外,以下内容也非常有趣:

在Android应用程序中哪里可以安全地保存静态信息?

如何保护移动应用程序的API REST?(如果嗅探请求为你提供了“钥匙”)

Questioner
eltitano
Viewed
11
Scott McNeany 2020-11-28 07:08:07

你不能信任来自客户端的数据。时期。

你应该考虑将计算逻辑移至服务器,并仅发送执行计算所需的原始值。你可以轻松获得亚秒级的响应时间,以将数据发送到服务器,因此用户不会注意到延迟。

如果需要离线连接,则需要在客户端和服务器上都复制业务逻辑。