Могу ли я вставить пароль в базу данных комнаты, например, 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, и если шифрование происходит на устройстве, его можно легко расшифровать, поэтому вам действительно не следует сохранять пароли локально, подумайте о проверке пароля на сервере и отправке токен для пользователя, который можно сохранить локально для проверки пользователя.

Другие вопросы по тегам