SIP_SUBJECTINFO 구조체(mssip.h)

SIP_SUBJECTINFO 구조는 SIP(주체 인터페이스 패키지) API에 대한 주체 정보 데이터를 지정합니다.

구문

typedef struct SIP_SUBJECTINFO_ {
  DWORD                      cbSize;
  GUID                       *pgSubjectType;
  HANDLE                     hFile;
  LPCWSTR                    pwsFileName;
  LPCWSTR                    pwsDisplayName;
  DWORD                      dwReserved1;
  DWORD                      dwIntVersion;
  HCRYPTPROV                 hProv;
  CRYPT_ALGORITHM_IDENTIFIER DigestAlgorithm;
  DWORD                      dwFlags;
  DWORD                      dwEncodingType;
  DWORD                      dwReserved2;
  DWORD                      fdwCAPISettings;
  DWORD                      fdwSecuritySettings;
  DWORD                      dwIndex;
  DWORD                      dwUnionChoice;
  union {
#if ...
    MS_ADDINFO_FLAT_                 *psFlat;
#else
    struct MS_ADDINFO_FLAT_          *psFlat;
#endif
#if ...
    MS_ADDINFO_CATALOGMEMBER_        *psCatMember;
#else
    struct MS_ADDINFO_CATALOGMEMBER_ *psCatMember;
#endif
#if ...
    MS_ADDINFO_BLOB_                 *psBlob;
#else
    struct MS_ADDINFO_BLOB_          *psBlob;
#endif
#if ...
    MS_ADDINFO_DETACHEDSIG_          *psDetachedSig;
#else
    struct MS_ADDINFO_DETACHEDSIG_   *psDetachedSig;
#endif
  };
  LPVOID                     pClientData;
} SIP_SUBJECTINFO, *LPSIP_SUBJECTINFO;

멤버

cbSize

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

pgSubjectType

제목 형식을 식별하는 GUID 구조체에 대한 포인터입니다.

hFile

제목을 나타내는 파일 핸들입니다. 주체의 스토리지 형식이 파일인 경우 hFileINVALID_HANDLE_VALUE 설정하고 pwsFileName 매개 변수를 파일 이름으로 설정합니다.

pwsFileName

주체의 파일 이름을 포함하는 null로 끝나는 유니코드 문자열에 대한 포인터입니다.

pwsDisplayName

주체의 표시 이름을 포함하는 null로 끝나는 유니코드 문자열에 대한 포인터입니다.

dwReserved1

이 멤버는 나중에 사용하도록 예약되어 있습니다.

dwIntVersion

이 멤버는 예약되어 있습니다. 이 멤버를 수정하지 마세요. SIP에서 get 및 verify 함수 간에 내부 버전 번호를 전달하는 데 사용됩니다.

hProv

암호화 공급자에 대한 HCRYPTPROV 핸들입니다.

DigestAlgorithm

파일을 해시하는 데 사용되는 해시 알고리즘의 식별자를 포함하는 CRYPT_ALGORITHM_IDENTIFIER 구조체입니다.

dwFlags

이 구조를 사용하는 함수의 동작을 수정하는 값입니다. 이 멤버의 가능한 값에 대한 자세한 내용은 SignerSignExdwFlags 매개 변수를 참조하세요.

dwEncodingType

파일에 사용되는 인코딩 형식을 지정하는 값입니다. 현재 는 X509_ASN_ENCODINGPKCS_7_ASN_ENCODING 만 사용되고 있습니다. 그러나 나중에 추가 인코딩 형식이 추가될 수 있습니다. 현재 인코딩 형식의 경우 X509_ASN_ENCODING PKCS_7_ASN_ENCODING | 사용합니다.

dwReserved2

이 멤버는 나중에 사용하도록 예약되어 있습니다.

fdwCAPISettings

이 멤버는 사용되지 않습니다.

fdwSecuritySettings

이 멤버는 사용되지 않습니다.

dwIndex

CryptSIPGetSignedDataMsg에 대한 마지막 호출의 메시지 인덱스입니다. 연산입니다.

dwUnionChoice

제공된 추가 정보의 유형을 지정합니다.

정의된 상수/값 의미
MSSIP_ADDINFO_NONE
0
주제에 대한 추가 정보는 없습니다.
MSSIP_ADDINFO_FLAT
1
추가 정보는 플랫 파일입니다.
MSSIP_ADDINFO_CATMEMBER
2
추가 정보는 카탈로그 멤버입니다.
MSSIP_ADDINFO_BLOB
3
추가 정보는 BLOB입니다.
MSSIP_ADDINFO_NONMSSIP
500
추가 정보는 사용자 정의 형식입니다.

psFlat

플랫 파일 주체 형식에 대한 추가 정보를 포함하는 MS_ADDINFO_FLAT 구조체입니다.

psCatMember

카탈로그 멤버 주체 형식에 대한 추가 정보를 포함하는 MS_ADDINFO_CATALOGMEMBER 구조체입니다.

psBlob

BLOB 주체 형식에 대한 추가 정보를 포함하는 MS_ADDINFO_BLOB 구조체입니다.

psDetachedSig

pClientData

SIP 관련 데이터에 대한 포인터입니다.

설명

SIP_SUBJECTINFO 구조를 처음 사용할 때 전체 구조를 이진 0으로 초기화합니다. SIP 함수 호출 간의 구조를 초기화하지 마세요.

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

요구 사항

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