Funzione di callback CryptXmlDllSignData (cryptxml.h)

La funzione CryptXmlDllSignData firma i dati.

La funzione CryptXmlDllSignData viene esposta tramite la funzione CryptXmlDllGetInterface esportata.

Sintassi

CryptXmlDllSignData Cryptxmldllsigndata;

HRESULT Cryptxmldllsigndata(
  [in]            const CRYPT_XML_ALGORITHM *pSignatureMethod,
  [in]            HCRYPTPROV_OR_NCRYPT_KEY_HANDLE hCryptProvOrNCryptKey,
  [in]            DWORD dwKeySpec,
  [in]            const BYTE *pbInput,
  [in]            ULONG cbInput,
  [out, optional] BYTE *pbOutput,
  [in]            ULONG cbOutput,
  [out]           ULONG *pcbResult
)
{...}

Parametri

[in] pSignatureMethod

Puntatore a una struttura CRYPT_XML_ALGORITHM che specifica l'algoritmo.

[in] hCryptProvOrNCryptKey

Handle del provider di servizi di crittografia (CSP) che crea la firma. Questo handle deve essere un handle HCRYPTPROV ottenuto da una chiamata alla funzione CryptAcquireContext o un handle NCRYPT_KEY_HANDLE creato usando la funzione NCryptOpenKey . Le nuove applicazioni devono passare in un handle NCRYPT_KEY_HANDLE .

[in] dwKeySpec

Chiave privata da usare dal contenitore del provider. Questa chiave può essere AT_KEYEXCHANGE o AT_SIGNATURE. Questo parametro viene ignorato se viene usato un handle NCRYPT_KEY_HANDLE nel parametro hCryptProvOrNCryptKey .

[in] pbInput

Puntatore a un buffer contenente il valore del digest da firmare. Il parametro cbInput contiene le dimensioni di questo buffer.

[in] cbInput

Dimensioni, in byte, del buffer a cui punta il parametro pbInput .

[out, optional] pbOutput

Indirizzo di un buffer per ricevere la firma prodotta da questa funzione. Il parametro cbOutput contiene le dimensioni di questo buffer.

Se questo parametro è NULL, questa funzione calcola le dimensioni necessarie per i dati crittografati e restituisce le dimensioni nella posizione a cui punta il parametro pcbResult .

[in] cbOutput

Dimensioni, in byte, del buffer a cui punta il parametro pbOutput .

[out] pcbResult

Puntatore a una variabile DWORD che riceve il numero di byte copiati nel buffer pbOutput . Se pbOutput è NULL, questa riceve le dimensioni, in byte, necessarie per la firma.

Valore restituito

Se la funzione ha esito positivo, la funzione restituisce zero.

Se la funzione ha esito negativo, restituisce un valore HRESULT che indica l'errore.

Requisiti

Requisito Valore
Client minimo supportato Windows 7 [solo app desktop]
Server minimo supportato Windows Server 2008 R2 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione cryptxml.h