File system encryption for IOS?

The Bird picture The Bird · Apr 4, 2012 · Viewed 12.8k times · Source

I know on Mac OS,we can use Macfuse for write a file system in user space,we can create a box encryption. I don't know on IOS has a framework,library like FUSE,Macfuse that i can write my file system for encryption/decryption file (possible mount on a directory/folder). Can anyone point me a solution?

Answer

Mike Weller picture Mike Weller · Apr 4, 2012

As for built-in iOS support, there are a number of options, varying from a per-file basis to encrypting the entire sandbox of your app. I suggest you read Protecting Data Using On-Disk Encryption in the iOS App Programming Guide.

All of these options, however, require the user to have a passcode set on the device. Older devices may not support file system encryption.

One of the options not mentioned in this documentation is to set the DataProtectionClass entitlement value to NSFileProtectionComplete. This will automatically protect all the files in your app's sandbox.

Finally, I suggest you watch the WWDC 2011 Video Securing iOS Applications ("Securing Application Data" on Apple's video page) and hear directly from Apple engineers about the best practices. This video covers pretty much everything that Apple offers.

edit:

According to people on the dev forums, the DataProtectionClass entitlement may not be working correctly in current iOS versions.