Поделиться через


ECDiffieHellmanCng.DeriveKeyFromHash Метод

Определение

Выполняет формирование ключа с использованием указанного хэш-алгоритма с дополнительными данными, добавленными в начале или конце.

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

Параметры

otherPartyPublicKey
ECDiffieHellmanPublicKey

Открытый ключ другой стороны.

hashAlgorithm
HashAlgorithmName

Хэш-алгоритм, используемый для получения материала ключа.

secretPrepend
Byte[]

Значение, добавляемое к производному секрету (в начало) перед хэшированием.

secretAppend
Byte[]

Значение, добавляемое к производному секрету перед хэшированием.

Возвращаемое значение

Byte[]

Хэш общего секрета после добавления данных по запросу в начале или конце.

Исключения

Производный класс должен переопределять этот метод.

Размер кривой, используемой параметром otherPartyPublicKey, отличается от размера кривой из этого ключа.

-или-

В параметре hashAlgorithm не указан хэш.

otherPartyPublicKey имеет значение null.

Кривая, используемая параметром otherPartyPublicKey, отличается от кривой из этого ключа.

-или-

Этот экземпляр представляет только открытый ключ.

Применяется к