| Предыдущий | Следующий |
| NTE_BAD_HASH | NTE_BAD_LEN |
NTE_BAD_KEY
Что означает NTE_BAD_KEY
NTE_BAD_KEY — Криптографический поставщик отклонил переданный ключ как недопустимый для запрошенной операции.
Код относится к криптографическим интерфейсам Windows. его смысл зависит от поставщика, алгоритма, ключа, сертификата или формата криптографического сообщения.
Разбор условия ошибки
Статус относится к криптографическому материалу или его представлению. сверяйте алгоритм, назначение ключа, кодировку и поставщика как единую комбинацию.
- Проверьте происхождение ключа/сертификата, выбранный алгоритм и точный формат входного блока.
- Запишите точный API-вызов, имя/тип поставщика, алгоритм, флаги и размеры входных и выходных буферов.
- Проверьте происхождение и время жизни дескрипторов ключа, хэша, сертификата или сообщения.
- Сопоставьте кодировку DER/PEM/CMS, назначение ключа и ожидаемый формат подписи или идентификатора.
Как локализовать источник
- Повторите операцию с заведомо исправным тестовым ключом того же типа, чтобы отделить данные от конфигурации поставщика.
- Сохраните первичный HRESULT/GetLastError до закрытия криптографических объектов и выполнения cleanup.
- Зафиксируйте сертификат без закрытого ключа, идентификатор контейнера и сведения о поставщике, не записывая секретный материал.
Уточняющий диагностический признак
Криптографический provider получил key object, непригодный для конкретной операции. Проверьте provider, algorithm/key type, способ import и разрешённые key usages; это отличается от сертификата без key property — здесь сам переданный ключ уже существует, но отклонён.
Ссылки по этому результату
Нужно найти другой код? Найти другой код состояния или ошибки.