Обзор шифрования и защиты данных
Безопасная последовательность загрузки, а также функции обеспечения безопасности системы и приложений помогают следить за тем, чтобы на устройстве запускались только надежные приложения и фрагменты кода. В устройствах Apple также реализованы дополнительные функции шифрования для защиты данных пользователей даже в случае компрометации других частей системы безопасности (например, в случае пропажи устройства или запуска ненадежного кода). Все эти функции имеют большое значение для пользователей и ИТ-администраторов, поскольку они обеспечивают защиту личной и корпоративной информации, а также предоставляют средства для мгновенного и полного удаленного стирания в случае потери или кражи устройства.
На iPhone и iPad используется технология шифрования файлов, также именуемая функцией защиты данных, а для защиты данных на Mac с процессором Intel применяется технология шифрования томов под названием FileVault. На компьютерах Mac с чипом Apple используется гибридная модель, которая поддерживает технологию защиты данных, но с двумя оговорками. Самый низкий уровень защиты (класса D) не поддерживается, а используемый по умолчанию уровень защиты (класса C) использует ключ тома и работает так же, как и FileVault на Mac с процессором Intel. Во всех случаях основой иерархии ключей является специализированный процессор Secure Enclave, а выделенный модуль AES поддерживает шифрование на полной скорости и позволяет не раскрывать долговременные ключи шифрования ядру операционной системы или центральному процессору (где они могут быть скомпрометированы). (Для защиты ключей шифрования FileVault на Mac с процессором Intel и чипом T1 или без Secure Enclave не используется специализированный чип.)
Помимо использования функции защиты данных и FileVault, которые помогают предотвратить несанкционированный доступ к данным, ядра операционной системы Apple также обеспечивают защиту и безопасность. Ядро использует средства контроля доступа, чтобы помещать приложения в песочницу (что ограничивает доступ приложения к данным на основе установленных критериев). Ядро также использует механизм, который называется Data Vault (вместо того чтобы ограничивать запросы, которые может делать приложение, этот механизм ограничивает доступ к данным, которые находятся в одном приложении, но запрашиваются другим).