CertFindSubjectInCTL 함수(wincrypt.h)
CertFindSubjectInCTL 함수는 CTL(인증서 신뢰 목록)에서 지정된 주체를 찾으려고 시도합니다. 주체는 인증서의 전체 컨텍스트 또는 인증서 발급자 및 일련 번호의 SHA1 해시 와 같은 인증서 주체의 고유 식별자로 식별할 수 있습니다.
구문
PCTL_ENTRY CertFindSubjectInCTL(
[in] DWORD dwEncodingType,
[in] DWORD dwSubjectType,
[in] void *pvSubject,
[in] PCCTL_CONTEXT pCtlContext,
[in] DWORD dwFlags
);
매개 변수
[in] dwEncodingType
사용되는 인코딩 형식을 지정합니다. 현재는 X509_ASN_ENCODING 및 PKCS_7_ASN_ENCODING만 사용되고 있습니다. 그러나 나중에 추가 인코딩 형식이 추가될 수 있습니다. 현재 인코딩 형식의 경우 다음을 사용합니다.
X509_ASN_ENCODING | PKCS_7_ASN_ENCODING.
[in] dwSubjectType
CTL에서 검색할 제목 유형을 지정합니다. 기본 검색의 경우 NULL 일 수 있습니다.
값 | 의미 |
---|---|
|
pvSubject 데이터 형식: CERT_CONTEXT 구조체에 대한 포인터입니다.
CTL의 SubjectAlgorithm 은 주체의 ID 표현을 확인하기 위해 검사됩니다. 처음에는 SHA1 및 MD5 해시만 SubjectAlgorithm의 값으로 지원됩니다. 적절한 해시 속성은 CERT_CONTEXT 구조체에서 가져옵니다. |
|
pvSubject 데이터 형식: CTL_ANY_SUBJECT_INFO 구조체에 대한 포인터입니다.
이 구조체의 SubjectAlgorithm 멤버는 CTL의 알고리즘 형식과 일치해야 하며 SubjectIdentifier 멤버는 CTL 항목 중 하나와 일치해야 합니다. |
인증서의 해시 또는 CTL_ANY_SUBJECT_INFO 구조의 SubjectIdentifier 멤버는 주체 항목을 검색할 때 키로 사용됩니다. 키와 항목의 SubjectIdentifier 간에 이진 메모리 비교가 수행됩니다.
dwSubjectType이 이전 값 중 하나로 설정된 경우 dwEncodingType은 사용되지 않습니다.
[in] pvSubject
dwSubjectType 매개 변수와 함께 사용되는 포인터입니다.
[in] pCtlContext
검색 중인 CTL_CONTEXT 구조체에 대한 포인터입니다.
[in] dwFlags
나중에 사용할 수 있으며 0이어야 합니다.
반환 값
함수가 성공하면 반환 값이 항목(있는 경우)입니다.
함수가 실패하면 반환 값은 NULL입니다. 확장된 오류 정보는 GetLastError를 호출합니다. 몇 가지 가능한 오류 코드는 다음과 같습니다.
반환 코드 | 설명 |
---|---|
|
CTL에서 제목을 찾을 수 없습니다. |
|
dwSubjectType 매개 변수가 CTL_CERT_SUBJECT_TYPE 또는 CTL_ANY_SUBJECT_TYPE 않았습니다. |
|
CTL의 SubjectAlgorithm 멤버가 SHA1 또는 MD5에 매핑되지 않았습니다. |
설명
인증서의 해시 또는 CTL_ANY_SUBJECT_INFO 구조의 SubjectIdentifier 멤버는 주체 항목을 검색할 때 키로 사용됩니다. 키와 항목의 SubjectIdentifier 간에 이진 메모리 비교가 수행됩니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows XP [데스크톱 앱 | UWP 앱] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱 | UWP 앱] |
대상 플랫폼 | Windows |
헤더 | wincrypt.h |
라이브러리 | Crypt32.lib |
DLL | Crypt32.dll |