Rfc2898DeriveBytes.CryptDeriveKey(String, String, Int32, Byte[]) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
注意
Rfc2898DeriveBytes.CryptDeriveKey is obsolete and is not supported. Use PasswordDeriveBytes.CryptDeriveKey instead.
从 Rfc2898DeriveBytes 对象导出加密密钥。
public:
cli::array <System::Byte> ^ CryptDeriveKey(System::String ^ algname, System::String ^ alghashname, int keySize, cli::array <System::Byte> ^ rgbIV);
public byte[] CryptDeriveKey (string algname, string alghashname, int keySize, byte[] rgbIV);
[System.Obsolete("Rfc2898DeriveBytes.CryptDeriveKey is obsolete and is not supported. Use PasswordDeriveBytes.CryptDeriveKey instead.", DiagnosticId="SYSLIB0033", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public byte[] CryptDeriveKey (string algname, string alghashname, int keySize, byte[] rgbIV);
member this.CryptDeriveKey : string * string * int * byte[] -> byte[]
[<System.Obsolete("Rfc2898DeriveBytes.CryptDeriveKey is obsolete and is not supported. Use PasswordDeriveBytes.CryptDeriveKey instead.", DiagnosticId="SYSLIB0033", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
member this.CryptDeriveKey : string * string * int * byte[] -> byte[]
Public Function CryptDeriveKey (algname As String, alghashname As String, keySize As Integer, rgbIV As Byte()) As Byte()
参数
- algname
- String
为其导出密钥的算法名称。
- alghashname
- String
用于导出密钥的哈希算法名称。
- keySize
- Int32
要导出的密钥的大小(以位为单位)。
- rgbIV
- Byte[]
用于导出密钥的初始化向量 (IV)。
返回
Byte[]
导出的密钥。
- 属性
例外
keySize
参数不正确。
- 或 -
无法获取加密服务提供程序 (CSP)。
- 或 -
algname
参数不是有效的算法名称。
- 或 -
alghashname
参数不是有效的哈希算法名称。
注解
此函数是加密 API 函数 CryptDeriveKey () 的包装器,旨在使用加密 API 提供与应用程序的互操作性。
如果 参数 keySize
设置为 0 位,则使用指定算法的默认密钥大小。