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)

Source:
ECDiffieHellman.cs
Source:
ECDiffieHellman.cs
Source:
ECDiffieHellman.cs

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

C#
public byte[] DeriveKeyFromHash (System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm);

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 en passant null en tant que valeurs ajoutées et ajoutées.

S’applique à

.NET 9 et autres versions
Produit Versions
.NET Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.1

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

C#
public virtual byte[] DeriveKeyFromHash (System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, byte[]? secretPrepend, byte[]? secretAppend);
C#
public virtual byte[] DeriveKeyFromHash (System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, byte[] secretPrepend, byte[] secretAppend);

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

Si la valeur de secretPrepend ou secretAppend est null, ils sont traités comme des tableaux vides.

S’applique à

.NET 9 et autres versions
Produit Versions
.NET Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.1