Что означает код HRESULT 0x80290406 (TPM_E_PCP_BUFFER_TOO_SMALL)?

 
Предыдущий Следующий
TPM_E_PCP_NOT_SUPPORTED TPM_E_PCP_INTERNAL_ERROR

TPM_E_PCP_BUFFER_TOO_SMALL

TPM_E_PCP_BUFFER_TOO_SMALL: смысл кода и диагностика

TPM_E_PCP_BUFFER_TOO_SMALL — HRESULT, относящийся к области TPM/Platform Crypto Provider. Выходной буфер, переданный Platform Crypto Provider, недостаточен для запрошенных данных TPM.

Применительно к TPM_E_PCP_BUFFER_TOO_SMALL код относится к Trusted Platform Module или Platform Crypto Provider. В случае TPM_E_PCP_BUFFER_TOO_SMALL причина может находиться в политике ключа, PCR-привязке, авторизации, размере буфера или текущем состоянии TPM.

Практический вывод для TPM_E_PCP_BUFFER_TOO_SMALL: этот HRESULT фиксирует описанное условие, но сам по себе не показывает, какой участник операции первым нарушил контракт. Для TPM_E_PCP_BUFFER_TOO_SMALL найдите первый вызов, вернувший статус, и только после этого меняйте конфигурацию подсистемы TPM/Platform Crypto Provider.

Как читать имя TPM_E_PCP_BUFFER_TOO_SMALL

Имя TPM_E_PCP_BUFFER_TOO_SMALL помогает сузить поиск: PCP — технический маркер «pcp»; BUFFER — буфер; TOO — технический маркер «too»; SMALL — недостаточный размер. Эти части имени не заменяют документацию API, но позволяют проверить, что журнал и код относятся к одному и тому же условию.

Что проверить в первую очередь

Применительно к TPM_E_PCP_BUFFER_TOO_SMALL ошибка связана с размером или диапазоном. В случае TPM_E_PCP_BUFFER_TOO_SMALL разделяйте размер выделенного буфера, фактическую длину данных, требуемую длину и единицы измерения.

  • Для TPM_E_PCP_BUFFER_TOO_SMALL запишите переданный и требуемый размеры, тип счётчика и единицы — байты, символы, элементы или блоки.
  • При разборе TPM_E_PCP_BUFFER_TOO_SMALL проверьте подготовку TPM, состояние самотестирования, версию прошивки и журнал событий измеряемой загрузки.
  • При разборе TPM_E_PCP_BUFFER_TOO_SMALL не выполняйте Clear-TPM как первый шаг: это может уничтожить ключи и усложнить восстановление.
  • При разборе TPM_E_PCP_BUFFER_TOO_SMALL сравните требования операции с фактическими свойствами ключа, включая AIK, ticket и PCR binding.
  • При разборе TPM_E_PCP_BUFFER_TOO_SMALL запишите операцию PCP/TPM, имя ключа, алгоритм, политику использования, PCR-набор и размер каждого буфера.

Какие данные собрать

  • Для TPM_E_PCP_BUFFER_TOO_SMALL сохраните полный HRESULT и нижележащий TPM return code, если API его предоставляет.
  • Для TPM_E_PCP_BUFFER_TOO_SMALL проверьте операцию на новом тестовом ключе с минимальной политикой, не затрагивая рабочие защитники.
  • Для TPM_E_PCP_BUFFER_TOO_SMALL соберите tpmtool gatherlogs и системные события TPM перед изменением состояния модуля.

Проверка после изменения

Применительно к TPM_E_PCP_BUFFER_TOO_SMALL проверка исправления TPM_E_PCP_BUFFER_TOO_SMALL должна включать успешный рабочий путь, предсказуемый отказ на некорректном входе и отсутствие новых предупреждений в журналах подсистемы TPM/Platform Crypto Provider.

Ссылки по TPM_E_PCP_BUFFER_TOO_SMALL


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