CryptCATAdminAcquireContext2 함수(mscat.h)
CryptCATAdminAcquireContext2 함수는 지정된 해시 알고리즘 및 해시 정책에 대한 카탈로그 관리자 컨텍스트에 대한 핸들을 가져옵니다.
다음 함수에 대한 후속 호출에서 이 핸들을 사용할 수 있습니다.
이 함수에는 연결된 가져오기 라이브러리가 없습니다. LoadLibrary 및 GetProcAddress 함수를 사용하여 Wintrust.dll 동적으로 연결해야 합니다.구문
BOOL CryptCATAdminAcquireContext2(
[out] HCATADMIN *phCatAdmin,
[in, optional] const GUID *pgSubsystem,
[in, optional] PCWSTR pwszHashAlgorithm,
[in, optional] PCCERT_STRONG_SIGN_PARA pStrongHashPolicy,
DWORD dwFlags
);
매개 변수
[out] phCatAdmin
이 함수에서 할당한 카탈로그 관리자 컨텍스트 핸들에 대한 포인터입니다. 핸들 사용을 마쳤으면 CryptCATAdminReleaseContext 함수를 호출하여 핸들을 닫습니다.
[in, optional] pgSubsystem
하위 시스템을 식별하는 GUID 에 대한 포인터입니다. DRIVER_ACTION_VERIFY 운영 체제 구성 요소 및 타사 드라이버에 대한 하위 시스템을 나타냅니다. 대부분의 구현에서 사용하는 하위 시스템입니다.
[in, optional] pwszHashAlgorithm
해시를 계산하고 확인할 때 사용할 해시 알고리즘의 이름을 지정하는 선택적 null로 끝나는 유니코드 문자열입니다. 이 값은 NULL일 수 있습니다. NULL인 경우 pStrongHashPolicy 매개 변수에 대해 설정한 값에 따라 기본 해시 알고리즘을 선택할 수 있습니다. Windows 8의 기본 알고리즘은 SHA1입니다. 기본값은 이후 Windows 버전에서 변경될 수 있습니다. 자세한 내용은 설명 부분을 참조하세요.
[in, optional] pStrongHashPolicy
강력한 서명을 위해 검사 데 사용되는 매개 변수를 포함하는 CERT_STRONG_SIGN_PARA 구조체에 대한 포인터입니다. 함수는 지정된 정책을 충족하는 가장 낮은 공통 해시 알고리즘과 pwszHashAlgorithm 매개 변수 또는 시스템 기본 알고리즘(알고리즘이 지정되지 않은 경우)으로 지정된 알고리즘을 선택합니다.
dwFlags
예약되어 있습니다. 이 값은 0이어야 합니다.
반환 값
함수가 성공하면 반환 값은 0이 아닌 값(TRUE)입니다.
함수가 실패하면 반환 값은 0(FALSE)입니다. 확장 오류 정보는 GetLastError를 호출합니다.
다음 표에서는 GetLastError 함수에서 가장 일반적으로 반환되는 오류 코드를 나열합니다.
반환 코드 | 설명 |
---|---|
|
phCatAdmin 매개 변수는 NULL일 수 없습니다.
dwFlags 매개 변수는 0이어야 합니다. |
|
새 카탈로그 관리자 개체를 만들기 위한 메모리가 부족했습니다. |
|
pwszHashAlgorithm 매개 변수로 지정된 해시 알고리즘을 찾을 수 없습니다. |
설명
이 함수를 사용하면 카탈로그 관리자 컨텍스트가 필요한 함수에서 사용할 해시 알고리즘을 선택하거나 선택할 수 있습니다. 해시 알고리즘의 이름을 설정할 수 있지만 함수가 알고리즘을 결정하도록 하는 것이 좋습니다. 이렇게 하면 나중에 신뢰할 수 없게 될 수 있는 하드 코딩 알고리즘으로부터 애플리케이션을 보호합니다.
요구 사항
지원되는 최소 클라이언트 | Windows 8 [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2012 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | mscat.h |
라이브러리 | Wintrust.lib |
DLL | Wintrust.dll |