ECDiffieHellman.DeriveKeyFromHmac Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Effectue une dérivation de clé à l’aide d’un algorithme HMAC (Code d’authentification de message basé sur le hachage) spécifié.
Surcharges
| Nom | Description |
|---|---|
| DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[]) |
Effectue une dérivation de clé à l’aide d’un algorithme HMAC (Code d’authentification de message basé sur le hachage) spécifié. |
| DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[], Byte[]) |
En cas d’implémentation dans une classe dérivée, effectue une dérivation de clé à l’aide d’un algorithme HMAC (Code d’authentification de message basé sur hash) spécifié avec des données facultatives ajoutées ou ajoutées. |
DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[])
Effectue une dérivation de clé à l’aide d’un algorithme HMAC (Code d’authentification de message basé sur le hachage) spécifié.
public:
cli::array <System::Byte> ^ DeriveKeyFromHmac(System::Security::Cryptography::ECDiffieHellmanPublicKey ^ otherPartyPublicKey, System::Security::Cryptography::HashAlgorithmName hashAlgorithm, cli::array <System::Byte> ^ hmacKey);
public byte[] DeriveKeyFromHmac(System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, byte[] hmacKey);
member this.DeriveKeyFromHmac : System.Security.Cryptography.ECDiffieHellmanPublicKey * System.Security.Cryptography.HashAlgorithmName * byte[] -> byte[]
Public Function DeriveKeyFromHmac (otherPartyPublicKey As ECDiffieHellmanPublicKey, hashAlgorithm As HashAlgorithmName, hmacKey As Byte()) As Byte()
Paramètres
- otherPartyPublicKey
- ECDiffieHellmanPublicKey
Clé publique de l’autre partie.
- hashAlgorithm
- HashAlgorithmName
Algorithme de hachage à utiliser pour dériver le matériau de clé.
- hmacKey
- Byte[]
Clé du HMAC.
Retours
HMAC du secret partagé.
Exceptions
La courbe utilisée par otherPartyPublicKey a une taille différente de la courbe de cette clé.
-ou-
Le hashAlgorithm paramètre ne spécifie pas de hachage.
otherPartyPublicKey a la valeur null.
La courbe utilisée par otherPartyPublicKey est différente de la courbe de cette clé.
-ou-
Cette instance représente uniquement une clé publique.
Remarques
Cette surcharge appelle la DeriveKeyFromHmac méthode qui passe null en tant que valeurs ajoutées et prédéfinies.
S’applique à
DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[], Byte[])
En cas d’implémentation dans une classe dérivée, effectue une dérivation de clé à l’aide d’un algorithme HMAC (Code d’authentification de message basé sur hash) spécifié avec des données facultatives ajoutées ou ajoutées.
public:
virtual cli::array <System::Byte> ^ DeriveKeyFromHmac(System::Security::Cryptography::ECDiffieHellmanPublicKey ^ otherPartyPublicKey, System::Security::Cryptography::HashAlgorithmName hashAlgorithm, cli::array <System::Byte> ^ hmacKey, cli::array <System::Byte> ^ secretPrepend, cli::array <System::Byte> ^ secretAppend);
public virtual byte[] DeriveKeyFromHmac(System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, byte[] hmacKey, byte[] secretPrepend, byte[] secretAppend);
abstract member DeriveKeyFromHmac : System.Security.Cryptography.ECDiffieHellmanPublicKey * System.Security.Cryptography.HashAlgorithmName * byte[] * byte[] * byte[] -> byte[]
override this.DeriveKeyFromHmac : System.Security.Cryptography.ECDiffieHellmanPublicKey * System.Security.Cryptography.HashAlgorithmName * byte[] * byte[] * byte[] -> byte[]
Public Overridable Function DeriveKeyFromHmac (otherPartyPublicKey As ECDiffieHellmanPublicKey, hashAlgorithm As HashAlgorithmName, hmacKey As Byte(), secretPrepend As Byte(), secretAppend As Byte()) As Byte()
Paramètres
- otherPartyPublicKey
- ECDiffieHellmanPublicKey
Clé publique de l’autre partie.
- hashAlgorithm
- HashAlgorithmName
Algorithme de hachage à utiliser pour dériver le matériau de clé.
- hmacKey
- Byte[]
Clé du HMAC.
- secretPrepend
- Byte[]
Valeur à ajouter au secret dérivé avant le hachage.
- secretAppend
- Byte[]
Valeur à ajouter au secret dérivé avant le hachage.
Retours
HMAC du secret partagé après avoir prédéfinissant ou ajouté des données comme demandé.
Exceptions
Une classe dérivée doit remplacer cette méthode.
La courbe utilisée par otherPartyPublicKey a une taille différente de la courbe de cette clé.
-ou-
Le hashAlgorithm paramètre ne spécifie pas de hachage.
otherPartyPublicKey a la valeur null.
La courbe utilisée par otherPartyPublicKey est différente de la courbe de cette clé.
-ou-
Cette instance représente uniquement une clé publique.
Remarques
Cette méthode effectue en interne la courbe elliptique Diffie-Hellman contrat clé pour produire le secret partagé (z).
Quand hmacKey c’est nullle cas, la valeur de retour de cette méthode est le résultat de l’utilisation de HMAC-HASH(z, secretPrepend || z || secretAppend) l’algorithme HMAC spécifié, où || signifie la concaténation. Sinon, la valeur de retour de cette méthode est le résultat de HMAC-HASH(hmacKey, secretPrepend || z || secretAppend).
Si la valeur ou secretAppend l’est secretPrependnull, elles sont traitées comme des tableaux vides.