Компания Canonical анонсировала появление в осеннем выпуске Ubuntu 23.10 экспериментальной поддержки шифрования дисков, не требующего ввода пароля разблокировки диска при загрузке, благодаря хранению информации для расшифровки ключей в TPM (Trusted Platform Module). Автоматическая разблокировка зашифрованного диска в привязке к аппаратному обеспечению и верифицированной загрузке упрощает внедрение шифрования дисков в корпоративных и совместно используемых системах, а также на удалённых серверах, на которых нет возможности после каждой перезагрузки вручную вводить пароль.
От ранее предлагавшейся в Ubuntu поддержки полнодискового шифрования, реализация на базе TPM отличается использованием архитектуры, задействованной в проекте Ubuntu Core. В инсталляторе предоставлена возможность выбора старого режима полнодискового шифрования, требующего ввода пароля, и нового режима, хранящего данные для расшифровки ключей в TPM. При выборе нового режима, загрузчик GRUB и ядро Linux поставляются в пакетах в формате snap, а управление шифрованием диска осуществляется при помощи специального агента в Snapd (при выборе старого режима GRUB и ядро устанавливаются из традиционных deb-пакетов).
В новой реализации полнодискового шифрования вместо автоматической генерации конфигурации загрузчика на локальной системе, логика выбора режима загрузки и ядра в GRUB задаётся в заранее определённой дистрибутивом конфигурации, передаваемой Snapd. Ядро Linux оформлено в виде унифицированного образа ядра UKI (Unified Kernel Image), объединяющего обработчик для загрузки ядра из UEFI (UEFI boot stub), образ ядра Linux и загружаемое в память системное окружение initrd, применяемое для начальной инициализации на стадии до монтирования корневой ФС. UKI-образ скомпонован в виде одного исполняемого файла в формате PE и заверен цифровой подписью. При вызове данного образа из UEFI обеспечивается проверка целостности и достоверности ядра и содержимого initrd как единого целого. Помимо ядра и загрузчика все остальные компоненты системного окружения остаются как в классическом Ubuntu.
Доступ к хранимым в TPM параметрам расшифровки осуществляется на стадии ранней загрузки и только из специально авторизированного образа initrd, заверенного цифровой подписью дистрибутива. Утверждается, что задействованная схема уже два года применяется в Ubuntu Core и обеспечивает должную защиту данных в случае кражи устройства или совершения атак на оставленное без присмотра оборудование. Возможность загрузки только верифицированного системного окружения достигается через применение UEFI Secure Boot. В случае внесения изменений в начальный загрузочный UKI-образ и нарушения цепочки верифицированной загрузки, TPM не позволит получить доступ к ключу, применяемому для расшифровки.