다음을 통해 공유


CRYPT_VERIFY_MESSAGE_PARA 구조체(wincrypt.h)

CRYPT_VERIFY_MESSAGE_PARA 구조에는 서명된 메시지를 확인하는 데 필요한 정보가 포함되어 있습니다.

구문

typedef struct _CRYPT_VERIFY_MESSAGE_PARA {
  DWORD                            cbSize;
  DWORD                            dwMsgAndCertEncodingType;
  HCRYPTPROV_LEGACY                hCryptProv;
  PFN_CRYPT_GET_SIGNER_CERTIFICATE pfnGetSignerCertificate;
  void                             *pvGetArg;
  PCCERT_STRONG_SIGN_PARA          pStrongSignPara;
} CRYPT_VERIFY_MESSAGE_PARA, *PCRYPT_VERIFY_MESSAGE_PARA;

멤버

cbSize

이 구조체의 크기(바이트)입니다.

dwMsgAndCertEncodingType

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

X509_ASN_ENCODING | PKCS_7_ASN_ENCODING

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

  • X509_ASN_ENCODING
  • PKCS_7_ASN_ENCODING

hCryptProv

이 멤버는 사용되지 않으며 NULL로 설정해야 합니다.

Windows Server 2003 및 Windows XP: 서명된 메시지를 확인하는 데 사용할 암호화 서비스 공급자 에 대한 핸들입니다. 이 핸들로 식별되는 CSP는 해시 및 서명 확인에 사용됩니다. 특정 암호화 공급자를 사용하는 강력한 이유가 없는 한 기본 RSA 또는 DSS 공급자를 사용하려면 0으로 설정합니다.

이 멤버의 데이터 형식은 HCRYPTPROV입니다.

pfnGetSignerCertificate

서명자의 인증서 컨텍스트를 가져오는 데 사용되는 콜백 함수에 대한 포인터입니다. NULL인 경우 기본 콜백이 사용됩니다. 기본 콜백은 메시지의 인증서 저장소에서 서명자 인증서 컨텍스트를 가져옵니다.

서명자의 인증서를 가져오는 애플리케이션 정의 콜백 함수를 기본값 대신 사용할 수 있습니다. 서명자의 인증서 식별자(발급자 및 일련 번호)와 해당 암호화 서명된 메시지의 인증서 저장소에 핸들이 전달됩니다.

콜백 함수 서명 및 인수 는 CryptGetSignerCertificateCallback 을 참조하세요.

pvGetArg

콜백 함수에 전달할 인수입니다. 일반적으로 메시지 서명자의 인증서를 가져오고 확인합니다.

pStrongSignPara

강력한 서명에 사용되는 매개 변수를 포함하는 CERT_STRONG_SIGN_PARA 구조체에 대한 선택적 포인터입니다. 이 멤버를 설정하고 함수가 서명을 성공적으로 확인하면 함수가 강력한 서명을 검사. 서명이 강력하지 않으면 작업이 실패하고 GetLastError 값을 NTE_BAD_ALGID 설정합니다.

참고 wincrypt.h를 포함하기 전에 #define 지시문을 사용하여 CRYPT_VERIFY_MESSAGE_PARA_HAS_EXTRA_FIELDS 정의된 경우에만 pStrongSignPara 멤버를 사용할 수 있습니다. CRYPT_VERIFY_MESSAGE_PARA_HAS_EXTRA_FIELDS 정의된 경우 사용되지 않는 모든 필드를 0으로 만들어야 합니다.
 
Windows 8 및 Windows Server 2012: 이 멤버에 대한 지원이 시작됩니다.

설명

이 구조체는 다음 함수에 전달됩니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
머리글 wincrypt.h

추가 정보

CERT_CONTEXT

CERT_INFO

CryptDecryptAndVerifyMessageSignature

CryptVerifyDetachedMessageSignature

CryptVerifyMessageSignature