Android:在服务器端验证应用程序的完整性

Pet*_*ter 2 security android integrity apk

我正在编写一个通过HTTPS与服务器应用程序通信的Android应用程序.在服务器端,我必须绝对确定Android应用程序的完整性.这意味着服务器应用程序需要确保它与我开发的Android应用程序进行通信,而不是使用重新编写的应用程序进行通信(例如,在反编译原始应用程序之后或在植入设备之后).

有可能确保吗?也许有可能与apk文件的签名?

任何提示都表示赞赏.

问候,彼得

Eug*_*its 5

没门.无论用户手中是什么,都不再是你的了.即使你以某种方式设法将APK转移到服务器进行验证,也没有什么能阻止黑客程序将原始副本发送到服务器.


Pet*_*ego 5

您正试图解决一个已知问题:

  1. 您永远不会相信开放设备(移动电话,台式电脑)上的应用程序.为了信任它,它应该是防篡改的.这种设备的一个例子是SmartCard.移动设备肯定不是它.

  2. 您永远不应该向用户不应该看到的设备发送数据.这意味着所有业务逻辑必须在服务器上完成.

  3. 所有对服务器的请求都应使用用户凭据(用户名/密码)进行身份验证,并通过安全协议(HTTPS/SSL)进行.