CryptInstallDefaultContext 함수(wincrypt.h)
구문
BOOL CryptInstallDefaultContext(
[in] HCRYPTPROV hCryptProv,
[in] DWORD dwDefaultType,
[in] const void *pvDefaultPara,
[in] DWORD dwFlags,
[in] void *pvReserved,
[out] HCRYPTDEFAULTCONTEXT *phDefaultContext
);
매개 변수
[in] hCryptProv
기본 컨텍스트로 사용할 암호화 서비스 공급자의 핸들입니다. 이 핸들은 CryptAcquireContext 함수를 사용하여 가져옵니다.
[in] dwDefaultType
설치할 컨텍스트 유형을 지정합니다. 다음 값 중 하나여야 합니다.
값 | 의미 |
---|---|
|
단일 인증서 서명 유형을 확인하는 데 사용되는 기본 공급자를 설치합니다.
pvDefaultPara 매개 변수는 공급자를 설치하기 위한 인증서 서명 알고리즘의 개체 식별자를 포함하는 null로 종료된 ANSI 문자열의 주소입니다(예: szOID_OIWSEC_md5RSA). pvDefaultPara 매개 변수가 NULL인 경우 지정된 공급자를 사용하여 모든 인증서 서명을 확인합니다. CRYPT_DEFAULT_CONTEXT_PROCESS_FLAG 플래그가 설정된 경우 pvDefaultPara 매개 변수는 NULL일 수 없습니다. |
|
여러 인증서 서명 유형을 확인하는 데 사용되는 기본 공급자를 설치합니다.
pvDefaultPara 매개 변수는 지정된 공급자를 설치할 인증서 서명 알고리즘을 식별하는 개체 식별자 배열을 포함하는 CRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA 구조체의 주소입니다. |
[in] pvDefaultPara
기본 컨텍스트 공급자를 설치할 개체 또는 개체를 지정합니다. 이 매개 변수의 형식은 dwDefaultType 매개 변수의 내용에 따라 달라집니다.
[in] dwFlags
이 함수의 동작을 수정하는 플래그 집합입니다. 이 값은 0이거나 다음 값 중 하나 이상의 조합일 수 있습니다.
값 | 의미 |
---|---|
|
hCryptProv 매개 변수로 지정된 공급자 핸들은 프로세스 또는 스레드가 종료될 때 자동으로 해제됩니다. 이 플래그를 지정하지 않으면 핸들이 더 이상 필요하지 않을 때 CryptReleaseContext 함수를 사용하여 공급자 핸들을 해제해야 합니다. 프로세스 또는 스레드가 종료되기 전에 CryptUninstallDefaultContext 함수가 호출되면 공급자 핸들이 해제되지 않습니다. |
|
공급자는 프로세스의 모든 스레드에 적용됩니다. 이 플래그를 지정하지 않으면 공급자는 호출 스레드에만 적용됩니다. 이 플래그가 설정된 경우 pvDefaultPara 매개 변수는 NULL 일 수 없습니다. |
[in] pvReserved
이 매개 변수는 나중에 사용하도록 예약되어 있습니다.
[out] phDefaultContext
기본 컨텍스트 핸들을 수신하는 HCRYPTDEFAULTCONTEXT 변수의 주소입니다. 이 핸들은 CryptUninstallDefaultContext 함수에 전달되어 기본 컨텍스트 공급자를 제거합니다.
반환 값
함수가 성공하면 반환 값은 0이 아닌 값(TRUE)입니다. 함수가 실패하면 반환 값은 0(FALSE)입니다. 확장된 오류 정보는 GetLastError를 호출합니다.
설명
설치된 기본 컨텍스트 공급자는 스택 순서가 지정되므로 기본 컨텍스트 공급자를 검색할 때 시스템은 가장 최근에 설치된 공급자로 시작합니다. 공급자의 스레드별 목록은 공급자의 프로세스별 목록 전에 검색됩니다. 일치 항목이 발견되면 시스템은 다른 일치 항목을 계속 검색하지 않습니다.
설치된 공급자 핸들은 CryptUninstallDefaultContext 가 호출되거나 스레드 또는 프로세스가 종료될 때까지 계속 사용할 수 있어야 합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows XP [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | wincrypt.h |
라이브러리 | Crypt32.lib |
DLL | Crypt32.dll |