Es el reino encryption por defecto en iOS

No he podido determinar si Realm está encriptado de forma pnetworkingeterminada en iOS. ¿Alguien me puede ayudar a entender?

Desde la sección Documentación del reino sobre Uso de Realm con la actualización de la aplicación de background :

En iOS 8 y superior, los files dentro de las aplicaciones se cifran automáticamente utilizando NSFileProtection siempre que el dispositivo está bloqueado. Si su aplicación intenta realizar cualquier trabajo relacionado con Realm mientras el dispositivo está bloqueado y los attributes de NSFileProtection de sus files de Realm están configurados para cifrarlos (que es el caso de manera pnetworkingeterminada) , un NSFileProtection open() failed: Operation not permitted lanzará una exception de open() failed: Operation not permitted .

Más allá de ese reino trae su propio soporte de encriptación de files nativos.

Realm admite cifrar el file de la database en el disco con AES-256 + SHA2 al proporcionar una key de encryption de 64 bytes al crear un reino.

 // Generate a random encryption key let key = NSMutableData(length: 64)! SecRandomCopyBytes(kSecRandomDefault, key.length, UnsafeMutablePointer<UInt8>(key.mutableBytes)) // Open the encrypted Realm file let config = Realm.Configuration(encryptionKey: key) do { let realm = try Realm(configuration: config) // Use the Realm as normal let dogs = realm.objects(Dog).filter("name contains 'Fido'") } catch let error as NSError { // If the encryption key is wrong, `error` will say that it's an invalid database fatalError("Error opening realm: \(error)") } 

Esto hace que todos los datos almacenados en el disco se cifren y descifren de forma transparente con AES-256 según sea necesario, y se verifiquen con una HMAC SHA-2. La misma key de encryption debe proporcionarse cada vez que obtenga una instancia de Realm.