다음을 통해 공유


PFN_CRYPT_EXTRACT_ENCODED_SIGNATURE_PARAMETERS_FUNC 콜백 함수(wincrypt.h)

서명에 인코딩된 매개 변수가 포함된 경우 해시 알고리즘 식별자와 선택적으로 서명 매개 변수를 디코딩하고 반환하기 위해 PFN_CRYPT_EXTRACT_ENCODED_SIGNATURE_PARAMETERS_FUNC 콜백 함수가 호출됩니다.

구문

PFN_CRYPT_EXTRACT_ENCODED_SIGNATURE_PARAMETERS_FUNC PfnCryptExtractEncodedSignatureParametersFunc;

BOOL PfnCryptExtractEncodedSignatureParametersFunc(
  [in]            DWORD dwCertEncodingType,
  [in]            PCRYPT_ALGORITHM_IDENTIFIER pSignatureAlgorithm,
  [out, optional] void **ppvDecodedSignPara,
  [out]           LPWSTR *ppwszCNGHashAlgid
)
{...}

매개 변수

[in] dwCertEncodingType

사용되는 인코딩 유형을 지정합니다. 다음 예제와 같이 비트 OR 작업과 결합하여 인증서 및 메시지 인코딩 형식을 모두 지정할 수 있습니다.

X509_ASN_ENCODING | PKCS_7_ASN_ENCODING 현재 정의된 인코딩 형식은 다음과 같습니다.

  • X509_ASN_ENCODING
  • PKCS_7_ASN_ENCODING

[in] pSignatureAlgorithm

OID(서명 개체 식별자) 및 선택적 인코딩 매개 변수를 포함하는 CRYPT_ALGORITHM_IDENTIFIER 구조체에 대한 포인터입니다.

[out, optional] ppvDecodedSignPara

디코딩되고 할당된 서명 매개 변수 데이터 구조의 주소에 대한 포인터입니다. 디코딩된 버퍼를 반환하는 것은 선택 사항입니다.

[out] ppwszCNGHashAlgid

인코딩된 서명 매개 변수에서 추출된 CNG 해시 알고리즘 식별자를 나타내는 할당된 유니코드 문자열의 주소에 대한 포인터입니다. 이 함수가 TRUE를 반환하는 경우 NULL 이 아닌 포인터가 반환되어야 합니다.

반환 값

함수가 성공하면 함수는 0이 아닌 값(TRUE)을 반환합니다.

함수가 실패하면 0(FALSE)을 반환합니다. 확장된 오류 정보는 GetLastError를 호출합니다.

이 콜백 함수가 서명 알고리즘을 지원하지 않는 경우 FALSE를 반환하고 ERROR_NOT_SUPPORTED사용하여 SetLastError를 호출해야 합니다.

설명

localAlloc 함수를 사용하여 ppvDecodedSignParappwszCNGHashAlgid 매개 변수에 대한 메모리를 할당해야 합니다.

OID 지원 함수를 사용하여 이 콜백 함수를 배포할 수 있습니다. Wincrypt.h는 이 목적을 위해 다음 상수를 정의합니다.

상수 정의
CRYPT_OID_EXTRACT_ENCODED_SIGNATURE_PARAMETERS_FUNC "CryptDllExtractEncodedSignatureParameters"

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 wincrypt.h