SignerTimeStampEx2 function

The SignerTimeStampEx2 function time stamps the specified subject and optionally returns a pointer to a SIGNER_CONTEXT structure that contains a pointer to a BLOB. This function can be used to perform X.509 Public Key Infrastructure, RFC 3161–compliant, time stamps.


This function has no associated header file or import library. To call this function, you must create a user-defined header file and use the LoadLibrary and GetProcAddress functions to dynamically link to Mssign32.dll.



HRESULT WINAPI SignerTimeStampEx2(
  _Reserved_ DWORD               dwFlags,
  _In_       SIGNER_SUBJECT_INFO *pSubjectInfo,
  _In_       LPCWSTR             pwszHttpTimeStamp,
  _In_       ALG_ID              dwAlgId,
  _In_       PCRYPT_ATTRIBUTES   psRequest,
  _In_       LPVOID              pSipData,
  _Out_      SIGNER_CONTEXT      **ppSignerContext 


dwFlags [in]

Value that specifies the type of time stamp to generate. This parameter can be one of the following values. The values are mutually exclusive.

Value Meaning
Specifies an Authenticode time stamp.
Specifies an RFC 3161–compliant time stamp.


pSubjectInfo [in]

The address of a SIGNER_SUBJECT_INFO structure that represents the subject to be time stamped.

pwszHttpTimeStamp [in]

The address of a null-terminated Unicode string that contains the URL of a time stamp server.

dwAlgId [in]

Specifies a hash algorithm to be used for performing RFC 3161–compliant time stamps. This parameter is ignored for Authenticode time stamps.

psRequest [in]

Optional. The address of a CRYPT_ATTRIBUTES structure that contains additional attributes that are added to the time stamp request.

This parameter is optional and can be NULL if it is not included.

pSipData [in]

Optional. A 32-bit value that is passed as additional data to subject interface package (SIP) functions. The format and content of this parameter is defined by the SIP provider.

This parameter is optional and can be NULL if it is not included.

ppSignerContext [out]

Optional. The address of a pointer to the SIGNER_CONTEXT structure that contains the signed BLOB. When you have finished using the SIGNER_CONTEXT structure, free it by calling the SignerFreeSignerContext function.

Return value

If the function succeeds, the function returns S_OK.

If the function fails, it returns an HRESULT value that indicates the error. For a list of common error codes, see Common HRESULT Values.


Requirement Value
Minimum supported client
Windows 7 [desktop apps only]
Minimum supported server
Windows Server 2008 R2 [desktop apps only]

See also