Funzione NCryptSecretAgreement (ncrypt.h)
La funzione NCryptSecretAgreement crea un valore del contratto segreto da una chiave privata e una chiave pubblica.
Sintassi
SECURITY_STATUS NCryptSecretAgreement(
[in] NCRYPT_KEY_HANDLE hPrivKey,
[in] NCRYPT_KEY_HANDLE hPubKey,
[out] NCRYPT_SECRET_HANDLE *phAgreedSecret,
[in] DWORD dwFlags
);
Parametri
[in] hPrivKey
Handle della chiave privata da usare per creare il valore del contratto segreto. Questa chiave e la chiave hPubKey devono provenire dallo stesso provider di archiviazione delle chiavi.
[in] hPubKey
Handle della chiave pubblica da usare per creare il valore del contratto segreto. Questa chiave e la chiave hPrivKey devono provenire dallo stesso provider di archiviazione delle chiavi.
[out] phAgreedSecret
Puntatore a una variabile NCRYPT_SECRET_HANDLE che riceve un handle che rappresenta il valore del contratto segreto. Quando questo handle non è più necessario, rilasciarlo passandolo alla funzione NCryptFreeObject .
[in] dwFlags
Flag che modificano il comportamento della funzione. Può essere zero o una combinazione di uno o più dei valori seguenti. Il set di flag validi è specifico per ogni provider di archiviazione delle chiavi. Il flag seguente si applica a tutti i provider.
Valore restituito
Restituisce un codice di stato che indica l'esito positivo o negativo della funzione.
I codici restituiti possibili includono, a titolo esemplificativo, quanto segue.
Codice restituito | Descrizione |
---|---|
|
La funzione ha avuto esito positivo. |
|
Il parametro hPrivKey o hPubKey non è valido. |
|
Uno o più parametri non sono validi. |
|
Si è verificato un errore di allocazione della memoria. |
Commenti
Un servizio non deve chiamare questa funzione dalla funzione StartService. Se un servizio chiama questa funzione dalla funzione StartService, può verificarsi un deadlock e il servizio potrebbe smettere di rispondere.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows Vista [app desktop | App UWP] |
Server minimo supportato | Windows Server 2008 [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | ncrypt.h |
Libreria | Ncrypt.lib |
DLL | Ncrypt.dll |