SIP_SUBJECTINFO structure (mssip.h)

La structure SIP_SUBJECTINFO spécifie les données d’informations sur l’objet dans les API SIP ( Subject Interface Package ).

Syntaxe

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;

Membres

cbSize

Taille, en octets, de cette structure.

pgSubjectType

Pointeur vers une structure GUID qui identifie le type d’objet.

hFile

Handle de fichier qui représente l’objet. Si le type de stockage de l’objet est un fichier, définissez hFilesur INVALID_HANDLE_VALUE et définissez le paramètre pwsFileName sur le nom du fichier.

pwsFileName

Pointeur vers une chaîne Unicode terminée par null qui contient le nom de fichier de l’objet.

pwsDisplayName

Pointeur vers une chaîne Unicode terminée par null qui contient le nom d’affichage de l’objet.

dwReserved1

Ce membre est réservé pour un usage ultérieur.

dwIntVersion

Ce membre est réservé. Ne modifiez pas ce membre. Il est utilisé par le SIP pour passer le numéro de version interne entre les fonctions get et verify.

hProv

Un handle HCRYPTPROV pour le fournisseur de chiffrement.

DigestAlgorithm

Structure CRYPT_ALGORITHM_IDENTIFIER qui contient l’identificateur de l’algorithme de hachage utilisé pour hacher le fichier.

dwFlags

Valeur qui modifie le comportement des fonctions qui utilisent cette structure. Pour plus d’informations sur les valeurs possibles pour ce membre, consultez le paramètre dwFlags de SignerSignEx.

dwEncodingType

Valeur qui spécifie le type d’encodage utilisé pour le fichier. Actuellement, seuls les X509_ASN_ENCODING et les PKCS_7_ASN_ENCODING sont utilisés ; toutefois, des types d’encodage supplémentaires peuvent être ajoutés à l’avenir. Pour l’un ou l’autre type d’encodage actuel, utilisez : X509_ASN_ENCODING | PKCS_7_ASN_ENCODING.

dwReserved2

Ce membre est réservé pour un usage ultérieur.

fdwCAPISettings

Ce membre n’est pas utilisé.

fdwSecuritySettings

Ce membre n’est pas utilisé.

dwIndex

Index de message du dernier appel à CryptSIPGetSignedDataMsg. .

dwUnionChoice

Spécifie le type d’informations supplémentaires fournies.

Constante/valeur définie Signification
MSSIP_ADDINFO_NONE
0
Il n’existe aucune information supplémentaire sur le sujet.
MSSIP_ADDINFO_FLAT
1
Les informations supplémentaires sont un fichier plat.
MSSIP_ADDINFO_CATMEMBER
2
Les informations supplémentaires sont un membre du catalogue.
MSSIP_ADDINFO_BLOB
3
Les informations supplémentaires sont un objet BLOB.
MSSIP_ADDINFO_NONMSSIP
500
Les informations supplémentaires sont dans un format défini par l’utilisateur.

psFlat

Structure MS_ADDINFO_FLAT qui contient des informations supplémentaires pour les types d’objets de fichiers plats.

psCatMember

Structure MS_ADDINFO_CATALOGMEMBER qui contient des informations supplémentaires pour les types d’objets membres du catalogue.

psBlob

Structure MS_ADDINFO_BLOB qui contient des informations supplémentaires pour les types d’objets BLOB.

psDetachedSig

pClientData

Pointeur vers des données spécifiques à SIP.

Remarques

Lors de la première utilisation de la structure SIP_SUBJECTINFO , initialisez la structure entière sur zéro binaire. N’initialisez pas la structure entre les appels de fonction SIP.

Les sujets incluent, sans s’y limiter, les images exécutables portables (.exe), les images d’armoire (.cab), les fichiers plats et les fichiers catalogue. Chaque type de sujet utilise un sous-ensemble différent de ses données pour le calcul de hachage et nécessite une procédure différente pour le stockage et la récupération. Par conséquent, chaque type de sujet a une spécification de package d’interface de sujet unique.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
En-tête mssip.h