다음을 통해 공유


PFN_CRYPT_GET_SIGNER_CERTIFICATE 콜백 함수(wincrypt.h)

CryptGetSignerCertificateCallback 사용자가 제공한 콜백 함수는 CRYPT_VERIFY_MESSAGE_PARA 구조와 함께 사용하여 메시지 서명자의 인증서를 가져와서 확인합니다.

구문

PFN_CRYPT_GET_SIGNER_CERTIFICATE PfnCryptGetSignerCertificate;

PCCERT_CONTEXT PfnCryptGetSignerCertificate(
  [in] void *pvGetArg,
  [in] DWORD dwCertEncodingType,
  [in] PCERT_INFO pSignerId,
  [in] HCERTSTORE hMsgCertStore
)
{...}

매개 변수

[in] pvGetArg

CRYPT_VERIFY_MESSAGE_PARA 구조에 지정된 대로 확인 함수에 전달된 사용자 정의 데이터에 대한 포인터입니다.

[in] dwCertEncodingType

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

X509_ASN_ENCODING | PKCS_7_ASN_ENCODING

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

  • X509_ASN_ENCODING
  • PKCS_7_ASN_ENCODING

[in] pSignerId

발급자와 일련 번호를 포함하는 CERT_INFO 구조체에 대한 포인터입니다. 콘텐츠 또는 서명자가 없는 경우 NULL 일 수 있습니다.

[in] hMsgCertStore

서명된 메시지의 모든 인증서 및 CRL을 포함하는 인증서 저장소에 대한 핸들입니다.

반환 값

서명자 인증서가 발견되면 함수는 읽기 전용 CERT_CONTEXT 대한 포인터를 반환합니다. 반환된 CERT_CONTEXT 인증서 저장소에서 가져오거나 CertCreateCertificateContext를 사용하여 만들어졌습니다. 두 경우 모두 CertFreeCertificateContext를 사용하여 해제해야 합니다. 이 함수가 실패하면 반환 값은 NULL입니다.

설명

메시지에 콘텐츠 또는 서명자가 포함되어 있지 않으면 pSignerIdNULL로 설정된 상태에서 함수가 호출됩니다.

요구 사항

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