Все файлы приложений доступны пользователю, jailbroken или нет, либо в каталогах песочницы, либо в .ipa.
Что не указано в вопросе, так как db будет предварительно заполнен во время создания приложения, и если он будет доступен только для чтения или разрешит добавления/изменения. ДБ в каталоге ресурсов доступен только для чтения и должен быть скопирован в папку песочницы для записи.
Шифрование - это возможность увеличить коэффициент работы, что затрудняет получение содержимого db и препятствует любопытству, увеличивая трудности для получения доступа.
Проблема с шифрованием заключается в том, что ключ должен быть доступен для кода приложения, и нет надежного способа иметь его доступным для кода, а также не иметь его доступным для определенного и способного злоумышленника. Вам необходимо определить злоумышленника и значение данных.
Но, как указано выше, увеличение рабочего фактора может обеспечить значимую безопасность. Самый простой способ - зашифровать db и поместить ключ в исходный код и попытаться сделать его неочевидным.
Согласно вашему предложению, я могу предпочесть просто усложнить получение содержимого. Любое предложение о том, как сделать ключ неочевидным "в исходном коде? – jdleung
Злоумышленнику трудно увидеть код приложения, он зашифрован в .ipa и расшифрован для выполнения. Если у вас есть атакующий на этом уровне, Определите злоумышленника (от любопытного подростка, серьезного злоумышленника до хорошо финансируемого правительства), ценность данных (вам, владельцу контента, злоумышленнику) и ущерб пользователю и/или ваша репутация. Какой злоумышленник готов совершить в $$. – zaph
Трудно для моего уровня остановить любого злоумышленника. :-) – jdleung