0

これは私の質問の説明がやや不自然である可能性があり、これを Stackoverflow またはスーパー ユーザーに投稿するのが最善かどうかはわかりません。

私の問題は次のとおりです。クイズiosアプリを構築する計画段階にあります。場合によっては、実際に物理的な賞品を毎月配布することもあります。つまり、不正行為の可能性を減らすために十分なセキュリティを確保する必要があります。Apache と認証済み SSL (Rapid-SSL) を備えた debian サーバー上に、PHP でバックエンドを構築します。

私の推測では、すべての質問について、サーバーが回答を認証するためにサーバーとやり取りし、回答が正しいかどうかをユーザーに知らせる必要があると思います。いくつかのケース (賞金を獲得しないクイズ) では、正しい答えを返したいとさえ思います。

私の質問は、これを行う最善の方法は何ですか、セキュリティに関してはどうですか? 送受信されるデータをエンコードする必要がありますか? もしそうなら...どのように、何を使用して (base64 など、使用できる一般的なエンコードの種類はありますか)?

編集
私が意味したのは、暗号化ではなくエンコードでした。質問を更新しました

また、認証には Facebook OAuth ログインを使用することを考えていました。

4

2 に答える 2

1

これについて詳しく説明します。

a)サーバーに送信する(またはサーバーからデータを受信する)前に、中間者攻撃またはパケットの変更を恐れている場合、SSLはそれらを停止します。

b)ハッカー/デバッガー/リバーサーを停止したい場合、コードをリバースし、コードがたとえばSSLでハイスコアを送信すると、次のように簡単に送信することもできます。

https://yoursite.com/submithighscore.php?score= [SCORE] httpsを使用している場合でも、ハッカーがURL、スコア送信方法、HTTPパラメーターを公開すると、単純なcurlコマンドを使用して偽の結果を送信することもできます。

したがって、この場合、アプリケーション固有の変更を加えた既知のアルゴリズムを使用してデータを暗号化するなど、高度な暗号化アルゴリズムを実装して、アプリケーションが逆転しないように保護できます(これは少し難しいです)。それはほとんどのハッカー/リバーサーを止めます。

優れた鍵交換アルゴリズムと暗号化スキーマを選択した場合、コードを挿入したりコードを変更したりすることを除いて、ハッカーのためにそれを偽造することは困難です。今回は、すべての逆転防止対策を講じる必要があります。ここで逆戻り対策を講じずに公開鍵暗号化を使用した場合でも、ハッカーはアプリケーションにコードを挿入して、たとえばポイントの送信ごとにXポイントを追加する可能性があり、1回のアセンブリ命令しか必要としません。

とにかく、本当に安全なシステムを作るのは難しいです。リバーサーはリバースになり、コードブレーカーは暗号化アルゴリズムを見つけてそれを破ろうとします。しかし、ほとんどのハッカーを阻止するために最善を尽くすこともできます。

于 2013-01-07T00:20:41.803 に答える
1

SSL経由で送信する場合、データは確実にすでに暗号化されています。考えてみると、最大の悩みは認証です。質問を送信しているユーザーが実際にはそのユーザーであることを確実に知っています。そのためには、単純なパスワード認証を使用します。そして、すべてがSSLを介しているため、それで十分です。その場合の最大の懸念は、ユーザー側のマルウェアです。

于 2013-01-06T23:41:30.963 に答える