3

私は AWS (アマゾン ウェブ サービス) を使用しており、特に simpleDB を使用して、iOS/Android クライアント ライブラリを使用するいくつかのスマートフォン アプリを作成しています。

これまでのところ、データは非常に安全だったので、データ保護についてあまり心配していませんでした.

次のアプリ プロジェクトでは、ユーザー名とパスワードを含む "users" テーブル/ドメインが必要になります。

私が心配しているのは、誰かが Android Java バージョンのアプリをリバース エンジニアリングして、すべてのパスワードを含むすべての simpleDB データを簡単に取得できるようになることです。

基本的な TVM (トークン自動販売機、コードに含まれていない AWS 認証情報を一時的なトークンで置き換える) は、そのシナリオから保護していないようです。完全に危険にさらされることなく、AWS を使用してアプリの一部にログインします。

パスワードテーブルを別の場所に保存したり、別の方法でアクセスしたりしていますか?

コメントありがとうございます。

4

1 に答える 1

4

アプリを保護するための2つのアプローチを提案できます-

最初のアプローチ:

AWS秘密鍵は、秘密鍵を使用して暗号化されるアプリ内のファイルに保持できます。起動時に、コードは公開鍵を使用してそのファイルを読み取り、AWSシークレットキーのみを取得できます。このアプローチでは、次の点に注意してください-

  1. コードは難読化する必要があります。
  2. 二重の保護を受けるために、秘密鍵はファイルに暗号化された形式である必要があります。
  3. ファイルはデジタル署名されている必要があります。

2番目のアプローチ:

また、ユーザー認証を管理する独自のWebサイトを作成することもできます。ユーザーが正常に認証されると、秘密鍵で暗号化された後にAWS秘密鍵が送信され、アプリへの応答で、アプリは復号化後にそのAWS秘密鍵を使用します。公開鍵を使用します。このアプローチでは、次の点に注意してください。-1。応答は暗号化された形式で返される必要があります。2.サイトは安全であり、HTTPSで実行されている必要があります。3.コードを難読化する必要があります。

于 2012-10-11T06:40:26.560 に答える