Что означает код HRESULT 0x8028002C (TPM_E_BAD_MODE)?

 
Предыдущий Следующий
TPM_E_BAD_DATASIZE TPM_E_BAD_PRESENCE

TPM_E_BAD_MODE

Где возник отказ

Значение 0X8028002C возникает на границе TPM 1.2 command decoder, authorization and state machine; конкретная проверка для этого случая — некорректный / режим. Диагностику начинайте с producer, object generation и входного state, а не с последнего пользовательского сообщения.

TPM 1.2 использует stateful resources, authorization sessions, locality и strict binary structures; поздний provider message часто теряет конкретное поле, которое отклонил TPM.

Конкретные признаки из исходного EN-описания

  • It specifically answers whether a mode selector is outside the legal values for the specific TPM 1.2 command and sub-operation.
  • In contrast, TPM_E_BAD_VERSION rejects a capability version; it rejects a mode or selector value.
  • To remediate it, use the mode enumeration defined for that exact command rather than reusing a similarly named flag from another structure.
  • The one-variable check is to replace only the mode selector with a documented value for the same command and device version.

Диагностический снимок

  • TPM 1.2 ordinal и handle/session generation.
  • ключ/структура/flags/algorithm fields, проверяемые командой.
  • authorization/locality/state и первый raw response.

Перед clear, ownership change, NV rewrite или key deletion сохраните состояние и минимальный failing command: destructive recovery может уничтожить evidence и защищённые данные.

Как отделить соседний код

Сравните failing и working trace той же операции. Поле или state, соответствующий «некорректный / режим», должен быть единственным существенным отличием.

Сопоставьте отклонённое поле «некорректный / режим» с TPM 1.2 structure/command contract. Не исправляйте сразу authorization, ownership и key template: это разные проверки.

Критерий восстановления

Исправьте только prerequisite «некорректный / режим» — structure, key/session, authorization, locality или persistent state — и повторите исходный TPM 1.2 command на контролируемом устройстве.

Технические ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.