MASTG-KNOW-0038: None
Com a biblioteca SQLCipher, você pode criptografar com senha bancos de dados SQLite.
var secureDB = SQLiteDatabase.openOrCreateDatabase(database, "password123", null)
secureDB.execSQL("CREATE TABLE IF NOT EXISTS Accounts(Username VARCHAR,Password VARCHAR);")
secureDB.execSQL("INSERT INTO Accounts VALUES('admin','AdminPassEnc');")
secureDB.close()
Formas seguras de recuperar a chave do banco de dados incluem:
- Solicitar que o usuário descriptografe o banco de dados com um PIN ou senha ao abrir o app (senhas e PINs fracos são vulneráveis a ataques de força bruta)
- Armazenar a chave no servidor e permitir seu acesso apenas por meio de um web service (para que o app possa ser usado apenas quando o dispositivo estiver online)