Нужно ли выполнять дополнительную работу для защиты базы данных sqlite в приложении iOS? - PullRequest
0 голосов
/ 30 марта 2012

Я использую основные данные для хранения данных в базе данных sqlite.Нужно ли мне предпринимать какие-либо дополнительные меры для их защиты?

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

Заранее спасибо.

1 Ответ

2 голосов
/ 30 марта 2012

Это зависит от того, в какой степени вы хотите защитить свою БД. Если вы не рассматриваете устройства с джейлбрейком, достаточно сохранить вашу базу данных в личной папке вашего приложения, к которой никто другой не сможет получить доступ.

Пользователь устройства с джейлбрейком, однако, может прочитать всю файловую систему, включая вашу sqlite db. Если вам нужно учесть и этот риск, вы можете зашифровать базу данных, как подсказывает @Invincible. Проблема здесь заключается в том, что вам все еще нужно хранить свой пароль где-то в приложении, который с некоторыми усилиями может быть реконструирован и извлечен. Вы можете и должны использовать некоторые методы запутывания для хранения вашего пароля, но это также не дает вам 100% безопасности.

Проблема безопасности на «открытой» (взломанной) платформе заключается в том, что у вас нет доступа к любой информации, к которой у вашего злоумышленника не будет доступа. Однако вы можете значительно усложнить ситуацию злоумышленнику, применив различные методы запутывания и шифрования. Сколько усилий вы должны инвестировать? Вы должны учитывать следующие факторы:

  • риск потери ваших конфиденциальных данных <=> выигрыш злоумышленника
  • ваши усилия вы готовы инвестировать <=> сколько усилий будет потрачено злоумышленником
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...