다음을 통해 공유


CryptSIPGetSignedDataMsg 함수(mssip.h)

CryptSIPGetSignedDataMsg 함수는 파일에서 Authenticode 서명을 검색합니다.

구문

BOOL CryptSIPGetSignedDataMsg(
  [in]      SIP_SUBJECTINFO *pSubjectInfo,
  [out]     DWORD           *pdwEncodingType,
  [in]      DWORD           dwIndex,
  [in, out] DWORD           *pcbSignedDataMsg,
  [out]     BYTE            *pbSignedDataMsg
);

매개 변수

[in] pSubjectInfo

메시지 제목에 대한 정보를 포함하는 SIP_SUBJECTINFO 구조체에 대한 포인터입니다.

[out] pdwEncodingType

Authenticode 서명의 인코딩 형식입니다.

이 매개 변수는 다음 값 중 하나 이상의 조합일 수 있습니다.

의미
PKCS_7_ASN_ENCODING
65536 (0x10000)
PKCS #7 메시지 인코딩을 지정합니다.
X509_ASN_ENCODING
1(0x1)
X.509 인증서 인코딩을 지정합니다.

[in] dwIndex

이 매개 변수는 예약되어 있으며 0으로 설정해야 합니다.

[in, out] pcbSignedDataMsg

pbSignedDataMsg 매개 변수가 가리키는 버퍼의 길이(바이트)입니다.

[out] pbSignedDataMsg

반환된 Authenticode 서명을 받을 버퍼에 대한 포인터입니다.

필요한 버퍼의 크기를 확인하려면 pbSignedDataMsg 매개 변수를 NULL 로 설정하고 CryptSIPGetSignedDataMsg 함수를 호출합니다. 이 함수는 버퍼의 필요한 크기를 pcbSignedDataMsg가 가리키는 값에 바이트 단위로 배치합니다. 자세한 내용은 알 수 없는 길이의 데이터 검색을 참조하세요.

반환 값

함수가 성공하면 함수는 TRUE를 반환 합니다.

함수가 실패하면 FALSE를 반환합니다. 확장 오류 정보는 GetLastError를 호출합니다. 몇 가지 가능한 오류 코드는 다음과 같습니다.

반환 코드 설명
CRYPT_E_NO_MATCH
인덱스에서 지정한 서명을 찾을 수 없습니다.
ERROR_BAD_FORMAT
SIP( 주체 인터페이스 패키지 )의 지정된 데이터 또는 파일 형식이 잘못되었습니다.
ERROR_INVALID_PARAMETER
[SIP_SUBJECTINFO](/windows/desktop/api/mssip/ns-mssip-sip_subjectinfo) 구조체는 null 포인터입니다.
ERROR_INSUFFICIENT_BUFFER
메시지 버퍼의 크기가 검색된 데이터를 저장할 수 없습니다. pcbSignedDataMsg 매개 변수가 필요한 버퍼 크기를 나타내도록 설정되었습니다.
TRUST_E_SUBJECT_FORM_UNKNOWN
지정된 제목 형식이 잘못되었습니다.

설명

주제는 이식 가능한 실행 이미지(.exe), 캐비닛(.cab) 이미지, 플랫 파일 및 카탈로그 파일을 포함하지만 이에 국한되지 않습니다. 각 주체 형식은 해시 계산을 위해 데이터의 다른 하위 집합을 사용하며 스토리지 및 검색을 위해 다른 프로시저가 필요합니다. 따라서 각 주체 형식에는 고유한 SIP 사양이 있습니다.

요구 사항

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

추가 정보

CryptSIPPutSignedDataMsg

CryptSIPRemoveSignedDataMsg