In terms of encryption, Apple introduced several important features to make it both extremely robust and highly productive. Each iOS device has its Unique IDs (UID) and Group IDs (GID) to be used in cryptographic operations, where the UID is unique to the device and the GID is shared across all processors of the same type. These values are fused or compiled into the Secure Enclave and CPU during manufacturing; each device gets its own values that are not accessible directly by either software, firmware, or through debugging interfaces (such as JTAG). Cryptographic keys are generated inside the Secure Enclave utilizing a true (not pseudo) hardware random-number generator. In addition, a dedicated technology, called Effaceable Storage, is responsible for securely erasing saved keys once they are no longer needed.
File encryption is implemented based on the technology called Data Protection. It generates a new 256-bit AES key for each file created...