# Проверка TPM 2.0

> Без модуля TPM 2.0 Cartoo не запустится. Как проверить, есть ли он на ноутбуке, и как его включить.

Cartoo требует наличия модуля **TPM 2.0** на машине, где он запускается. Без
него программа не стартует. Проверьте это до выезда к автомобилю, а не после.

На большинстве ноутбуков, выпущенных с 2016 года, TPM 2.0 есть, но на многих
он поставляется **выключенным в прошивке UEFI**. Поэтому «не найден» обычно
означает «отключён», а не «отсутствует».

:::note
Скриншоты ниже сняты на английской Windows. На русской системе названия
пунктов переведены, расположение то же.
:::

## Самый быстрый способ

Нажмите <kbd>Win</kbd> + <kbd>R</kbd>, введите `tpm.msc`, нажмите <kbd>Enter</kbd>.

![Диалог «Выполнить» с введённым tpm.msc](../../../../assets/shared/tpm-run-dialog.png)

Откроется консоль управления TPM. Важны два места: **Status** («Состояние»)
вверху и **Specification Version** («Версия спецификации») в нижней строке.

![Консоль TPM: Status — «The TPM is ready for use», Specification Version — 2.0](../../../../assets/shared/tpm-msc.png)

- **«The TPM is ready for use»** и в разделе *TPM Manufacturer Information*
  **Specification Version: 2.0** — всё в порядке.
- **Specification Version: 1.2** — модуль слишком старый. Обновить его нельзя.
- **«Compatible TPM cannot be found»** — либо отключён в UEFI, либо
  отсутствует. Переходите к разделу [Как включить](#как-включить).

## Из терминала

Удобно, когда ответ нужен в скрипте или по удалённому подключению.

`tpmtool` входит в состав Windows и выводит всё сразу:

```powershell
tpmtool getdeviceinformation
```

<!-- Источник: Wikimedia Commons, «TPMTOOL GetDeviceInformation with TPM 2.0 on
     Windows 11 screenshot», автор VulcanSphere. Public domain. -->

![Вывод tpmtool getdeviceinformation: TPM Present: True и TPM Version: 2.0](../../../../assets/shared/tpm-tpmtool.webp)

Значение имеют две строки: `TPM Present: True` и `TPM Version: 2.0`.
(`TPM Spec Version` ниже — другое число, это ревизия самой спецификации 2.0,
которую реализует чип. Её игнорируйте.)

В PowerShell есть отдельный командлет:

```powershell
Get-Tpm
```

Смотрите на три поля: `TpmPresent : True`, `TpmReady : True` и
`ManufacturerVersion`. Чтобы прочитать версию спецификации напрямую:

```powershell
Get-CimInstance -Namespace root/cimv2/security/microsofttpm -ClassName Win32_Tpm |
  Select-Object -ExpandProperty SpecVersion
```

На исправной машине вывод начинается с `2.0`.

## Через интерфейс Windows

**Параметры → Конфиденциальность и защита → Безопасность Windows → Безопасность
устройства → Обработчик безопасности → Сведения об обработчике безопасности.**
В поле *Версия спецификации* должно быть 2.0.

Если раздела *Обработчик безопасности* на этой странице вообще нет, значит TPM
отключён в прошивке.

## Как включить

Настройка находится в UEFI, и у каждого производителя она называется по-своему:

- **Intel** — *Intel Platform Trust Technology* или *Intel PTT*
- **AMD** — *AMD fTPM* или *AMD Platform Security Processor*
- **Общие названия** — *Security Device Support*, *TPM Device*,
  *Trusted Computing*

Перезагрузитесь, войдите в UEFI (обычно <kbd>F2</kbd>, <kbd>Del</kbd> или
<kbd>F10</kbd> при старте — нужная клавиша указана на заставке производителя),
найдите настройку на вкладке *Security* или *Advanced*, включите её, сохраните
и выйдите.

:::caution
Если на машине уже включён BitLocker, изменение настроек TPM может перевести
диск в режим восстановления. Держите ключ восстановления BitLocker под рукой,
прежде чем лезть в UEFI.
:::

После этого повторите проверку через `tpm.msc`. Если модуль по-прежнему не
найден — на ноутбуке нет TPM 2.0, и запускать на нём Cartoo не получится.