Что означает код HRESULT 0x80290117 (TPMAPI_E_INVALID_PCR_DATA)?

 
Предыдущий Следующий
TPMAPI_E_INVALID_KEY_BLOB TPMAPI_E_INVALID_OWNER_AUTH

TPMAPI_E_INVALID_PCR_DATA

Причина на native boundary

Для TPMAPI_E_INVALID_PCR_DATA (0X80290117) рабочая граница — неверный / PCR / данные. Код относится к Windows TPM API, measured-boot/TCG data и TPM command preparation. Сохраняйте первый native return и identity объекта: именно они определяют, проверяется ли здесь input, capability, ownership, lifecycle или transport.

TPMAPI может отклонить structure ещё до TBS/TPM command. Поэтому format/length/PCR/key validation нельзя автоматически считать аппаратной ошибкой TPM.

Фрагменты исходного EN-описания

  • It indicates that the Platform Configuration Register data does not have a valid format or does not satisfy the requested TPM operation.
  • Verify the PCR selection, digest length, hash algorithm, and serialized structure.
  • Confirm that measured-boot data was collected for the same TPM and boot state being evaluated.
  • Regenerate PCR data through the supported TPM API instead of editing serialized values manually.

Поля корреляции

  • PCR selection/index, hash algorithm и digest length.
  • serialized PCR/event data length и boot/TPM identity.
  • точный TPM API method и первый native result.

PCR bank, digest algorithm, serialized event/blob и TPM identity должны принадлежать одному boot/operation generation; смешение корректных по отдельности данных всё равно даёт invalid input.

Проверка гипотезы

В failing trace найдите поле или state, которое непосредственно соответствует «неверный / PCR / данные». В working trace той же операции оно должно отличаться, а остальные аргументы оставаться сопоставимыми.

Проверяйте структуру и длину на границе TPM API до отправки команды. Не исправляйте serialized TPM/TCG blob вручную, если его можно заново получить через поддерживаемый API.

Завершение диагностики

Пересоздайте только отклонённую TPM/TCG structure через поддерживаемый API, сохранив тот же TPM и operation context; ручное редактирование blob не является надёжным исправлением.

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


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