| Предыдущий | Следующий |
| TPM_E_KEY_OWNER_CONTROL | TPM_E_NOT_FULLWRITE |
TPM_E_BAD_COUNTER
Объект и состояние
Этот HRESULT 0X80280045 фиксирует условие некорректный / counter в подсистеме TPM 1.2 command decoder, authorization and state machine. Для корректного сравнения нужны один и тот же API, сопоставимый object state и первый возврат до recovery.
Key, delegation, DAA, migration и NV ошибки относятся к разным state machines TPM 1.2; одинаковый facility не делает их одним классом причины.
Конкретные признаки из исходного EN-описания
counter handle, label, creation and release history, owner state, saved application mapping, and whether the TPM was cleared.
Run this focused check: enumerate current counter information and create a disposable counter instead of trusting a persisted handle.
The supported direction is to refresh the counter handle after lifecycle changes and store a stable application identifier separately.
The practical distinction is that TPM_E_BAD_HANDLE is broader; it identifies the monotonic-counter namespace.
Минимальный trace
- TPM 1.2 ordinal и handle/session generation.
- ключ/структура/flags/algorithm fields, проверяемые командой.
- authorization/locality/state и первый raw response.
TPM 1.2 использует stateful resources, authorization sessions, locality и strict binary structures; поздний provider message часто теряет конкретное поле, которое отклонил TPM.
Причинная граница
Сделайте минимальный before/after test для «некорректный / counter» и не меняйте одновременно policy, input и lifecycle-state: такой recovery не доказывает причинную связь.
Сопоставьте отклонённое поле «некорректный / counter» с TPM 1.2 structure/command contract. Не исправляйте сразу authorization, ownership и key template: это разные проверки.
Подтверждение результата
Исправьте только prerequisite «некорректный / counter» — structure, key/session, authorization, locality или persistent state — и повторите исходный TPM 1.2 command на контролируемом устройстве.
Технические ссылки
- Microsoft: Resource Virtualization in TBS.
- Microsoft: Command Scheduling in TBS.
- Microsoft: Using TPM Base Services.
- TCG: TPM 1.2 Part 3 — Context commands.
Нужно найти другой код? Найти другой код состояния или ошибки.