Как проверить базу данных SQLite, извлеченную из эмулятора Android, она защищена паролем - PullRequest
3 голосов
/ 10 января 2012

Я прочитал эту статью и написал простой класс, используя эту тему. После того, как база данных была успешно создана и обновлена, я вытащил ее из эмулятора.

Для проверки содержимого базы данных я использовал SQliteManger. Когда я пытаюсь открыть файл, SQliteManger спрашивает пароль. У меня есть следующие вопросы:

  1. Значит ли это, что БД защищена паролем, и только root может ее прочитать?
  2. Как мне поменять пароль?
  3. Как генерируется этот пароль?

1 Ответ

1 голос
/ 10 января 2012

Я не думаю, что можно защитить паролем саму базу данных SQLite. Что вы можете сделать наоборот - это зашифровать весь файл БД с помощью ключа. Позже, когда вы получите доступ к базе данных, сначала расшифруйте ее и выполните запрос к дешифрованной базе данных.

Означает ли это, что БД защищена паролем, и только root может читать это?

Нет, это невозможно. Когда вы adb pull файл, он загружается и сохраняется на диске как ваш собственный пользователь.

Как я могу изменить пароль? Как генерируется этот пароль?

Трудно ответить, не глядя на базу данных, с которой вы имеете дело, и на программу, которую вы используете (SQLiteManager) для доступа к базе данных, чтобы ответить, почему и откуда вы получаете запрос пароля. Попробуйте загрузить и поделиться ими, если хотите получить лучшие ответы. В то же время вы можете попробовать Браузер SQLite , который свободно доступен на SourceForge и всегда работал для меня.

P.S. В статье , на которую вы указываете, предлагается использовать ту же программу , которую я предлагал выше. Итак, дай ему шанс. Кроме того, статья, кажется, нигде не говорит о шифровании базы данных. Таким образом, вам не нужно беспокоиться о поиске пароля базы данных.

...