dos notas:
En términos generales su aplicación podría ser tan segura como el sistema operativo. En caso de rootear el dispositivo, el sistema operativo ya no es seguro. Por lo tanto, su aplicación tampoco puede ser segura. Por ejemplo podría haber ajustes de sistema de operación que permitan:
- entrada de teclado de registro
- subvert cualquier llamadas (incluidas las llamadas a API crypto)
- de registro de cualquier información que llega a través de HTTP (S).
La segunda observación es que en algún momento deberá proporcionar sus datos (archivos) en forma clara (no encriptada) a aplicaciones de terceros. Tan pronto como lo haya hecho, pueden copiarlo, enviarlo a algún servidor y no pueden hacer nada al respecto. Por lo tanto, incluso si proporciona acceso a estos archivos durante un tiempo limitado, aún pueden "perder".
Dicho esto, el enfoque más simple (como se señaló Emile) sería el uso de un conjunto de datos ContentProvider, cifrar dentro de ella y descifrar datos cuando es entregado a aplicaciones 3 ª parte.
Un enfoque con mayor complejidad sería utilizar DRM (http://developer.android.com/reference/android/drm/package-summary.html) en el caso de aplicaciones 3 ª parte apoyan.
Gracias, el problema es que quiero proteger los archivos de este tipo de rooting pero también de que el usuario pueda abrirlos fuera de la aplicación –