| Предыдущий | Следующий |
| TPMAPI_E_INVALID_KEY_SIZE | TPMAPI_E_INVALID_KEY_PARAMS |
TPMAPI_E_ENCRYPTION_FAILED
Как диагностировать TPMAPI_E_ENCRYPTION_FAILED
TPMAPI_E_ENCRYPTION_FAILED — HRESULT, относящийся к области TPM Base Services API. Операция шифрования через Windows TPM API завершилась неудачей: предоставленные ключ, данные, параметры алгоритма или политика не позволили выполнить преобразование.
Для TPMAPI_E_ENCRYPTION_FAILED этот HRESULT возвращён обвязкой TPM API. Применительно к TPMAPI_E_ENCRYPTION_FAILED следует различать ошибку сериализации/шифрования параметров и статус, пришедший непосредственно от TPM.
Практический вывод для TPMAPI_E_ENCRYPTION_FAILED: этот HRESULT фиксирует описанное условие, но сам по себе не показывает, какой участник операции первым нарушил контракт. Для TPMAPI_E_ENCRYPTION_FAILED найдите первый вызов, вернувший статус, и только после этого меняйте конфигурацию подсистемы TPM Base Services API.
Как читать имя TPMAPI_E_ENCRYPTION_FAILED
Имя TPMAPI_E_ENCRYPTION_FAILED помогает сузить поиск: ENCRYPTION — технический маркер «encryption»; FAILED — неуспешное выполнение. Эти части имени не заменяют документацию API, но позволяют проверить, что журнал и код относятся к одному и тому же условию.
Практическая диагностика
Для TPMAPI_E_ENCRYPTION_FAILED статус относится к криптографическому материалу или его представлению. Применительно к TPMAPI_E_ENCRYPTION_FAILED сверяйте алгоритм, назначение ключа, кодировку и поставщика как единую комбинацию.
- Для TPMAPI_E_ENCRYPTION_FAILED проверьте происхождение ключа/сертификата, выбранный алгоритм и точный формат входного блока.
- При разборе TPMAPI_E_ENCRYPTION_FAILED повторите операцию на новом контексте после завершения текущих запросов к TPM.
- При разборе TPMAPI_E_ENCRYPTION_FAILED запишите вызываемую функцию TPM API, состояние контекста, размеры буферов и исходный вложенный статус.
- При разборе TPMAPI_E_ENCRYPTION_FAILED проверьте совместимость версии Windows, TPM Base Services и прошивки TPM.
- При разборе TPMAPI_E_ENCRYPTION_FAILED не очищайте TPM до получения журналов и проверки того, что проблема действительно относится к состоянию модуля.
Какие данные собрать
- Для TPMAPI_E_ENCRYPTION_FAILED сохраните порядок операций и точку, где параметры шифруются или расшифровываются.
- Для TPMAPI_E_ENCRYPTION_FAILED отделите постоянный дефект конфигурации от временной занятости TPM контролируемой повторной попыткой.
- Для TPMAPI_E_ENCRYPTION_FAILED соберите журнал TPM и сведения tpmtool, не включая секретные ключевые данные.
Критерий успешного исправления
Для TPMAPI_E_ENCRYPTION_FAILED считайте причину TPMAPI_E_ENCRYPTION_FAILED устранённой только после проверки на тех же данных и под той же учётной записью, где возник сбой, а затем выполните контрольный тест с заведомо неверным входом.
Ссылки по TPMAPI_E_ENCRYPTION_FAILED
Нужно найти другой код? Найти другой код состояния или ошибки.