ECDiffieHellmanCng.DeriveKeyTls Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Performs key derivation using the TLS (Transport Layer Security) 1.1 PRF (Pseudo-Random Function).
public:
override cli::array <System::Byte> ^ DeriveKeyTls(System::Security::Cryptography::ECDiffieHellmanPublicKey ^ otherPartyPublicKey, cli::array <System::Byte> ^ prfLabel, cli::array <System::Byte> ^ prfSeed);
public override byte[] DeriveKeyTls (System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, byte[] prfLabel, byte[] prfSeed);
override this.DeriveKeyTls : System.Security.Cryptography.ECDiffieHellmanPublicKey * byte[] * byte[] -> byte[]
Public Overrides Function DeriveKeyTls (otherPartyPublicKey As ECDiffieHellmanPublicKey, prfLabel As Byte(), prfSeed As Byte()) As Byte()
Parameters
- otherPartyPublicKey
- ECDiffieHellmanPublicKey
The other party's public key.
- prfLabel
- Byte[]
The ASCII-encoded PRF label.
- prfSeed
- Byte[]
The 64-byte PRF seed.
Returns
The first 48 bytes from the TLS 1.1 PRF, using the shared secret as the key.
Exceptions
A derived class must override this method.
The curve used by otherPartyPublicKey
has a different size than the curve from this key.
otherPartyPublicKey
, prfLabel
or prfSeed
is null
.
prfSeed
is not exactly 64 bytes in length.
-or-
The curve used by otherPartyPublicKey
is different than the curve from this key.
-or-
This instance represents only a public key.