TPM (Trusted Platform Module, доверенный платформенный модуль) — отдельный чип безопасности или компонент прошивки, который безопасно генерирует и хранит криптографические ключи и записывает измерения процесса загрузки.
Как работает TPM
TPM описан спецификациями Trusted Computing Group и стандартизирован как ISO/IEC 11889. Он бывает отдельной микросхемой на материнской плате, прошивкой в защищённой среде процессора (fTPM, Intel PTT) или блоком, встроенным в CPU, как Microsoft Pluton. Основные функции:
- Защита ключей — ключи создаются внутри TPM, и их закрытые части никогда не покидают его в открытом виде.
- Измеряемая загрузка — хеши прошивки UEFI, загрузчика и ядра записываются в регистры конфигурации платформы (PCR).
- Запечатывание (sealing) — секрет выдаётся только если PCR показывают ожидаемую, неизменённую цепочку загрузки.
- Аттестация — устройство может доказать удалённому серверу своё состояние загрузки.
- аппаратный генератор случайных чисел и защита от подбора PIN-кода.
Почему TPM важен
На TPM опираются многие функции безопасности: полнодисковое шифрование BitLocker хранит в нём ключ, Windows Hello защищает с его помощью учётные данные, а компании используют его для проверки состояния устройств. Microsoft сделала TPM 2.0 обязательным требованием Windows 11. Поскольку модуль измеряет ранний код загрузки, он помогает выявлять буткиты и подмену прошивки.
Неуязвимым TPM не является. Уязвимость ROCA (2017) в генерации RSA-ключей Infineon давала ключи, поддающиеся факторизации; атака TPM-Fail (2019) извлекала ключи через временные сторонние каналы, а исследователи не раз перехватывали ключи BitLocker с шины между дискретным TPM и процессором на ноутбуках без PIN-кода перед загрузкой.
Рекомендации
- Обновлять прошивку TPM вместе с BIOS/UEFI.
- На ноутбуках с ценными данными сочетать TPM с PIN-кодом перед загрузкой.
- Использовать аттестацию в политиках соответствия устройств.