Windows 11 требует TPM. Зачем?

Постараюсь коротко объяснить какие преимущества он даёт и зачем Microsoft решили начать его требовать.

Что такое вообще TPM? Если коротко, то изначально TPM это специальный выделенный чип на материнской плате ноутбука или ПК. Его предназначение это хранение и работа с криптографическим материалом.

Если упростить, то типичный криптомодуль, которым является TPM, может делать всего несколько операций:

  • Генерировать и хранить секретные ключи
  • Шифровать и расшифровывать любые данные
  • Подписывать и верифицировать запросы на электронную подпись

Отсюда следует, что подобные криптомодули не могут физически выдать вам секретный ключ или ключи.

Тут-то мы и получаем основное преимущество. Обычно все секретные ключи хранятся непосредственно в файловой системе вашего ПК, где-то на диске C:, а в случае с TPM они генерируются и хранятся исключительно внутри него.

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

При использовании TPM такой трюк не пройдет. Что-то расшифровать, подписать — пожалуйста, но сам ключ не отдаст.

Возможно кто-то из вас по работе встречался с красными «флешками» Рутокен. Это и есть типичный криптомодуль, правда переносной. Он обладает теми же качествами, что я перечислил выше.

Внимательный читатель может задаться вопросом: а зачем злоумышленику тогда сам секретный ключ, если он сможет просто просить модуль расшифровать или подписать что ему нужно?

Причин по сути две:

  • Обладание ключом позволит производить операции с ним, даже когда ваш компьютер выключен или не подключен к интернету. Украл ключ, отправил куда надо и можно забыть о жертве, она уже в кармане.
  • Современные TPM при запросе на операцию расшифровывания или подписи обычно требуют действие от пользователя. В Windows для этого предусмотрена технология Windows Hello. Таким образом как только какое-то приложение хочет к примеру расшифровать (или подписать) вашим ключом какое-то сообщение, Windows сначала запросит PIN, пароль или биометрическую информацию (отпечаток пальца или скан лица). Прошу заметить, что описанная защита реализована аппаратно на уровне TPM и её нельзя обойти на софтверном уровне.

Хорошо, а на практике зачем этот TPM нужен? Жили без него раньше и не тужили.

Давайте приведу очевидный пример использования криптомодуля в современной технике. За пример я возьму современный смартфон, потому что практически во всех современных смартфонах есть выделенный для этого чип.

Все мы скорее всего так или иначе пользуемся онлайн-банкингом и думаю все имели дело с биометрической авторизацией при входе в приложение.

Объясню на пальцах как работает механизм входа:

  1. Приложение делает запрос на сервер и просит прислать сервер случайную строку.
  2. Телефон делает запрос в криптомодуль с просьбой подписать электронной подписью эту случайную строку.
  3. Криптомодуль отвечает, что без биометрической авторизации никакой подписи не будет.
  4. Пользователь прикладывает палец / показывает лицо и в случае успеха криптомодуль возвращает готовую подпись.
  5. Приложение делает повторный запрос на сервер и прикладывает подпись.
  6. Сервер верифицирует, что подпись выписана именно вашим криптомодулем (который был зарегистрирован у них на сервере во время регистрации в приложении).

Как можно увидеть, приложение всё это время не имеет ни малейшего понятия о секретном ключе, хранимом внутри чипа. Безопасно? Безопасно. Кстати напомню, в Windows 11 можно будет запускать Android-приложения, которые скорее всего смогут также как и на смартфонах пользоваться TPM.

Второй пример: BitLocker. Эта технология позволяет полностью зашифровать системный раздел, при этом учитывая аппаратное ускорение AES-шифрования в современных процессорах и быстрые SSD диски, производительность в таких системах практически не падает. На многих современных ноутбуках с предустановленной Windows 10, BitLocker включен по умолчанию.

Как можно понять ключ для расшифровки хранится не в ФС вашего ПК, а опять же в TPM. Безопасно? Безопасно. Можно даже попросить BitLocker запрашивать PIN или пароль ещё до запуска операционной системы.

Современные ноутбуки сейчас вовсю оснащаются Windows Hello, а именно камерами с поддержкой распознавания лица и дактилоскопическими сканерами.

К счастью все ноутбуки выпущенные и сертифицированные для работы с Windows 10 уже имеют модуль TPM 2.0 на борту.

Пользователям стационарных ПК в 90% случаев понадобится просто включить fTPM (Firmware TPM). Это TPM, который эмулируется вашим процессором AMD или Intel. То есть ключи будут хранится не в специальном чипе, а где-то внутри центрального процессора. И да, это всё ещё намного безопасней, чем где-то в файловой системе.

Поэтому отставить панику. Если ваш компьютер 2015 года выпуска и позже, то с очень высокой вероятностью у вас всё в порядке и максимум потребуется пара манипуляций в BIOS в вашей материнской платы.

Надеюсь было интересно, спрашивайте вопросы, поправляйте, если где приврал или опечатался.

 

Источник

Читайте также