Что означает код HRESULT 0x8029010E (TPMAPI_E_INVALID_ENCODING)?

 
Предыдущий Следующий
TPMAPI_E_MESSAGE_TOO_LARGE TPMAPI_E_INVALID_KEY_SIZE

TPMAPI_E_INVALID_ENCODING

Что означает TPMAPI_E_INVALID_ENCODING

TPMAPI_E_INVALID_ENCODING (0x8029010E) означает, что TPM API не распознал кодирование в переданном blob. Это не то же самое, что слишком большое сообщение или недостаток данных: размер может быть допустимым, но формат байтов не соответствует ожидаемой структуре.

Практический смысл и диагностика

Проверяйте происхождение и формат blob до криптографической операции: ошибка возникает на этапе разбора/декодирования, поэтому смена ключа или повтор команды обычно не исправляет неверно сериализованные данные.

  • Сопоставьте producer и consumer: какая TPMAPI операция создала blob, какая должна его читать и относятся ли обе стороны к совместимой версии TPM и формату структуры.
  • Проверьте длины полей, порядок байтов и version/type markers. Не передавайте Base64/текстовое представление туда, где API ожидает исходный бинарный blob.
  • Если данные прошли через файл, IPC или базу, сравните исходные bytes с полученными. При повреждении или несовместимой конвертации сформируйте blob заново поддерживаемым API вместо ручного редактирования.

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


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