ECDiffieHellmanCng.DeriveKeyMaterial 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
派生从双方之间的机密协议生成的密钥材料。
重载
DeriveKeyMaterial(CngKey) |
在给定包含第二方公钥的 CngKey 对象的情况下,派生从双方之间的机密协议生成的密钥材料。 |
DeriveKeyMaterial(ECDiffieHellmanPublicKey) |
在给定包含第二方公钥的 ECDiffieHellmanPublicKey 对象的情况下,派生从双方之间的机密协议生成的密钥材料。 |
注解
椭圆曲线 Diffie-Hellman (ECDH) 算法接受私钥和对方的公钥作为输入,并生成机密协议作为输出。 密钥派生函数 (KDF) 然后获取机密协议,并生成密钥材料作为输出。
DeriveKeyMaterial(CngKey)
- Source:
- Cng.NotSupported.cs
- Source:
- Cng.NotSupported.cs
- Source:
- Cng.NotSupported.cs
在给定包含第二方公钥的 CngKey 对象的情况下,派生从双方之间的机密协议生成的密钥材料。
public:
cli::array <System::Byte> ^ DeriveKeyMaterial(System::Security::Cryptography::CngKey ^ otherPartyPublicKey);
public byte[] DeriveKeyMaterial (System.Security.Cryptography.CngKey otherPartyPublicKey);
[System.Security.SecurityCritical]
public byte[] DeriveKeyMaterial (System.Security.Cryptography.CngKey otherPartyPublicKey);
override this.DeriveKeyMaterial : System.Security.Cryptography.CngKey -> byte[]
[<System.Security.SecurityCritical>]
override this.DeriveKeyMaterial : System.Security.Cryptography.CngKey -> byte[]
Public Function DeriveKeyMaterial (otherPartyPublicKey As CngKey) As Byte()
参数
- otherPartyPublicKey
- CngKey
一个对象,它包含来自密钥交换中另一方的椭圆曲线 Diffie-Hellman (ECDH) 密钥的公共部分。
返回
一个包含密钥材料的字节数组。 此信息从机密协议生成,机密协议是从当前对象的私钥和指定的公钥计算得到的。
- 属性
例外
otherPartyPublicKey
为 null
。
otherPartyPublicKey
无效。 它的 AlgorithmGroup 属性未指定 ECDiffieHellman,或者其密钥大小与此实例的密钥大小不匹配。
此对象的 KeyDerivationFunction 属性指定了 Tls 密钥派生函数,但 Label 或 Seed 为 null
。
所有其他错误。
适用于
DeriveKeyMaterial(ECDiffieHellmanPublicKey)
在给定包含第二方公钥的 ECDiffieHellmanPublicKey 对象的情况下,派生从双方之间的机密协议生成的密钥材料。
public:
override cli::array <System::Byte> ^ DeriveKeyMaterial(System::Security::Cryptography::ECDiffieHellmanPublicKey ^ otherPartyPublicKey);
public override byte[] DeriveKeyMaterial (System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey);
override this.DeriveKeyMaterial : System.Security.Cryptography.ECDiffieHellmanPublicKey -> byte[]
Public Overrides Function DeriveKeyMaterial (otherPartyPublicKey As ECDiffieHellmanPublicKey) As Byte()
参数
- otherPartyPublicKey
- ECDiffieHellmanPublicKey
密钥交换中另一方的公钥。
返回
一个包含密钥材料的字节数组。 此信息从机密协议生成,机密协议是从当前对象的私钥和指定的公钥计算得到的。
例外
otherPartyPublicKey
为 null
。
otherPartyPublicKey
不是 ECDiffieHellmanCngPublicKey 密钥。