Descripción general de Protección de datos
Apple usa una tecnología llamada Protección de datos para proteger los datos almacenados en el almacenamiento flash de los dispositivos que tienen un SoC de Apple, como los iPhone, iPad, Apple Watch, Apple TV y los ordenadores Mac con chip de Apple. 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 de usuario. Algunas apps del sistema (como Mensajes, Mail, Calendario, Contactos y Fotos) y los valores de los datos de la app Salud utilizan Protección de datos por defecto. Las apps de terceros reciben esta protección automáticamente.
Implementación
Protección de datos se implementa mediante la creación y gestión de una jerarquía de claves, y se basa en las tecnologías de encriptación de hardware integradas en los dispositivos Apple. Protección de datos se controla por archivo, asignando cada archivo a una clase. La accesibilidad se determina en función de si las claves de clase se han desbloqueado o no. El sistema de archivos de Apple (APFS) permite al sistema de archivos subdividir las claves aún más por área (donde distintas partes de un archivo pueden tener claves diferentes).
Cada vez que se crea un archivo en el volumen de datos, 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 como si se escribiese en el almacenamiento flash. En los dispositivos A14 a A17, M1 y M2, la encriptación usa AES-256 en modo XTS, donde la clave “por archivo” de 256 bits pasa por una función de derivación de clave (publicación especial del NIST 800-108) para obtener una clave de ajuste de 256 bits y una clave de cifrado de 256 bits. En los dispositivos A9 a A13 y S5 a S9, la encriptación utiliza AES-128 en modo XTS, donde la clave “por archivo” de 256 bits se divide para proporcionar una clave de ajuste de 128 bits y una clave de cifrado de 128 bits.
En un Mac con chip de Apple, Protección de datos establece por defecto la clase C (consulta Clases de Protección de datos) pero utiliza una clave de volumen en lugar de una clave por archivo o por área, de forma que vuelve a crear el modelo de seguridad de FileVault para los datos del usuario. Los usuarios aún deben aceptar el uso de FileVault para recibir la máxima protección al vincular la jerarquía de claves de encriptación con su contraseña. Los desarrolladores también pueden optar por una clase de protección superior que utiliza una clave por archivo o por área.