1

Android から PHP サーバーへの HTTP リクエストで POST 経由で JSON 配列を送信するアプリを作成しました。

私の質問は、これを安全にする方法ですか? サーバー側で安全な方法で認証を行うにはどうすればよいですか?

SSL接続でデータを送信するだけで十分ですか?それとも、RSAなどで暗号化する必要がありますか?

4

2 に答える 2

1

保護しようとしているものによって異なります。SSL は、通信を盗聴することを防ぎます。他の暗号化を上に追加する必要はありません。

Web サービス自体を不正使用から保護する必要がある場合は、ユーザーが接続するためにユーザー名とパスワード (またはより良いパスワード ハッシュ) を登録して送信する必要があります。その後、すべての要求にパスワードを使用するか、キーを生成することができます。ユーザーを認証するためのすべての要求で送信されます。

IMEI のアイデアはあまり素晴らしいものではありません。ユーザーが 1,2 人を超える場合は、最初に全員の IMEI を取得する必要があるため、非常に面倒です。それでも、Android アプリを分解してサービスを提供できるため、これは偽造可能です。任意の IMEI。

于 2012-06-18T11:02:33.460 に答える
1

ルシファーが提案したようにIMEIを使用することを検討すると、次のようになります。

  1. Android アプリを開きます - アプリにログインしていない場合、LoginActivity が表示されます
    1. ログイン名とパスワードを入力し、「ログイン」ボタンをクリックします
    2. Androidアプリ内でパスワードをハッシュし、ログイン、ハッシュされたパスワード、およびimeiを含むHTTPポストリクエストをサーバーに送信します
    3. サーバー部分はそのユーザーのログインを試み (そして不適切な行動や入力をログに記録し)、true または false を返します (ユーザーがログインできたかどうかによって異なります)。
    4. ログイン情報をアプリ内のどこかに保存して、ユーザーがアプリを閉じて再度開くたびにログインする必要がないようにします-アプリがバックグラウンドで実行されている間(dalvikがアプリを強制終了するまで)、ユーザーはログインしていると見なされます. ..
  2. ユーザーがログインしている場合は、引き続きアプリケーションを使用します

この場合、SSL (HTTPS) の使用は必須です...

于 2012-06-18T11:58:46.507 に答える