ECDiffieHellman.DeriveKeyTls(ECDiffieHellmanPublicKey, Byte[], Byte[]) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
При реализации в производном классе выполняет формирование ключа с использованием псевдослучайной функции (PRF) протокола TLS 1.1.
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[]
Метка PRF с использованием кодировки ASCII.
- prfSeed
- Byte[]
Начальное значение PRF (64-байтовое).
Возвращаемое значение
Первые 48 байт, полученные из функции PRF TLS 1.1 с использованием общего секрета в качестве ключа.
Исключения
Производный класс должен переопределять этот метод.
Размер кривой, используемой параметром otherPartyPublicKey
, отличается от размера кривой из этого ключа.
Параметр otherPartyPublicKey
, prfLabel
или prfSeed
имеет значение null
.
prfSeed
— длина не соответствует 64 байтам.
-или-
Кривая, используемая параметром otherPartyPublicKey
, отличается от кривой из этого ключа.
-или-
Этот экземпляр представляет только открытый ключ.
Комментарии
Этот метод внутренне выполняет соглашение ключа Diffie-Hellman эллиптической кривой для создания общего секрета (z
).
Возвращаемое значение этого метода представляет собой 48-байтовый выход TLS 1.1 PRF (псевдослучайная функция), PRF(z, prfLabel, prfSeed)
.
Дополнительные сведения см. в разделе IETF RFC 4346, раздел 5.