保护android和php之间的连接


Securing the connection between android and php

我正在开发一个android应用程序,用户可以使用android Facebook SDK注册。我使用谷歌Volley库使http请求到我的PHP页面从MySql数据库接收JSON数据。我想存储有关用户的个人信息,并在以后从数据库中检索它们。我花了一整天的时间在谷歌上寻找如何确保android-php连接的方法。我遇到的最流行的解决方案之一是在post请求中发送一个散列键,并通过PHP验证该散列键。像这样:

if($_POST['secret'] != '3CH6knCsYmvA2fdghfdfgmf3JqmUctCM') {
    header('HTTP/1.1 403 Forbidden');
    error_log("ERROR: wrong secret: " . $_POST['secret']);
    exit("Access denied");
}

上面代码的问题是,一些黑客可以反编译任何apk文件并查看代码并轻松找出他们的密钥哈希值是什么。因为我没有一个自定义登录系统的用户名和密码来验证用户,我可以用什么来确保android和php之间的连接?我需要一个例子或一个教程的链接或任何关于建立解决方案的建议,这样的问题。

这个问题在Stack Overflow上并不新鲜,但是其他类似的问题已经有两三年前的历史了,这在Android的快速开发世界中被认为是历史性的。

保护服务器和应用程序之间的连接?只需使用Https。现在,如果你想让它只有你的应用程序可以访问web服务-需要在它们之间共享某种秘密来检查。通常这是一个密码,由用户输入。事实上,用户输入它可以保护你的应用免受黑客攻击,因为信息并不在应用中。如果你不打算让用户输入它,那么它就需要在你的应用中。这意味着任何真正想要它的黑客都会得到它。你可以隐晦一点,但他们最终会发现的。

基本上,为了确保它不能被反向工程,你需要用户和一个完整的登录系统。