(升级到答案)
实现全面安全是不可能的:您始终必须考虑威胁是什么(来自谁,它们的资源如何等),以便充分防御它们。
例如,即使您在将结果数据发送到您的registerresult.php
页面之前对结果数据进行了加密签名,签名密钥仍必须嵌入到用户手机上的应用程序中 - 因此,确定的破解者仍然可以提取密钥并发送伪造的结果。我认为您必须在您的服务器上运行游戏,以便将状态信息保存在那里,以击败这种性质的威胁。
However, it's unlikely that anyone would go to such lengths to crack an iPhone game (unless perhaps the game was incredibly popular or paid out prizes of some material value). Would it really matter to you if a few highly skilled people succeeded in sending forged results? It's worth thinking about.
Should you decide that you can tolerate such threats, the approach cited in your question has some flaws. Whilst HTTPS does secure the secret key from being intercepted by a packet sniffer, it does not prevent it being intercepted by a transparent proxy that presents an SSL certificate which is accepted by the phone (such as a self-signed one that has been added to its keychain).
To defeat threats of this sort, I suggest that you calculate a secure hash of (data + random salt value + secretkey) and send (data, that same salt value, that hash) to the server; the server can then recompute what the hash should have been from the known secret key and check that it verifies against the received hash.