¿Dónde almacenar las claves del algoritmo de cifrado?
Necesito desarrollar una aplicación de Android donde el cifrado / descifrado se hace en el lado del cliente. Los datos que se transportan y almacenados en el servidor DEBE ser cifrado. El problema es que no puedo almacenar la clave de cifrado / descifrado en cualquier lugar.
Las claves no se pueden almacenar en la máquina cliente. Debido a que los administradores (o alguien que puede acceder al servidor) no deben tener acceso a los datos no cifrados.
- ¿Diferencia entre los métodos onKey (), OnKeyDown () y dispatchKeyEvent () proporcionados por Android?
- Facebook pide hashes de clave de Android para la aplicación que todavía está en modo de área de seguridad
- Clave de String en Java RSA
- Cómo cambiar el fondo clave de cualquier tecla en el teclado suave de Android
- Problema Programatically Adición de Word para la predicción de Word
¿Cómo generar claves entonces? ¿Puede sugerir algún método?
- Integrando amazon mp3 en mi aplicación android
- Error en la autenticación de Google Maps APIv2
- Android - Almacenamiento seguro
- Android: automáticamente elige debug / release Maps clave api?
- RELEASE_KEY_ALIAS y RELEASE_KEY_PATH valores para generar clave hash
- Leer / dev / input / event en android a través del lenguaje de programación Java
- Aplicación segura para bebés en android
- Google map firmó errores clave de api en Android
Supongo que cuando usted dice que las claves de cifrado no deben ser almacenados en el dispositivo, lo que realmente significa que 🙂 Porque si esa restricción no estaban allí, podría utilizar el KeyStore . Sin embargo, esto significa que las claves se almacenan en el dispositivo, que parece no ser lo que desea.
Por lo tanto, suponiendo que las claves de cifrado son externas al dispositivo, es algo sencillo ya que no hay mucho espacio para elegir: su aplicación cliente le pide al usuario que introduzca la clave de cifrado de alguna manera (hasta usted), que utiliza para cifrar el Datos y, a continuación, olvida la clave de cifrado de forma inmediata.
A continuación, envía los datos cifrados al servidor, donde se almacena. El servidor no conoce las claves de cifrado, así que para el servidor es sólo una gota opaca de datos.
Cuando el usuario desea recuperar los datos, tiene que proporcionar la clave de descifrado en el lugar, ya que no se almacena en el dispositivo.