ECDiffieHellman.DeriveKeyFromHash Méthode

Définition

Effectue une dérivation de clés à l’aide d’un algorithme de hachage spécifié.

Surcharges

DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName)

Effectue une dérivation de clés à l’aide d’un algorithme de hachage spécifié.

DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName, 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 de hachage spécifié avec des données facultatives ajoutées au début ou à la fin.

DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName)

Effectue une dérivation de clés à l’aide d’un algorithme de hachage spécifié.

public:
 cli::array <System::Byte> ^ DeriveKeyFromHash(System::Security::Cryptography::ECDiffieHellmanPublicKey ^ otherPartyPublicKey, System::Security::Cryptography::HashAlgorithmName hashAlgorithm);
public byte[] DeriveKeyFromHash (System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm);
member this.DeriveKeyFromHash : System.Security.Cryptography.ECDiffieHellmanPublicKey * System.Security.Cryptography.HashAlgorithmName -> byte[]
Public Function DeriveKeyFromHash (otherPartyPublicKey As ECDiffieHellmanPublicKey, hashAlgorithm As HashAlgorithmName) 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é.

Retours

Byte[]

Hachage 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 DeriveKeyFromHash méthode qui passe null en tant que valeurs ajoutées et ajoutées.

S’applique à

DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName, 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 de hachage spécifié avec des données facultatives ajoutées au début ou à la fin.

public:
 virtual cli::array <System::Byte> ^ DeriveKeyFromHash(System::Security::Cryptography::ECDiffieHellmanPublicKey ^ otherPartyPublicKey, System::Security::Cryptography::HashAlgorithmName hashAlgorithm, cli::array <System::Byte> ^ secretPrepend, cli::array <System::Byte> ^ secretAppend);
public virtual byte[] DeriveKeyFromHash (System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, byte[]? secretPrepend, byte[]? secretAppend);
public virtual byte[] DeriveKeyFromHash (System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, byte[] secretPrepend, byte[] secretAppend);
abstract member DeriveKeyFromHash : System.Security.Cryptography.ECDiffieHellmanPublicKey * System.Security.Cryptography.HashAlgorithmName * byte[] * byte[] -> byte[]
override this.DeriveKeyFromHash : System.Security.Cryptography.ECDiffieHellmanPublicKey * System.Security.Cryptography.HashAlgorithmName * byte[] * byte[] -> byte[]
Public Overridable Function DeriveKeyFromHash (otherPartyPublicKey As ECDiffieHellmanPublicKey, hashAlgorithm As HashAlgorithmName, 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é.

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

Byte[]

Hachage 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 effectue en interne la courbe elliptique Diffie-Hellman contrat clé pour produire le secret partagé (z). La valeur de retour de cette méthode est le résultat de l’utilisation de HASH(secretPrepend || z || secretAppend) l’algorithme de hachage spécifié, où || signifie concaténation.

Si la valeur ou secretPrepend secretAppend l’est null, elles sont traitées comme des tableaux vides.

S’applique à