0

我有一个移动应用程序和一个服务器。移动应用程序通过 Web 服务框架通过 SSL 与服务器通信。

该移动应用程序允许客户为交易付款。服务器通过用户名、密码、设备 ID 和数字签名在每次 Web 服务调用时对移动应用程序进行身份验证。

设备 ID 可确保从用于创建帐户的设备访问移动帐户。因此,黑客需要对智能手机进行物理访问,即使他知道移动帐户的用户名和密码。

数字签名是使用在移动应用程序内部硬编码的私钥计算的。从移动应用程序发送的每条消息都附有使用此私钥计算的数字签名。这可确保消息来自移动应用程序,并且消息的内容在传输过程中不会被更改。

如果这个私钥被发现了会有什么后果?黑客是否能够修改通过 SSL 传输的信息并仍然使用此私钥重新计算有效的数字签名?如果移动应用程序生成一个公钥-私钥对并将公钥发送到服务器会更好,还是没有必要?非常感谢。

4

1 回答 1

1

黑客总是可以伪造从他的手机到您的服务器的帐户的虚假请求,如果黑客不受限制地访问设备,则无法阻止这种情况。

但是,如果所有手机共享相同的签名密钥,黑客也可以做的一件事是伪造对另一部手机的请求,如果他知道另一部手机的设备 ID,则他无权访问。

解决此问题的简单方法是每部手机都有自己的身份验证密钥,该密钥在安装时为其消息生成。

你可能已经这样做了,但你并没有在你的问题中真正说出来。

于 2013-08-16T17:08:06.563 回答