あなたは、要求がどこから来たのか確認する方法がないので、これは100%安全なものにする方法はありません、しかしにそれは少し難しくする方法がありますハイスコアをハックする。これは基本的にセキュリティが不明ですが、ネットワーク接続を調べるのではなく、実際のアプリバイナリを掘り下げる必要があります。
まず、アプリの「パスワード」を選択します。スコアだけを送るのではなく、スコアと連結されたパスワードの暗号ハッシュ(例えば、SHA-256など)も送ってください。サーバー側で、scoreと連結されたパスワードのハッシュを再計算し、これが送信されたハッシュと一致するかどうかを確認します。そうでない場合は、スコア提出を拒否します。 これは、アプリが行うリクエストを見てもスコアを上げることができないため、最初のアプローチよりも幾分安全です。しかし、バイナリコードをアプリから探しても、攻撃者はパスワードを紛失してスコアを提出することができますが、これは非常に関与しており、おそらくあなたの目的には十分です。
もちろん、これはスコアを複製することを排除するものではありません(適切なハッシュがわかったら、何度でもスコアを提出することができます)。もしあなたがこれを避けたいのであれば、サーバーからのリクエスト(ランダム)ID番号、ハッシュスコア+ ID +パスワード、スコア+ハッシュを送信して、サーバーはこのハッシュが良いかどうかをチェックします。サーバーはIDナンバーを覚えておく必要がありますので、これはプログラムに少し関わっています。 より単純な解決策は、各スコアをプレイヤー名に関連付けることであり、1人のプレイヤーにつき1つのスコアしか許可しないことです。その後、パスワード+名前+スコアをハッシュすることができます。
素晴らしいあなたの答えは、取引のセキュリティを実装するための参考資料として便利です。 – kishu27
"あなたの目的には十分である"と言えば、オンラインの高得点リスト(Angry Birdsなど)を持つ大規模なアプリケーションでも同様のアプローチこれに?ちょうど、言及したように、より大きな程度のあいまいさがありますか?良いアイデアをありがとう! – TragedyStruck