ECDiffieHellman.DeriveKeyTls(ECDiffieHellmanPublicKey, Byte[], Byte[]) メソッド

定義

派生クラスに実装されている場合、TLS (トランスポート層セキュリティ) 1.1 PRF (擬似ランダム関数) を使用してキー派生を実行します。

public:
 virtual cli::array <System::Byte> ^ DeriveKeyTls(System::Security::Cryptography::ECDiffieHellmanPublicKey ^ otherPartyPublicKey, cli::array <System::Byte> ^ prfLabel, cli::array <System::Byte> ^ prfSeed);
public virtual byte[] DeriveKeyTls (System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, byte[] prfLabel, byte[] prfSeed);
abstract member DeriveKeyTls : System.Security.Cryptography.ECDiffieHellmanPublicKey * byte[] * byte[] -> byte[]
override this.DeriveKeyTls : System.Security.Cryptography.ECDiffieHellmanPublicKey * byte[] * byte[] -> byte[]
Public Overridable Function DeriveKeyTls (otherPartyPublicKey As ECDiffieHellmanPublicKey, prfLabel As Byte(), prfSeed As Byte()) As Byte()

パラメーター

otherPartyPublicKey
ECDiffieHellmanPublicKey

もう一方のパーティの公開キー。

prfLabel
Byte[]

ASCII エンコードされた PRF ラベル。

prfSeed
Byte[]

64 バイト PRF シード。

戻り値

Byte[]

キーとして共有シークレットを使用した TLS 1.1 PRF の最初の 48 バイト。

例外

派生クラスはこのメソッドをオーバーライドする必要があります。

otherPartyPublicKey によって使用される曲線のサイズが、このキーの曲線のサイズと異なります。

otherPartyPublicKeyprfLabel、または prfSeednull です。

prfSeed は 64 バイト長に完全には一致しません。

  • または -

otherPartyPublicKey によって使用される曲線が、このキーの曲線と異なります。

  • または -

このインスタンスでは公開キーのみ表されます。

注釈

このメソッドは、共有シークレット (z) を生成するために、キー アグリーメントDiffie-Hellman楕円曲線を内部的に実行します。

このメソッドの戻り値は、TLS 1.1 PRF (擬似ランダム関数) PRF(z, prfLabel, prfSeed)の 48 バイト出力です。

詳細については、 IETF RFC 4346、セクション 5 を参照してください。

適用対象