Открыть сервис

Trusted Platform Module

Trusted Platform Module (TPM, доверенный платформенный модуль) — это специализированный криптографический микроконтроллер, предназначенный для обеспечения аппаратной защиты конфиденциальных данных, аутентификации устройств и контроля целостности вычислительной системы. TPM представляет собой отдельный чип, встраиваемый в материнскую плату компьютера или интегрируемый в центральный процессор, который реализует функции безопасного хранения ключей шифрования, генерации случайных чисел и измерения состояния загружаемого программного обеспечения.

История

Разработка спецификации

Первая версия спецификации TPM была разработана консорциумом Trusted Computing Group (TCG), основанным в 2003 году компаниями AMD, Hewlett-Packard, IBM, Intel и Microsoft. Целью создания модуля было повышение безопасности персональных компьютеров за счёт аппаратной поддержки криптографических операций, недоступной для программных атак.

В 2005 году вышла версия TPM 1.1b, а в 2006 году — TPM 1.2, которая стала широко распространённой. Она включала поддержку алгоритмов RSA, SHA-1 и HMAC. В 2014 году была опубликована спецификация TPM 2.0, которая расширила функциональность модуля, добавив поддержку алгоритмов ECC, SHA-256, AES и других, а также улучшила управление ключами и совместимость с различными операционными системами.

Внедрение в массовые устройства

Начиная с 2010-х годов TPM стал обязательным компонентом для многих корпоративных ноутбуков и рабочих станций. В 2016 году Microsoft объявила, что для работы Windows 10 с поддержкой функций безопасности (например, BitLocker и Windows Hello) требуется наличие TPM 2.0. В 2021 году Microsoft ужесточила требования для Windows 11, сделав TPM 2.0 обязательным условием для установки операционной системы.

Устройство и принцип работы

Аппаратная архитектура

TPM представляет собой автономный микроконтроллер, содержащий:

  • ЦПУ — процессор, выполняющий криптографические операции (RSA, ECC, AES, SHA-256 и др.).
  • ПЗУ — постоянное запоминающее устройство, хранящее прошивку модуля.
  • ОЗУоперативная память для временного хранения данных.
  • Энергонезависимая память (NVRAM) — для хранения ключей, сертификатов и конфигурации модуля.
  • Генератор случайных чисел (RNG) — аппаратный источник истинной случайности.
  • Интерфейсы — шины LPC, SPI, I²C для связи с материнской платой.

Основные функции

TPM выполняет следующие криптографические операции:

Измерение целостности

TPM реализует механизм «доверенной загрузки» (Trusted Boot). При включении компьютера модуль измеряет хеш-суммы компонентов загрузчика, ядра операционной системы и драйверов. Эти значения сохраняются в регистрах конфигурации платформы (PCR). Если какая-либо стадия загрузки была изменена (например, вредоносным ПО), TPM фиксирует несоответствие и может блокировать доступ к зашифрованным данным.

Классификация

По типу реализации

  • Дискретный TPM — отдельный микросхема, припаянная к материнской плате. Обеспечивает максимальную безопасность, так как изолирован от основной системы.
  • Интегрированный TPM (fTPM) — реализован в прошивке центрального процессора (например, AMD PSP, Intel ME). Занимает меньше места, но теоретически уязвим для атак на уровне процессора.
  • Программный TPM — эмуляция модуля на уровне операционной системы. Используется для тестирования, но не обеспечивает аппаратной защиты.

По версии спецификации

  • TPM 1.2 — устаревшая версия, поддерживает только RSA и SHA-1. Несовместима с Windows 11.
  • TPM 2.0 — современная версия, поддерживает ECC, AES, SHA-256. Обязательна для Windows 11 и современных дистрибутивов Linux.

Применение

Шифрование дисков (BitLocker, LUKS)

TPM используется для хранения ключей полнодискового шифрования. При загрузке системы модуль проверяет целостность загрузчика и, если она не нарушена, расшифровывает ключ. Это защищает данные от кражи при физическом доступе к устройству.

Аутентификация пользователей

Windows Hello и аналогичные системы используют TPM для хранения биометрических шаблонов и ключей аутентификации. Пароли и PIN-коды могут быть заменены аппаратными ключами, генерируемыми модулем.

Защита от вредоносного ПО

TPM предотвращает атаки на загрузчик (bootkits) и руткиты, так как любое изменение загрузочных файлов фиксируется модулем. Это делает невозможным скрытое внедрение вредоносного кода на ранних этапах загрузки.

Цифровые подписи и сертификаты

TPM может использоваться для создания и хранения закрытых ключей, используемых в электронной подписи документов, электронной почте (S/MIME) и VPN-соединениях (IPsec).

Криптовалюты и блокчейн

В некоторых системах TPM применяется для хранения приватных ключей криптовалютных кошельков, что повышает их устойчивость к взлому.

Критика и ограничения

Уязвимости

Несмотря на высокую степень защиты, TPM не является абсолютно неуязвимым. Известны случаи:

  • Атаки на шину LPC — перехват данных между TPM и материнской платой (например, с использованием логического анализатора).
  • Атаки на прошивку — эксплуатация уязвимостей в коде модуля (например, в TPM 1.2 обнаружена проблема с генерацией случайных чисел).
  • Физические атаки — снятие модуля с платы и анализ его содержимого с помощью электронного микроскопа.

Проблемы совместимости

TPM 2.0 не обратно совместим с TPM 1.2, что создаёт сложности при обновлении старых систем. Кроме того, не все материнские платы поддерживают fTPM, а некоторые реализации (например, AMD fTPM) вызывают проблемы с производительностью или стабильностью.

Вопросы конфиденциальности

Критики указывают, что TPM может использоваться для реализации DRM (цифровых ограничений) и контроля над пользователем. Например, система может проверять, не была ли изменена операционная система, и блокировать доступ к определённым сервисам.

Интересные факты

  • В 2021 году из-за дефицита полупроводников поставки TPM-модулей были ограничены, что привело к росту цен на рынке.
  • В России TPM не является обязательным требованием для сертификации средств криптографической защиты информации (СКЗИ), однако используется в некоторых отечественных разработках.
  • TPM 2.0 поддерживает до 24 регистров PCR, что позволяет измерять до 24 различных компонентов системы.

Источники

  • Trusted Computing Group. «TPM 2.0 Library Specification». 2014.
  • Microsoft. «Windows 11 System Requirements». 2021.
  • National Institute of Standards and Technology (NIST). «NIST SP 800-155: Guidelines for the Use of TPM». 2012.
  • Intel Corporation. «Intel Platform Trust Technology (Intel PTT)». 2020.
  • AMD. «AMD Platform Security Processor (PSP)». 2019.
  • Wikipedia. «Trusted Platform Module». 2023.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →