Partager via


SignerTimeStampEx3, fonction

La fonction SignerTimeStampEx3 marque l’heure de l’objet spécifié et prend en charge la définition d’horodatages sur plusieurs signatures.

Notes

Cette fonction n’a pas de fichier d’en-tête associé ni de bibliothèque d’importation. Pour appeler cette fonction, vous devez créer un fichier d’en-tête défini par l’utilisateur et utiliser les fonctions LoadLibrary et GetProcAddress pour établir une liaison dynamique vers Mssign32.dll.

 

Syntaxe

HRESULT WINAPI SignerTimeStampEx3(
  _In_       DWORD                  dwFlags,
  _In_       DWORD                  dwIndex,
  _In_       SIGNER_SUBJECT_INFO    *pSubjectInfo,
  _In_       PCWSTR                 pwszHttpTimeStamp,
  _In_       PCWSTR                 pszAlgorithmOid,
  _In_opt_   PCRYPT_ATTRIBUTES      psRequest,
  _In_opt_   PVOID                  pSipData,
  _Out_      SIGNER_CONTEXT         **ppSignerContext,
  _In_opt_   PCERT_STRONG_SIGN_PARA pCryptoPolicy,
  _Reserved_ PVOID                  pReserved
);

Paramètres

dwFlags [in]

Indicateur qui spécifie le type d’horodatage à générer. Ce paramètre peut prendre les valeurs suivantes. Les valeurs s’excluent mutuellement.

Valeur Signification
SIGNER_TIMESTAMP_AUTHENTICODE
Spécifie un horodatage Authenticode.
Note: Authenticode n’est plus le type d’horodatage préféré. La prise en charge des horodatages Authenticode peut être supprimée à l’avenir. Nous vous recommandons d’utiliser RFC 3161 à la place.
SIGNER_TIMESTAMP_RFC3161
Spécifie un horodatage conforme À la norme RFC 3161.

 

dwIndex [in]

Spécifie le numéro de séquence de la signature à laquelle l’horodatage sera ajouté. Si cette valeur est égale à zéro (0), la signature externe est horodatée.

pSubjectInfo [in]

Adresse d’une structure de SIGNER_SUBJECT_INFO qui représente le sujet à horodatage.

pwszHttpTimeStamp [in]

Adresse d’une chaîne Unicode terminée par null qui contient l’URL d’un serveur d’horodatage.

pszAlgorithmOid [in]

Algorithme de hachage à utiliser pour effectuer des horodatages conformes à la RFC 3161. Ce paramètre est ignoré pour les horodatages Authenticode.

psRequest [in, facultatif]

facultatif. Adresse d’une structure de CRYPT_ATTRIBUTES qui contient des attributs supplémentaires ajoutés à la demande d’horodatage.

Ce paramètre est facultatif et peut être NULL s’il n’est pas inclus.

pSipData [in, facultatif]

facultatif. Valeur 32 bits qui est passée en tant que données supplémentaires aux fonctions SIP ( Subject Interface Package ). Le format et le contenu de ce paramètre sont définis par le fournisseur SIP.

Ce paramètre est facultatif et peut être NULL s’il n’est pas inclus.

ppSignerContext [out]

facultatif. Adresse d’un pointeur vers la structure SIGNER_CONTEXT qui contient l’objet BLOB signé. Lorsque vous avez terminé d’utiliser la structure SIGNER_CONTEXT , libérez-la en appelant la fonction SignerFreeSignerContext .

pCryptoPolicy [in, facultatif]

Le cas échéant, un pointeur vers une structure de CERT_STRONG_SIGN_PARA qui contient les paramètres utilisés pour case activée pour les signatures fortes. L’horodatage doit passer cette stratégie de chiffrement.

Conservés

Réservé. Cette valeur doit être NULL.

Valeur retournée

Si la fonction réussit, la fonction retourne S_OK.

Si la fonction échoue, elle retourne une valeur HRESULT qui indique l’erreur. Les codes d’erreur possibles retournés par cette fonction incluent, sans s’y limiter, les éléments suivants. Pour obtenir la liste des codes d’erreur courants, consultez Valeurs HRESULT courantes.

Code de retour Description
E_INVALIDARG
Cette erreur peut être retournée pour les conditions suivantes :
  • Vous devez définir SIGNER_TIMESTAMP_AUTHENTICODE ou SIGNER_TIMESTAMP_RFC3161 pour le paramètre dwFlags .
  • Le paramètre pReserved doit être NULL.
  • Si vous définissez l’indicateur SIGNER_TIMESTAMP_AUTHENTICODE dans le paramètre dwFlags , vous devez définir le paramètre dwIndex sur zéro.

 

Configuration requise

Condition requise Valeur
Client minimal pris en charge
Windows 8 [applications de bureau uniquement]
Serveur minimal pris en charge
Windows Server 2012 [applications de bureau uniquement]
DLL
Mssign32.dll

Voir aussi

SignerTimeStamp

SignerTimeStampEx

SignerTimeStampEx2