CertGetCRLContextProperty 함수(wincrypt.h)
CertGetCRLContextProperty 함수는 지정된 CRL(인증서 해지 목록) 컨텍스트에 대한 확장 속성을 가져옵니다.
구문
BOOL CertGetCRLContextProperty(
[in] PCCRL_CONTEXT pCrlContext,
[in] DWORD dwPropId,
[out] void *pvData,
[in, out] DWORD *pcbData
);
매개 변수
[in] pCrlContext
CRL_CONTEXT 구조체에 대한 포인터입니다.
[in] dwPropId
검색할 속성을 식별합니다. 현재 정의된 식별자와 pvData 에서 반환할 데이터 형식은 다음 표에 나와 있습니다.
값 | 의미 |
---|---|
|
pvData에 대한 데이터 형식: DWORD에 대한 포인터
인증서에 대한 쓰기 작업이 지속되는지 여부를 나타내는 DWORD 값을 반환합니다. 인증서가 메모리 저장소 또는 읽기 전용으로 열려 있는 레지스트리 기반 저장소에 있는 경우 DWORD 값이 설정되지 않습니다. |
|
pvData에 대한 데이터 형식: NULL
열거형 중에 인증서를 건너뛰었다는 것을 나타냅니다. 이 속성 집합이 있는 인증서는 특정 해시 또는 일련 번호가 있는 인증서를 찾는 데 사용되는 것과 같은 명시적 검색 작업을 통해 찾을 수 있습니다. pvData의 데이터는 이 속성과 연결되지 않습니다. |
|
pvData에 대한 데이터 형식: BYTE 배열에 대한 포인터 인증서가 자동으로 등록된 인증서 형식의 이름을 지정하는 null로 끝나는 유니코드 문자열을 반환합니다. |
|
pvData에 대한 데이터 형식: BYTE 배열에 대한 포인터 ASN.1( Abstract Syntax Notation One ) 인코딩된 CTL_USAGE 구조체를 포함하는 바이트 배열을 반환합니다. |
|
pvData에 대한 데이터 형식: BYTE 배열에 대한 포인터 인증서 UI에 표시되는 속성을 반환합니다. 이 속성을 사용하면 사용자가 인증서의 사용을 설명할 수 있습니다. |
|
pvData의 데이터 형식: ASN.1로 인코딩된 CERT_ENHKEY_USAGE 구조체를 포함하는 바이트 배열을 반환합니다. |
|
pvData에 대한 데이터 형식: BYTE 배열에 대한 포인터 CRL의 표시 이름을 포함하는 null로 끝나는 유니코드 문자열을 반환합니다. |
|
pvData의 데이터 형식: null로 끝나는 유니코드 문자열에 대한 포인터입니다.
L"<PUBKEY>/<BITLENGTH>" 공개 키 알고리즘 및 비트 길이 쌍 집합이 포함된 문자열을 반환합니다. 세미콜론 L";"은 구분 기호로 사용됩니다. PUBKEY> 값은< CNG 공개 키 알고리즘을 식별합니다. 지원되는 알고리즘은 다음과 같습니다.
참고 위임된 OCSP 서명자 인증서에 대해 이 속성을 검색할 수 없습니다. 위임된 서명자 인증서는 주체 인증서에 서명하는 데 사용되는 것과 동일한 키로 서명되고 해당 인증서에서 확인됩니다.
: L"RSA/2048; RSA/4096" |
|
pvData의 데이터 형식: null로 끝나는 유니코드 문자열에 대한 포인터입니다.
L"<SIGNATURE>/<HASH>" 알고리즘 쌍 집합이 포함된 문자열을 반환합니다. 세미콜론 L";"은 쌍 간의 구분 기호로 사용됩니다. 이 속성은 OCSP 응답이 CRL로 변환되는 경우에만 설정됩니다. 위임된 OCSP 서명자 인증서의 경우 서명자 인증서에 대한 알고리즘 쌍만 반환됩니다. 독립적인 OCSP 서명자 인증서 체인의 경우 루트를 제외한 체인의 각 인증서에 대해 알고리즘 쌍이 반환됩니다. SIGNATURE> 값은< CNG 공개 키 알고리즘을 식별합니다. 지원되는 알고리즘은 다음과 같습니다.
|
|
pvData의 데이터 형식: DWORD 값에 대한 포인터입니다.
CRL 발급자 인증서의 공개 키 길이(비트)를 반환합니다. 이 속성은 CRL로 변환된 OCSP 응답에도 적용할 수 있습니다. Windows 8 및 Windows Server 2012: 이 속성에 대한 지원이 시작됩니다. |
|
pvData에 대한 데이터 형식: CERT_KEY_CONTEXT 대한 포인터
CERT_KEY_CONTEXT 구조를 반환합니다. |
|
pvData에 대한 데이터 형식: BYTE 배열에 대한 포인터 존재하지 않는 경우 szOID_SUBJECT_KEY_IDENTIFIER 확장을 검색합니다. 실패하면 인증서의 SubjectPublicKeyInfo 멤버에서 SHA1 해시가 수행되어 식별자 값을 생성합니다. |
|
pvData에 대한 데이터 형식: HCRYPTPROV에 대한 포인터
CERT_KEY_CONTEXT_PROP_ID 가져온 공급자 핸들을 반환합니다. |
|
pvData의 데이터 형식: CRYPT_KEY_PROV_INFO 대한 포인터
CRYPT_KEY_PROV_INFO 대한 포인터를 반환합니다. |
|
pvData에 대한 데이터 형식: DWORD에 대한 포인터
있는 경우 CERT_KEY_CONTEXT_PROP_ID 속성에서 가져온 프라이빗 키를 지정하는 DWORD 값을 반환합니다. 그렇지 않으면 CERT_KEY_PROV_INFO_PROP_ID 있는 경우 dwKeySpec의 소스입니다. |
|
pvData에 대한 데이터 형식: BYTE 배열에 대한 포인터 MD5 해시를 반환합니다. 해시가 없으면 CryptHashCertificate를 사용하여 계산됩니다. |
|
pvData에 대한 데이터 형식: BYTE 배열에 대한 포인터 ASN.1로 인코딩된 CERT_ALT_NAME_INFO 구조를 반환합니다. CERT_NEXT_UPDATE_LOCATION_PROP_ID 현재 CTL에서만 사용됩니다. |
|
pvData에 대한 데이터 형식: BYTE 배열에 대한 포인터 인증서의 공개 키와 연결된 프라이빗 키가 포함된 파일 이름을 지정하는 null로 끝나는 유니코드 와이드 문자열을 반환합니다. |
|
pvData에 대한 데이터 형식: BYTE 배열에 대한 포인터 SHA1 해시를 반환합니다. 해시가 없으면 CryptHashCertificate를 사용하여 계산됩니다. |
|
pvData의 데이터 형식: null로 끝나는 유니코드 문자열에 대한 포인터입니다.
인증서 서명을 나타내는 L"<SIGNATURE>/<HASH>" 문자열을 반환합니다. SIGNATURE> 값은< CNG 공개 키 알고리즘을 식별합니다. 지원되는 알고리즘은 다음과 같습니다.
Windows 8 및 Windows Server 2012: 이 속성에 대한 지원이 시작됩니다. |
|
pvData에 대한 데이터 형식: BYTE 배열에 대한 포인터 서명 해시를 반환합니다. 해시가 없으면 CryptHashToBeSigned로 계산됩니다. 해시의 길이는 SHA의 경우 20바이트, MD5의 경우 16바이트입니다. |
많은 속성 식별자의 경우 pvData는 CertSetCRLContextProperty의 pvData 매개 변수가 가리키는 CRYPT_DATA_BLOB 아닌 바이트 배열을 가리킵니다.
각 속성 식별자에 대한 자세한 내용은 CertSetCertificateContextProperty의 dwPropId 매개 변수에 대한 설명서를 참조하세요.
[out] pvData
dwPropId에 의해 결정된 데이터를 수신하는 버퍼에 대한 포인터입니다. 반환된 구조체의 멤버가 가리키는 구조체도 기본 구조체 다음에 반환됩니다. 따라서 pcbData 에 포함된 크기가 기본 구조체의 크기를 초과하는 경우가 많습니다.
이 매개 변수는 메모리 할당을 위해 정보의 크기를 설정하는 NULL 일 수 있습니다. 자세한 내용은 알 수 없는 길이의 데이터 검색을 참조하세요.
[in, out] pcbData
pvData 매개 변수가 가리키는 버퍼의 크기(바이트)를 지정하는 DWORD 값에 대한 포인터입니다. 함수가 반환될 때 DWORD 값에는 버퍼에 저장할 바이트 수가 포함됩니다.
반환 값
함수가 성공하면 반환 값은 TRUE입니다.
함수가 실패하면 반환 값은 FALSE입니다.
호출된 함수 CryptHashCertificate 의 오류는 이 함수로 전파될 수 있습니다. 확장 오류 정보는 GetLastError를 호출합니다. 몇 가지 가능한 오류 코드는 다음과 같습니다.
반환 코드 | 설명 |
---|---|
|
CRL에 지정된 속성이 없습니다. |
|
pvData 매개 변수로 지정된 버퍼가 반환된 데이터를 저장할 만큼 크지 않은 경우 함수는 ERROR_MORE_DATA 코드를 설정하고 필요한 버퍼 크기를 pcbData가 가리키는 변수에 바이트 단위로 저장합니다. |
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows XP [데스크톱 앱 | UWP 앱] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱 | UWP 앱] |
대상 플랫폼 | Windows |
헤더 | wincrypt.h |
라이브러리 | Crypt32.lib |
DLL | Crypt32.dll |