Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
La fonction NCryptSecretAgreement crée une valeur d’accord secret à partir d’une clé privée et d’une clé publique.
Syntaxe
SECURITY_STATUS NCryptSecretAgreement(
[in] NCRYPT_KEY_HANDLE hPrivKey,
[in] NCRYPT_KEY_HANDLE hPubKey,
[out] NCRYPT_SECRET_HANDLE *phAgreedSecret,
[in] DWORD dwFlags
);
Paramètres
[in] hPrivKey
Handle de la clé privée à utiliser pour créer la valeur du contrat de secret. Cette clé et la clé hPubKey doivent provenir du même fournisseur de stockage de clés.
[in] hPubKey
Handle de la clé publique à utiliser pour créer la valeur du contrat de secret. Cette clé et la clé hPrivKey doivent provenir du même fournisseur de stockage de clés.
[out] phAgreedSecret
Pointeur vers une variable NCRYPT_SECRET_HANDLE qui reçoit un handle qui représente la valeur du contrat secret. Lorsque ce handle n’est plus nécessaire, relâchez-le en le transmettant à la fonction NCryptFreeObject .
[in] dwFlags
Indicateurs qui modifient le comportement de la fonction. Il peut s’agir de zéro ou d’une combinaison d’une ou plusieurs des valeurs suivantes. L’ensemble d’indicateurs valides est spécifique à chaque fournisseur de stockage de clés. L’indicateur suivant s’applique à tous les fournisseurs.
Valeur retournée
Retourne un code status qui indique la réussite ou l’échec de la fonction.
Les codes de retour possibles incluent, sans s’y limiter, les éléments suivants.
| Code de retour | Description |
|---|---|
|
La fonction a réussi. |
|
Le paramètre hPrivKey ou hPubKey n’est pas valide. |
|
Un ou plusieurs paramètres ne sont pas valides. |
|
Un échec d’allocation de mémoire s’est produit. |
Remarques
Un service ne doit pas appeler cette fonction à partir de sa fonction StartService. Si un service appelle cette fonction à partir de sa fonction StartService, un blocage peut se produire et le service peut cesser de répondre.
Configuration requise
| Condition requise | Valeur |
|---|---|
| Client minimal pris en charge | Windows Vista [applications de bureau | applications UWP] |
| Serveur minimal pris en charge | Windows Server 2008 [applications de bureau | applications UWP] |
| Plateforme cible | Windows |
| En-tête | ncrypt.h |
| Bibliothèque | Ncrypt.lib |
| DLL | Ncrypt.dll |