CryptGetKeyIdentifierProperty 함수(wincrypt.h)
구문
BOOL CryptGetKeyIdentifierProperty(
[in] const CRYPT_HASH_BLOB *pKeyIdentifier,
[in] DWORD dwPropId,
[in] DWORD dwFlags,
[in] LPCWSTR pwszComputerName,
[in] void *pvReserved,
[out] void *pvData,
[in, out] DWORD *pcbData
);
매개 변수
[in] pKeyIdentifier
키 식별자를 포함하는 CRYPT_HASH_BLOB 대한 포인터입니다.
[in] dwPropId
검색할 속성을 식별합니다. dwPropId 값은 pvData 매개 변수의 형식과 콘텐츠를 결정합니다. 모든 인증서 속성 ID를 사용할 수 있습니다.
[in] dwFlags
다음 플래그를 사용할 수 있습니다. 비트 OR 연산과 결합할 수 있습니다.
[in] pwszComputerName
검색할 원격 컴퓨터의 이름에 대한 포인터입니다. CRYPT_KEYID_MACHINE_FLAG 플래그가 설정된 경우 원격 컴퓨터에서 키 식별자 목록을 검색합니다. 원격 컴퓨터가 아닌 로컬 컴퓨터를 검색하려면 pwszComputerName 을 NULL로 설정합니다.
[in] pvReserved
나중에 사용할 수 있으며 NULL이어야 합니다.
[out] pvData
dwPropId에 의해 결정된 데이터를 수신하는 버퍼에 대한 포인터입니다. pvData 구조체의 필드가 가리키는 요소는 구조체를 따릅니다. 따라서 pcbData 에 포함된 크기는 구조체의 크기를 초과할 수 있습니다.
dwPropId가 CERT_KEY_PROV_INFO_PROP_ID 경우 pvData는 키 식별자의 속성을 포함하는 CRYPT_KEY_PROV_INFO 구조를 가리킵니다.
dwPropId가 CERT_KEY_PROV_INFO_PROP_ID 않으면 pvData는 키 식별자의 속성을 포함하는 바이트 배열을 가리킵니다.
메모리 할당을 위해 이 정보의 크기를 가져오기 위해 CRYPT_KEYID_ALLOC_FLAG 설정되지 않은 경우 이 매개 변수는 NULL 일 수 있습니다. 자세한 내용은 알 수 없는 길이의 데이터 검색을 참조하세요.
CRYPT_KEYID_ALLOC_FLAG 설정되면 pvData 는 업데이트될 버퍼에 대한 포인터의 주소입니다. 메모리가 할당되고 포인터가 *pvData에 저장되므로 pvData 는 NULL이 아니어야 합니다.
[in, out] pcbData
pvData 매개 변수가 가리키는 버퍼의 크기(바이트)를 포함하는 DWORD에 대한 포인터입니다. 함수가 반환되면 DWORD 에는 버퍼에 저장된 바이트 수가 포함됩니다. pcbData가 가리키는 변수에 포함된 크기는 구조체에 보조 데이터에 대한 포인터를 포함할 수 있으므로 CRYPT_KEY_PROV_INFO 구조체보다 큰 크기를 나타낼 수 있습니다. 이 크기는 구조체 및 모든 보조 데이터에 필요한 크기의 합계입니다.
CRYPT_KEYID_ALLOC_FLAG 설정되면 pcbData 는 업데이트될 DWORD 에 대한 포인터의 주소입니다.
반환 값
함수가 성공하면 함수는 0이 아닌 값(TRUE)을 반환합니다.
함수가 실패하면 0(FALSE)을 반환합니다. 확장된 오류 정보는 GetLastError를 호출합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows XP [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | wincrypt.h |
라이브러리 | Crypt32.lib |
DLL | Crypt32.dll |