我有一个移动应用程序和一个服务器。移动应用程序通过 Web 服务框架通过 SSL 与服务器通信。
该移动应用程序允许客户为交易付款。服务器通过用户名、密码、设备 ID 和数字签名在每次 Web 服务调用时对移动应用程序进行身份验证。
设备 ID 可确保从用于创建帐户的设备访问移动帐户。因此,黑客需要对智能手机进行物理访问,即使他知道移动帐户的用户名和密码。
数字签名是使用在移动应用程序内部硬编码的私钥计算的。从移动应用程序发送的每条消息都附有使用此私钥计算的数字签名。这可确保消息来自移动应用程序,并且消息的内容在传输过程中不会被更改。
如果这个私钥被发现了会有什么后果?黑客是否能够修改通过 SSL 传输的信息并仍然使用此私钥重新计算有效的数字签名?如果移动应用程序生成一个公钥-私钥对并将公钥发送到服务器会更好,还是没有必要?非常感谢。