Поделиться через


Функция PFXExportCertStore (wincrypt.h)

Функция PFXExportCertStore экспортирует сертификаты и, если они доступны, связанные закрытые ключи из хранилища сертификатов, на который указывает ссылка. Это старая функция, сохраненная для обеспечения совместимости с клиентами Internet Обозреватель 4.0. Новые приложения должны использовать функцию PfxExportCertStoreEx , которая обеспечивает повышенную безопасность закрытого ключа.

Синтаксис

BOOL PFXExportCertStore(
  [in]      HCERTSTORE      hStore,
  [in, out] CRYPT_DATA_BLOB *pPFX,
  [in]      LPCWSTR         szPassword,
  [in]      DWORD           dwFlags
);

Параметры

[in] hStore

Дескриптор хранилища сертификатов, содержащего экспортируемые сертификаты.

[in, out] pPFX

Указатель на структуру CRYPT_DATA_BLOB для хранения пакета PFX с экспортируемыми сертификатами и ключами. Если pPFX-pbData> имеет значение NULL, функция вычисляет количество байтов, необходимое для закодированного большого двоичного объекта, и возвращает его в pPFX-cbData.> При вызове функции с pPFX-pbData>, указывающей на выделенный буфер необходимого размера, функция копирует закодированные байты в буфер и обновляетpPFX-cbData> длиной байтов кодирования.

[in] szPassword

Строковый пароль, используемый для шифрования и проверки пакета PFX. Завершив использование пароля, очистите пароль из памяти, вызвав функцию SecureZeroMemory . Дополнительные сведения о защите паролей см. в разделе Обработка паролей.

[in] dwFlags

Для значений флагов можно задать любое сочетание следующих значений.

Значение Значение
EXPORT_PRIVATE_KEYS
Закрытые ключи экспортируются, а также сертификаты.
REPORT_NO_PRIVATE_KEY
Если обнаружен сертификат без связанного закрытого ключа, функция возвращает значение FALSE с последней ошибкой CRYPT_E_NOT_FOUND или NTE_NO_KEY.
REPORT_NOT_ABLE_TO_EXPORT_PRIVATE_KEY
При обнаружении сертификата с закрытым ключом, не экспортируемым, функция возвращает значение FALSE , а для последней ошибки задано значение NTE_BAD_KEY, NTE_BAD_KEY_STATE или NTE_PERM.

Возвращаемое значение

Возвращает значение TRUE (ненулевое), если функция выполнена успешно, и FALSE (ноль), если функция завершается сбоем. Для получения дополнительных сведений об ошибке вызовите Метод GetLastError.

Требования

Требование Значение
Минимальная версия клиента Windows XP [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2003 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header wincrypt.h
Библиотека Crypt32.lib
DLL Crypt32.dll

См. также раздел

PFXExportCertStoreEx

PFXImportCertStore