Descripción general de la protección de datos
Apple utiliza una tecnología llamada Protección de datos para proteger los datos almacenados en el almacenamiento flash en los dispositivos que cuentan con un SoC de Apple, como el iPhone, iPad, Apple Watch, Apple TV y computadoras Mac con Apple Chip. Con la protección de datos, un dispositivo puede responder ante eventos habituales, como las llamadas de teléfono entrantes, y al mismo tiempo proporcionar un alto nivel de encriptación para los datos del usuario. Algunas apps del sistema (como Mensajes, Mail, Calendario, Contactos, Fotos) y los valores de los datos de Salud usan la protección de datos de forma predeterminada. Las apps de terceros reciben esta protección automáticamente.
Implementación
La protección de datos se implementa mediante la creación y administración de una jerarquía de claves y se basa en las tecnologías de encriptación de hardware integradas en los dispositivos Apple. La protección de datos se controla por archivo, asignando cada archivo a una clase. La accesibilidad se determina dependiendo de si se han desbloqueado o no las claves de la clase. Apple File System (APFS) permite que el sistema de archivos subdivida aún más las claves según la extensión (donde diferentes porciones de un archivo pueden tener diferentes claves).
Cada vez que se crea un archivo en el volumen de datos, la función de protección de datos crea una nueva clave de 256 bits (la clave por archivo) y se la proporciona al motor AES de hardware, que utiliza la clave para encriptar el archivo mientras se escribe en la memoria flash. En dispositivos con chips del A14 al A17 y del M1 al M3, la encriptación utiliza AES-256 en modo XTS, donde la clave de archivo de 256 bits pasa por una función de derivación de clave (Publicación especial NIST 800-108) para derivar una modificación de 256 bits y una clave de encriptado de 256 bits. En dispositivos con chips del A9 al A13 y del S5 al S9, la encriptación utilizan AES-128 en modo XTS, donde la clave de archivo de 256 bits se divide para proporcionar una modificación de 128 bits y una clave de encriptado de 128 bits.
En una Mac con Apple Chip, la protección de datos se configura de forma predeterminada como Clase C (véase Clases de protección de datos) pero utiliza una clave de volumen en lugar de una clave por archivo o por extensión, recreando efectivamente el modelo de seguridad de FileVault para los datos del usuario. Los usuarios aún pueden optar por usar FileVault para recibir la protección completa que conlleva entrelazar la jerarquía de claves de encriptado con su contraseña, y los desarrolladores también pueden optar por usar una clase de protección más alta que utilice una clave por archivo o por extensión.