CKRecordZone.EncryptionScope.perZone
Zone uses per-zone encryption keys for encrypted values across all records and the zone-wide share, if present.
Declaration
case perZoneDiscussion
This is an optional optimization that can reduce the overall storage used by encryption keys in a zone. Note that:
Record zones using per-zone encryption only support zone-wide sharing.
Encryption scope can only be assigned at zone creation and cannot be changed for the lifetime of the zone.
The server does not return zones using per-zone encryption to device OS versions older than the corresponding API availability version.
An older OS trying to overwrite an existing zone using per-zone encryption due to a naming collision results in a
.serverRejectedRequesterror.On device OS upgrade, your application is responsible for fetching database changes via
CKFetchDatabaseChangesOperationwith a nil sync token to verify it has received all the zones available to it from the server.