¡Gran pregunta y bienvenido a la mina terrestre del cifrado móvil! Desafortunadamente, la respuesta realmente depende de en qué modelo de iPhone / fabricante de Android se ejecutará tu aplicación. Aquí hay un pequeño basurero de lo que sé. ¡Ojalá te lleve por el buen camino!
Tanto iOS como Android proporcionan bibliotecas criptográficas (cifradas) en el sistema operativo. Deberías poder buscar documentos en Google con bastante facilidad.
El enganche con cualquier cifrado basado en software será "¿Dónde almacenamos la clave de descifrado?". Obviamente, almacenar la base de datos cifrada en el espacio de almacenamiento de la aplicación, luego almacenar la clave de descifrado en un archivo justo al lado es un poco inútil.
Cada vez más, los dispositivos móviles están empezando a tener chips de almacenamiento de claves de hardware seguros (a menudo en forma de TPM , o lo que Apple llama "Enclave seguro") que lanzará la clave de descifrado a la aplicación de manera segura. Por lo general, tienen mucha flexibilidad en cuanto a cómo / cuándo se liberan las teclas ("solo se puede acceder durante 10 minutos después del desbloqueo del dispositivo", "solo después del inicio de sesión basado en contraseña", etc.).
El problema es que estas tecnologías aún son muy nuevas y están evolucionando rápidamente, por lo que no todos los dispositivos lo admiten todavía, y los que aún no tienen un conjunto de características / API coherente. Es peor en Android, pero hay cierta incoherencia incluso entre las versiones de Secure Enclave de Apple.
Android Marshmellow realizó una importante revisión de su criptografía para que las claves privadas nunca tengan que ser entregadas a la aplicación, todas las operaciones de cifrado / descifrado se pueden realizar dentro del almacén de claves seguro. Pero los dispositivos Android < 6.0 son impredecibles.
Si decide seguir esta ruta, la realidad es que necesitará detectar la versión del sistema operativo (y quizás el fabricante) en tiempo de ejecución y usar un código diferente según lo que encuentre. Probablemente será un gran esfuerzo de desarrollo y un dolor en el trasero para el control de calidad.