Могу ли я вставить пароль в базу данных комнаты, например, sqlite cipher в android?
@Database(
entities = [WeekDays::class],
version = 1
) абстрактный класс AppDatabase: RoomDatabase() {абстрактное развлечение raspisanyDao (): RaspisanyDao
companion object {
@Volatile
private var myRoomInstance: AppDatabase? = null
internal fun getDatabase(context: Context): AppDatabase? {
if (myRoomInstance == null) {
synchronized(AppDatabase::class.java) {
if (myRoomInstance == null) {
myRoomInstance = Room.databaseBuilder(
context.applicationContext,
AppDatabase::class.java, "app_db"
).build()
}
}
}
return myRoomInstance
}
}
}
1 ответ
Возможно, вы захотите взглянуть на эту библиотеку https://github.com/commonsguy/cwac-saferoom
Но имейте в виду, что к базе данных SQL всегда можно получить доступ через root, и если шифрование происходит на устройстве, его можно легко расшифровать, поэтому вам действительно не следует сохранять пароли локально, подумайте о проверке пароля на сервере и отправке токен для пользователя, который можно сохранить локально для проверки пользователя.