Шифрование файловой системы для IOS?

Я знаю в Mac OS, мы можем использовать Macfuse для записи файловой системы в пользовательском пространстве, мы можем создать шифрование в ящике. Я не знаю, что на IOS есть фреймворк, библиотека, такая как FUSE, Macfuse, что я могу написать свою файловую систему для файла шифрования/дешифрования (возможно монтирование в каталоге/папке). Может ли кто-нибудь указать мне на решение?

Ответ 1

Что касается встроенной поддержки iOS, существует множество опций, варьирующихся от каждого файла для шифрования всей песочницы вашего приложения. Я предлагаю вам прочитать Защита данных с использованием шифрования на диске в Руководстве по программированию приложений iOS.

Все эти параметры, однако, требуют, чтобы пользователь установил пароль на устройстве. Старые устройства могут не поддерживать шифрование файловой системы.

Один из вариантов, не упомянутых в этой документации, заключается в том, чтобы установить значение DataProtectionClass на NSFileProtectionComplete. Это автоматически защитит все файлы в песочнице вашего приложения.

Наконец, я предлагаю вам посмотреть видео WWDC 2011 Защита приложений iOS ( "Защита данных приложений" на странице видео Apple) и услышать напрямую от инженеров Apple о лучших практиках. Это видео охватывает практически все, что предлагает Apple.

изменить:

По словам людей на форумах dev, право DataProtectionClass может работать некорректно в текущих версиях iOS.

Ответ 2

Вы можете установить атрибут NSFileProtection в файл, чтобы он был зашифрован с использованием ключа, полученного из пароля пользователя.