Share via


SymmetricAlgorithm.DecryptCbc 方法

定义

重载

DecryptCbc(Byte[], Byte[], PaddingMode)

使用 CBC 模式和指定填充模式解密数据。

DecryptCbc(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, PaddingMode)

使用 CBC 模式和指定填充模式解密数据。

DecryptCbc(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, PaddingMode)

将数据解密到指定的缓冲区,使用 CBC 模式和指定的填充模式。

DecryptCbc(Byte[], Byte[], PaddingMode)

Source:
SymmetricAlgorithm.cs
Source:
SymmetricAlgorithm.cs
Source:
SymmetricAlgorithm.cs

使用 CBC 模式和指定填充模式解密数据。

public byte[] DecryptCbc (byte[] ciphertext, byte[] iv, System.Security.Cryptography.PaddingMode paddingMode = System.Security.Cryptography.PaddingMode.PKCS7);
member this.DecryptCbc : byte[] * byte[] * System.Security.Cryptography.PaddingMode -> byte[]
Public Function DecryptCbc (ciphertext As Byte(), iv As Byte(), Optional paddingMode As PaddingMode = System.Security.Cryptography.PaddingMode.PKCS7) As Byte()

参数

ciphertext
Byte[]

要解密的数据。

iv
Byte[]

初始化向量。

paddingMode
PaddingMode

用于生成密码文本并在解密期间删除的填充模式。

返回

Byte[]

解密的纯文本数据。

例外

ciphertextivnull

paddingMode 不是有效的填充模式。

iv 长度不正确。 调用方应传递长度完全相同 BlockSize 的初始化向量,该向量转换为字节 (BlockSize / 8) 。

无法成功解密密码文本。

注解

此方法的行为由 TryDecryptCbcCore(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, PaddingMode, Int32)定义。

适用于

DecryptCbc(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, PaddingMode)

Source:
SymmetricAlgorithm.cs
Source:
SymmetricAlgorithm.cs
Source:
SymmetricAlgorithm.cs

使用 CBC 模式和指定填充模式解密数据。

public byte[] DecryptCbc (ReadOnlySpan<byte> ciphertext, ReadOnlySpan<byte> iv, System.Security.Cryptography.PaddingMode paddingMode = System.Security.Cryptography.PaddingMode.PKCS7);
member this.DecryptCbc : ReadOnlySpan<byte> * ReadOnlySpan<byte> * System.Security.Cryptography.PaddingMode -> byte[]
Public Function DecryptCbc (ciphertext As ReadOnlySpan(Of Byte), iv As ReadOnlySpan(Of Byte), Optional paddingMode As PaddingMode = System.Security.Cryptography.PaddingMode.PKCS7) As Byte()

参数

ciphertext
ReadOnlySpan<Byte>

要解密的数据。

iv
ReadOnlySpan<Byte>

初始化向量。

paddingMode
PaddingMode

用于生成密码文本并在解密期间删除的填充模式。

返回

Byte[]

解密的纯文本数据。

例外

paddingMode 不是有效的填充模式。

iv 长度不正确。 调用方应传递长度完全相同 BlockSize 的初始化向量,该向量转换为字节 (BlockSize / 8) 。

无法成功解密密码文本。

注解

此方法的行为由 TryDecryptCbcCore(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, PaddingMode, Int32)定义。

适用于

DecryptCbc(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, PaddingMode)

Source:
SymmetricAlgorithm.cs
Source:
SymmetricAlgorithm.cs
Source:
SymmetricAlgorithm.cs

将数据解密到指定的缓冲区,使用 CBC 模式和指定的填充模式。

public int DecryptCbc (ReadOnlySpan<byte> ciphertext, ReadOnlySpan<byte> iv, Span<byte> destination, System.Security.Cryptography.PaddingMode paddingMode = System.Security.Cryptography.PaddingMode.PKCS7);
member this.DecryptCbc : ReadOnlySpan<byte> * ReadOnlySpan<byte> * Span<byte> * System.Security.Cryptography.PaddingMode -> int
Public Function DecryptCbc (ciphertext As ReadOnlySpan(Of Byte), iv As ReadOnlySpan(Of Byte), destination As Span(Of Byte), Optional paddingMode As PaddingMode = System.Security.Cryptography.PaddingMode.PKCS7) As Integer

参数

ciphertext
ReadOnlySpan<Byte>

要解密的数据。

iv
ReadOnlySpan<Byte>

初始化向量。

destination
Span<Byte>

用于接收纯文本数据的缓冲区。

paddingMode
PaddingMode

用于生成密码文本并在解密期间删除的填充模式。

返回

写入的字节总数 destination

例外

paddingMode 不是有效的填充模式。

iv 长度不正确。 调用方应传递长度完全相同 BlockSize 的初始化向量,该向量转换为字节 (BlockSize / 8) 。

无法成功解密密码文本。

中的 destination 缓冲区太小,无法保存纯文本数据。

注解

此方法的行为由 TryDecryptCbcCore(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, PaddingMode, Int32)定义。

适用于