1

Windows ストア アプリの素晴らしいアイデアがあります。このアプリを作りたいです。ただし、大規模で価値のあるデータベースが必要であり、そのためのサービスを作成して、人々が簡単に盗むことができないようにする必要があります。私の考えでは、Azure でモバイル サービスをホストし (試したことはありません)、.net Web API プロジェクトを作成して、要求を受け取り、Windows 8 の mvvmclient にキャンディーのような Json を提供することを考えています。しかし、私が望んでいないのは、誰かが私のトラフィックをアプリからサービスへと行ったり来たりして盗聴し、私のアプリとサービスを使用してデータを取得/投稿する方法を見つけ出し、自分のアプリ/ウェブサイトをセットアップして、私の帯域幅を使用してこのデータを表示することです。彼らにお金を稼ぎます。

アプリからデータベースへのデータ アクセスを保護して、リバース エンジニアリングできないようにするにはどうすればよいですか。

また、これは、このような大量の Windows 8 アプリを開発するための最適なセットアップですか? より良い提案はありますか?

SSLなどを使用してトラフィックを暗号化できることを知っています。私が保護しようとしているのは、Firebug または Fiddler を使用して、特定のレコードを取得するために投稿できるパラメーターを特定する人です。次に、私のサービスをエンドポイントとして使用し、データを吸い上げ、帯域幅を娼婦にする独自のサイトを作成します。すなわち。firebug を使用するだけで、https://www.google.com/search? q=dallas を使用して Google で dallas という単語を検索できることがわかります。ページを暗号化したとしても、ブラウザでそれだけ見ることができます。したがって、誰かが自分のアプリケーションで同じ取得/投稿を行うと、同じレコードが返され、私のものが使用されます。

4

3 に答える 3

3

The most straight forward thing you can do is to setup authentication for your users using something like OAuth. This will allow you to ensure no communication happens with your service in an anonymous fashion.

Once you have authenticated your requests you can place controls on those requests that won't impact a normal user. You could rate limit or throttle requests or any number of tactics to make it very expensive time wise to siphon off large portions of your data set.

For instance, you can start blocking requests when you notice a large number of users clustering from a single IP address. You could place sensible limits on each user (like 10 API calls per minute with a result set limited to 50). You get the idea I'm sure.

于 2013-01-16T02:09:54.003 に答える
1

私たちは同じ懸念に会ったと思います。Windows Azure Web サイト上に構築された Web サービスに接続する Windows 8 アプリケーションを開発しています。Fiddler などのツールを介してトラフィックを傍受することで、悪者が私のサービスに偽のリクエストを送信することを望んでいません。

メールグループでこの質問をして、ヒントを得ました。私は試したことはありませんが、参考までに。アプリケーションでユーザー ログインが必要な場合、ユーザーのパスワードはデータ/トラフィック保護の良いシードになります。パスワードを使用して鍵ペアを生成し、リクエストに署名して、サーバーと公開鍵に送信できます。次に、サーバー側で公開鍵によって署名を検証できます。

HTTPS を使用することも別の方法です。しかし、ご存じのように、HTTPS であっても、悪者は Fiddler を介して実際のデータを知ることもできます。

証明書を使用することは、私が考える別の解決策かもしれません。しかし、クライアントのマシンから証明書をインストールして選択する方法に関する関連ドキュメントが見つかりませんでした。

HTH

于 2013-01-16T02:21:17.513 に答える
-3

HTTPS 経由で提供するだけで、盗聴することはできません。

于 2013-01-16T02:15:11.013 に答える