ECDiffieHellmanCng::DeriveKeyMaterial Method (CngKey^)

 
System_CAPS_noteNote

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Derives the key material that is generated from the secret agreement between two parties, given a CngKey object that contains the second party's public key.

Namespace:   System.Security.Cryptography
Assembly:  System.Core (in System.Core.dll)

public:
array<unsigned char>^ DeriveKeyMaterial(
	CngKey^ otherPartyPublicKey
)

Parameters

otherPartyPublicKey
Type: System.Security.Cryptography::CngKey^

An object that contains the public part of the Elliptic Curve Diffie-Hellman (ECDH) key from the other party in the key exchange.

Return Value

Type: array<System::Byte>^

A byte array that contains the key material. This information is generated from the secret agreement that is calculated from the current object's private key and the specified public key.

Exception Condition
ArgumentNullException

otherPartyPublicKey is null.

ArgumentException

otherPartyPublicKey is invalid. Either its AlgorithmGroup property does not specify ECDiffieHellman or its key size does not match the key size of this instance.

InvalidOperationException

This object's KeyDerivationFunction property specifies the Tls key derivation function, but either Label or Seed is null.

CryptographicException

All other errors.

.NET Framework
Available since 3.5
Return to top
Show: