У меня есть пара вопросов, касающихся защиты данных для моего приложения:
1) Мне нужно зашифровать все хранящиеся мной данные с помощью Core Data
, но я не нашел отправной точки для достижения этого. В Руководстве по программированию основных данных они говорят, что:
Core Data не дает никаких гарантий относительно безопасности постоянных хранилищ от ненадежных источников и не может определить, были ли файлы изменены злонамеренно. Магазин SQLite предлагает немного лучшую безопасность, чем XML и двоичные магазины, но он не должен считаться неотъемлемо безопасным. Обратите внимание, что вы также должны учитывать безопасность метаданных хранилища, поскольку данные, заархивированные в метаданных, могут быть изменены независимо от данных хранилища. Если вы хотите обеспечить безопасность данных, вы должны использовать такую технологию, как зашифрованный образ диска.
Это не дает мне понять, что я должен делать... Я также взглянул на Обзор безопасности Но этот документ, похоже, не имеет отношения к Core Data
. Однако они упоминают Data Protection
для защиты файлов, но я не уверен, что это то, что я действительно ищу... должен ли я использовать Data Protection
для файла SQLite
, с которым работает Core Data
?
Мне нужно некоторое руководство о том, как я могу зашифровать все сохраненные данные Core Data
, пожалуйста,
2) Если лучше хранить пароли пользователей в цепочке ключей, а не шифровать и хранить их с помощью Core Data
?
Заранее спасибо