1

私はモバイル開発、正確には Android 開発に目を向け始めています。

モバイル アプリは主に UI であり、すべてのビジネスは Google App Engine によってホストされる Web アプリケーション上で行われます (通信は休止すると思います)。

私の残りのAPIが他のソフトウェア/アプリによって呼び出されないようにするにはどうすればよいですか? 誰でもネットワークを傍受し、私の API 呼び出しを取得して、自分の API 呼び出しを偽造できるからです。私のAPIが適切に設計されていて完璧であれば問題にはならないはずですが、そうではないことは確かです.

  • ログイン/パスワードは盗聴される可能性があるため、解決策にはなりません

  • また、ユーザーは自分のアプリに同じ証明書を使用できるため、SSL 通信も可能です。

完全な方法ではなく、部分的な解決策しかないと思います(証明書を醜い手法で隠すなど、逆コンパイルしても役に立たないなど)。

編集 :

私はこれを見つけました: APIリクエストがモバイル(ios/android)アプリから来ていることを確認するにはどうすればよいですか?

しかし、Http や App Engine などでこれを行う既存の方法があるのではないかと思います。自分でセキュリティ コードをコーディングするのはあまり好きではありません。

レミ

4

1 に答える 1

0

ほとんどの場合、アプリではなく、ユーザーにとって REST API で十分であるようです。API を複数のアプリで簡単に使用できるため、これは多くの場合利点と見なされます。

あなたがリンクした質問はまだ完全に安全ではありません.答えは、それが登録プロセスに参加しているあなた自身のアプリであることを確認する方法を本当に教えてくれません.

ハックプルーフなものを作成することはほぼ不可能です。通常はハッキングを難しくするだけなので、試す価値はありません。

クライアントにカスタム ハッシュ関数を実装し、サーバー -> クライアントからデータを送信し、それをカスタム関数でハッシュして、サーバーに送り返したい場合があります。次のステップは、このコードを難読化し、デバッガー検出を追加して難読化することです。

セキュリティ (Netflix DRM など) を本当に気にかけている人は、さまざまなデバイスで動作するハードウェア サポートを備えた "安全な OS" を利用しています。Apple がこれをサポートしているかどうかはわかりません。さまざまな Android プラットフォームで利用できますが、最後に、Android Java API がないことを確認しました (ネイティブ コード経由でアクセスする必要があります)。

http://www.globalplatform.org/mediaguidetee.asp

http://www.globalplatform.org/specificationsdevice.asp

于 2012-10-10T17:21:20.550 に答える