3

ユーザーがアプリケーション設定で設定したパスワードでアプリケーションをロックしたいと考えています。アプリのメイン アクティビティが表示されるたびに、代わりにパスワード ダイアログを表示する必要があります。私はそれを行う方法を知っていますが、私は疑問に思っています... :

ユーザーが設定したパスワードを保存するにはどうすればよいですか? SharedPreferencesスマートフォンの設定で SharedPreferences を削除できるため、保存できません。パスワードを保持するテキストファイルを考えましたが、このファイルは削除できますか? 何か案は?

4

2 に答える 2

2

パスワードが何らかの方法で削除されることを防ぐことはできないため、一歩下がって、そもそもなぜパスワードを持っているのかを考える必要があります。ほとんどの場合、実際のアプリ自体ではなく、アプリがアクセスできるデータを保護するためにパスワードを使用しています (アプリの実行を保護しても、デバイスに物理的にアクセスできる攻撃者に対しては効果がないためです。

パスワードがデータを保護するためのものである場合は、パスワード ストアを削除することで、攻撃者がデータにアクセスできないようにするだけで済みます。これを行う 1 つの方法は、パスワードをデータを覆い隠す暗号化キー (またはキーの一部) として使用することです。したがって、パスワードを削除する必要さえありません。

于 2012-07-13T11:31:11.913 に答える
0

1つのオプションは、パスワードを他の情報がある場所と同じファイルに入れることです(ユーザーの設定/データを保護したいと思います)。そのファイルが見つからないか破損している場合は、アプリを起動しないでください。あなたが達成したことは、誰かがデータを改ざんした場合、情報が使用できなくなることです。データファイルに署名/暗号化します。

もう 1 つの解決策は、パスワード (ハッシュ!) を Web サーバーに保存することです。

于 2012-07-13T11:31:55.753 に答える