SslExportKeyingMaterial fonction)

Exporte le matériel de génération de clé selon la norme RFC 5705. Cette fonction utilise la fonction TLS aléatoire pour produire une mémoire tampon d’octets de l’élément de clé. Elle prend une référence au secret principal, l’étiquette disambiguating ASCII, les valeurs aléatoires client et serveur, et éventuellement les données de contexte de l’application.

Syntaxe

SECURITY_STATUS WINAPI SslExportKeyingMaterial(
  _In_     NCRYPT_PROV_HANDLE hSslProvider,
  _In_     NCRYPT_KEY_HANDLE  hMasterKey,
  _In_     PCHAR              sLabel,
  _In_     PBYTE              pbRandoms,
  _In_     DWORD              cbRandoms,
  _In_opt_ PBYTE              pbContextValue,
  _In_     WORD               cbContextValue,
  _Out_    PBYTE              pbOutput,
  _In_     DWORD              cbOutput,
  _In_     DWORD              dwFlags
);

Paramètres

hSslProvider [ dans]

Handle de l’instance du fournisseur de protocole TLS.

hMasterKey [ dans]

Handle de l’objet de clé principale qui sera utilisé pour créer le support de génération de clés à br exporté.

slabel [ dans]

chaîne d’étiquette ASCII terminée par un caractère NUL. Schannel supprime le caractère null de fin avant de le passer à la fonction Pseudo-aléatoire.

pbRandoms [ dans]

Pointeur vers une mémoire tampon qui contient une concaténation des valeurs aléatoires _ aléatoires du client et du serveur _ de la connexion TLS.

cbRandoms [ dans]

Longueur, en octets, de la mémoire tampon pbRandoms .

pbContextValue [ dans, facultatif]

Pointeur vers une mémoire tampon qui contient le contexte d’application. Si pbContextValue a la valeur null, cbContextValue doit être égal à zéro.

cbContextValue [ dans]

Longueur, en octets, de la mémoire tampon pbContextValue .

pbOutput [ à]

Adresse d’une mémoire tampon qui reçoit le support de génération de clé exporté. Le paramètre cbOutput contient la taille de cette mémoire tampon. Cette valeur ne peut pas être null.

cbOutput [ dans]

Longueur, en octets, de la mémoire tampon pbOutput . Doit être supérieur à zéro.

dwFlags [ dans]

Non utilisé. Doit être défini à zéro.

Valeur de retour

Si la fonction est réussie, elle retourne zéro.

Si la fonction échoue, elle retourne une valeur d’erreur différente de zéro.

Les codes de retour possibles incluent, mais ne sont pas limités à, les éléments suivants.

Code/valeur de retour Description
NPD _ _Handle 0X80090026L non valide
L’un des handles fournis n’est pas valide.

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows 10 [ applications de bureau uniquement]
Serveur minimal pris en charge
Windows Server 2016 [ applications de bureau uniquement]
En-tête
Sslprovider. h
DLL
Ncrypt.dll