Что означает код HRESULT 0x80280002 (TPM_E_BADINDEX)?

 
Предыдущий Следующий
TPM_E_AUTHFAIL TPM_E_BAD_PARAMETER

TPM_E_BADINDEX

TPM_E_BADINDEX означает, что команда выбрала индекс, недопустимый для целевого объекта TPM 1.2: определение Microsoft прямо включает PCR, DIR и другие регистры. Ошибка относится к селектору, а не к несоответствию текущего содержимого выбранного регистра.

При работе с PCR отличайте это от TPM_E_WRONGPCRVAL. TPM_E_BADINDEX означает, что вызывающая сторона не указала пригодный регистр; TPM_E_WRONGPCRVAL означает, что указанный PCR был действительным, но его измеренное значение больше не соответствовало политике или ожиданиям запечатанных данных.

Полезные проверки

  • Запишите команду, поле индекса и версию TPM, предоставляемую платформой. Не предполагайте, что все реализации имеют одинаковый набор дополнительных возможностей.
  • Проверяйте индекс по точной структуре команды и сведениям о возможностях, а не по жёстко заданной таблице из другого поколения TPM.
  • Для сериализованного запроса проверьте порядок байтов и упаковку структуры до изменения состояния TPM. Неверно сформированный селектор часто сопровождается ошибками и в других полях.

Ссылки


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