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és à l’aide d’un algorithme HMAC (Hash-based Message Authentication Code) spécifié.
Surcharges
DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[], Byte[]) |
En cas d’implémentation dans une classe dérivée, effectue une dérivation de clés à l’aide d’un algorithme HMAC (Hash-based Message Authentication Code) spécifié avec des données facultatives ajoutées au début ou à la fin. |
DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[]) |
Effectue une dérivation de clés à l’aide d’un algorithme HMAC (Hash-based Message Authentication Code) spécifié. |
DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[], Byte[])
- Source:
- ECDiffieHellman.cs
- Source:
- ECDiffieHellman.cs
- Source:
- ECDiffieHellman.cs
En cas d’implémentation dans une classe dérivée, effectue une dérivation de clés à l’aide d’un algorithme HMAC (Hash-based Message Authentication Code) spécifié avec des données facultatives ajoutées au début ou à la fin.
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);
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
La clé publique de l’autre partie.
- hashAlgorithm
- HashAlgorithmName
L’algorithme de hachage à utiliser pour dériver la clé.
- hmacKey
- Byte[]
La clé du HMAC.
- secretPrepend
- Byte[]
Valeur à ajouter avant la clé secrète dérivée avant le hachage.
- secretAppend
- Byte[]
Valeur à ajouter après la clé secrète dérivée avant le hachage.
Retours
HMAC du secret partagé après l’ajout au début ou à la fin de 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 celle de cette clé.
- ou -
Le paramètre hashAlgorithm
ne spécifie pas de hachage.
otherPartyPublicKey
a la valeur null
.
La courbe utilisée par otherPartyPublicKey
est différente de celle de cette clé.
- ou -
Cette instance représente uniquement une clé publique.
Remarques
Cette méthode exécute en interne la courbe elliptique Diffie-Hellman accord clé pour produire le secret partagé (z
).
Quand hmacKey
a la null
valeur , 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 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 de secretPrepend
ou secretAppend
est null
, ils sont traités comme des tableaux vides.
S’applique à
DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[])
- Source:
- ECDiffieHellman.cs
- Source:
- ECDiffieHellman.cs
- Source:
- ECDiffieHellman.cs
Effectue une dérivation de clés à l’aide d’un algorithme HMAC (Hash-based Message Authentication Code) 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);
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
La clé publique de l’autre partie.
- hashAlgorithm
- HashAlgorithmName
L’algorithme de hachage à utiliser pour dériver la clé.
- hmacKey
- Byte[]
La clé du HMAC.
Retours
HMAC du secret partagé.
Exceptions
La courbe utilisée par otherPartyPublicKey
a une taille différente de celle de cette clé.
- ou -
Le paramètre hashAlgorithm
ne spécifie pas de hachage.
otherPartyPublicKey
a la valeur null
.
La courbe utilisée par otherPartyPublicKey
est différente de celle de cette clé.
- ou -
Cette instance représente uniquement une clé publique.
Remarques
Cette surcharge appelle la DeriveKeyFromHmac méthode en passant null
en tant que valeurs ajoutées et ajoutées.