BCryptSetProperty, fonction (bcrypt.h)

La fonction BCryptSetProperty définit la valeur d’une propriété nommée pour un objet CNG.

Syntaxe

NTSTATUS BCryptSetProperty(
  [in, out] BCRYPT_HANDLE hObject,
  [in]      LPCWSTR       pszProperty,
  [in]      PUCHAR        pbInput,
  [in]      ULONG         cbInput,
  [in]      ULONG         dwFlags
);

Paramètres

[in, out] hObject

Handle qui représente l’objet CNG pour lequel définir la valeur de propriété.

[in] pszProperty

Pointeur vers une chaîne Unicode terminée par null qui contient le nom de la propriété à définir. Il peut s’agir de l’un des identificateurs de propriétés primitives de chiffrement prédéfinis ou d’un identificateur de propriété personnalisé.

[in] pbInput

Adresse d’une mémoire tampon qui contient la nouvelle valeur de propriété. Le paramètre cbInput contient la taille de cette mémoire tampon.

[in] cbInput

Taille, en octets, de la mémoire tampon pbInput .

[in] dwFlags

Ensemble d’indicateurs qui modifient le comportement de cette fonction. Aucun indicateur n’est défini pour cette fonction.

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
STATUS_SUCCESS
La fonction a réussi.
STATUS_INVALID_HANDLE
Le handle dans le paramètre hObject n’est pas valide.
STATUS_INVALID_PARAMETER
Un ou plusieurs paramètres ne sont pas valides.
STATUS_NOT_SUPPORTED
La propriété nommée spécifiée par le paramètre pszProperty n’est pas prise en charge ou est en lecture seule.

Remarques

Selon les modes de processeur pris en charge par un fournisseur, BCryptSetProperty peut être appelé en mode utilisateur ou en mode noyau. Les appelants en mode noyau peuvent s’exécuter à PASSIVE_LEVELIRQL ou DISPATCH_LEVEL IRQL. Si le niveau IRQL actuel est DISPATCH_LEVEL, tous les pointeurs passés à BCryptSetProperty doivent faire référence à la mémoire non paginée (ou verrouillée). Si l’objet spécifié dans le paramètre hObject est un handle, il doit avoir été ouvert à l’aide de l’indicateur BCRYPT_PROV_DISPATCH .

Pour appeler cette fonction en mode noyau, utilisez Cng.lib, qui fait partie du Kit de développement pilote (DDK). Windows Server 2008 et Windows Vista : Pour appeler cette fonction en mode noyau, utilisez Ksecdd.lib.

Lors de la définition de la valeur de la propriété BCRYPT_CHAINING_MODE, le paramètre pbInput n’est pas lié par cbInput. L’appelant doit s’assurer qu’une chaîne Unicode terminée par null valide est fournie.

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 bcrypt.h
Bibliothèque Bcrypt.lib
DLL Bcrypt.dll