私はここと同じ質問をしています:
アンドロイド用。
Android には、ここに示されているものと同等の概念がありますか。
私の特定の要件は、ルート化されたデバイスからファイルを保護し、アプリケーションを介してのみ特定のライフタイムでファイルを利用できるようにすることです。
ありがとう
私はここと同じ質問をしています:
アンドロイド用。
Android には、ここに示されているものと同等の概念がありますか。
私の特定の要件は、ルート化されたデバイスからファイルを保護し、アプリケーションを介してのみ特定のライフタイムでファイルを利用できるようにすることです。
ありがとう
私の特定の要件は、ルート化されたデバイスからファイルを保護することです
定義上、それは不可能です。
まず、ルート化されたデバイスを持っている人は誰でも、デバイス自体のどこにいても、すべてのファイルにアクセスできます。
第二に、暗号化は、ユーザーが第三者からデータを保護するのに役立つだけです。一方、あなたは、ユーザーがデータにアクセスできないようにすることで、ユーザーを攻撃しようとしています。暗号化を介してそれを試みることができる唯一の方法は、復号化キーを持っている唯一の人になることです。デバイスがファイルを復号化できるようにするには、その復号化キーがデバイス上にある必要があるため、希望するユーザーは誰でもアプリを探し回ってキーを見つけ、ファイル自体を復号化できます。このようにファイルを暗号化する概念は DRM と呼ばれ、DRM には 2 つのタイプがあります。クラックされたものと、誰もまだクラックしようとしていないものです。
ユーザーにこのデータへのアクセスを許可したくない場合は、デバイスに保存しないでください。
Looking through Mighter's answers and given your concern over rooted phones it looks like its been discussed here.
http://source.android.com/tech/encryption/android_crypto_implementation.html
(a sub link i found somewhere in here http://source.android.com/tech/security/index.html)
Originally i was thinking you could use the ContentProvider and store your data in a database, i believe that can be protected, or you could at least encrypt the data within it. I wasn't sure that would answer your issue however. The android crypto implementation link i hope will cover your requirements. Though might be impractical due to version requirements.
2 つの注意事項:
一般的に言えば、アプリケーションはオペレーティング システムと同程度にしか安全ではありません。デバイスがルート化されている場合、オペレーティング システムはもはや安全ではありません。したがって、アプリケーションも安全ではありません。たとえば、次のような操作システムの調整が行われる可能性があります。
2 つ目の注意点は、ある時点で、データ (ファイル) をクリア (暗号化されていない) でサードパーティのアプリケーションに提供する必要があることです。これを行うとすぐに、彼らはそれをコピーしてサーバーに送信できますが、あなたはそれについて何もできません. そのため、これらのファイルへのアクセスを限られた時間だけ提供したとしても、「漏えい」する可能性があります。
とはいえ、最も簡単なアプローチ (Emile が指摘したように) は、ContentProvider を使用し、その中のデータを暗号化し、サードパーティのアプリに配信されるときにデータを復号化することです。
より複雑なアプローチは、サードパーティのアプリがサポートしている場合に備えて、DRM (http://developer.android.com/reference/android/drm/package-summary.html) を使用することです。
Android は Unix 権限を利用してアプリのサンドボックスを保護します。各アプリは一意のユーザーの下で実行され、そのユーザーのみが/data/data/your.package.name
フォルダーを操作する権限を持っています。ただし、ターゲット デバイスがルート化されている場合、アプリ データが危険にさらされる可能性があります。
いくつかのリンク:
http://source.android.com/tech/security/index.html
http://www.amazon.co.uk/dp/1430240628
http://developer.android.com/guide/topics/security/permissions.html
あらゆる種類のデータを Android デバイスに置くことは安全ではありません。それらはオープンデバイスであると見なされます。ルート化されたユーザーのデータを再度保護する場合は、暗号化の形式を使用する必要があります。また、アイテムの機密性によっては、それが機能しない場合もあります (実際のハイエンド暗号化を使用しない限り、パフォーマンスが低下します)。私が言える唯一のことは、機密情報で Android を信用しないことです。