私はそれが「どのように私は、デバイスに保存されたデータを盗むから人々を保つことができる」だ場合、答えはあなたがすることはできませんが...
あなたの質問が何であるかを正確にはわかりません。デバイスに格納されている場合、物理的に直接アクセスできる人は、格納されている秘密を引き出すことができます。
特に、コードがデバイス上にある場合、ハッカーは暗号化キーや他の埋め込みリソース(データベースを含む)をそのデバイスから引き出すことができます。
だから、もしあなたがそれを防止しようとしているのであれば、それができないことを知っているだけです。材料が十分に感度の良い材料であれば、「切断された」モデルを完全に放棄するといいでしょう。
それほど敏感ではなく、誰かを徹底的に脅かさないようにするだけで、私たちが通常行っていることをやってください:データベースを暗号化し、アプリケーションにキーを保存してください。
あなたが唯一の選択肢はremote wipe enabledを持つことであるなら、その後侵害されるから盗まれた携帯電話を防ぐためにしようとしている場合は、少しさらに行きます。しかし、たとえ失われた電話がすぐに報告され、それを盗んだ人がSIMカードをヤンクして止める方法がわからない場合でも、それだけであなたを救うことができます。
今日の終わりには、ブラックベリーはまだリンゴを安全に吹き飛ばしています。
UPDATE:私のコメントが長すぎになる予定でした。
@mamcx:あなたが持っている問題の範囲を十分に理解しているとは思いません。 ANYデバイスのデータが侵害される可能性があります(including passwords stored in the keychain)。 iPhoneではそれほど難しいことではありません。
塩を使ってパスワードをハッシュし、ローカルのsqlliteデータベースに保存しているとします。今度は、切断されたユーザーがユーザー名とパスワードを入力すると、コードが入力した内容をハッシュして塩を追加し、それをローカルのdbの値と比較します。
これを行うために必要なすべての情報は、接続されていないため、デバイスに保存されています。これには、ハッシングアルゴリズムとソルトが含まれます。
今、デバイスが盗難された、または社員が黒い帽子を着用することを決めたとしましょう。すべてのデータを引き出すのは簡単です。これは非破壊的な方法で行うことができ、は誰もがそれが失われていたことを知らずに戻すことができる。この時点で、パスワードを解読するために虹のテーブルを作成したいのであれば、ハッカーはそれを持っています。ヘック、さまざまな雲の時間をbuild the rainbow tables for youに借りる "企業"があります。
もちろん、すべてのデータが既に失われているため、ハッカーが再販しない限り、パスワード自体は必要ありません。
質問:データはどれくらい重要ですか?あなたがそれを失うことができない場合は、アプリケーションが切断された実行することを許可しないでください。それがそれほど重要でないなら、是非、ローカルでやってください。他の場所で使用しているユーザー名/パスワードを使用しないでください。
できるだけsqliteデータベースに保存されているパスワードを保護したいと思います。私はそれをハッシュで考え、多分塩の種を入れます。しかし、リソースに入れて、愚かなので、おそらくハードコア塩は私の次善策です。問題は、私は両方のサーバー+クライアントのために同じ塩を必要とすることです – mamcx
それについて考えて、BDが同期しているとき、その瞬間に、私はオンラインです、私はログインオプションで私はハッシュを返すことができますか?キーチェンに入れて使用してください。 – mamcx
@mamcx:更新をご覧ください – NotMe