DES 类

定义

表示数据加密标准 (DES) 算法的基类,所有 DES 实现都必须从此基类派生。

public ref class DES abstract : System::Security::Cryptography::SymmetricAlgorithm
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public abstract class DES : System.Security.Cryptography.SymmetricAlgorithm
public abstract class DES : System.Security.Cryptography.SymmetricAlgorithm
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class DES : System.Security.Cryptography.SymmetricAlgorithm
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
type DES = class
    inherit SymmetricAlgorithm
type DES = class
    inherit SymmetricAlgorithm
[<System.Runtime.InteropServices.ComVisible(true)>]
type DES = class
    inherit SymmetricAlgorithm
Public MustInherit Class DES
Inherits SymmetricAlgorithm
继承
派生
属性

注解

此算法支持 64 位的密钥长度。

注意

提供了较新的对称加密算法,即高级加密标准 (AES) 。 请考虑使用 Aes 类而不是 DES 类。 仅用于 DES 与旧应用程序和数据的兼容性。

构造函数

DES()

初始化 DES 类的新实例。

字段

BlockSizeValue

表示加密操作的块大小(以位为单位)。

(继承自 SymmetricAlgorithm)
FeedbackSizeValue

表示加密操作的反馈大小(以位为单位)。

(继承自 SymmetricAlgorithm)
IVValue

表示对称算法的初始化向量 (IV)。

(继承自 SymmetricAlgorithm)
KeySizeValue

表示对称算法使用的密钥的大小(以位为单位)。

(继承自 SymmetricAlgorithm)
KeyValue

表示对称算法的密钥。

(继承自 SymmetricAlgorithm)
LegalBlockSizesValue

指定对称算法支持的块大小(以位为单位)。

(继承自 SymmetricAlgorithm)
LegalKeySizesValue

指定对称算法支持的密钥大小(以位为单位)。

(继承自 SymmetricAlgorithm)
ModeValue

表示对称算法中使用的密码模式。

(继承自 SymmetricAlgorithm)
PaddingValue

表示对称算法中使用的填充模式。

(继承自 SymmetricAlgorithm)

属性

BlockSize

获取或设置加密操作的块大小(以位为单位)。

(继承自 SymmetricAlgorithm)
FeedbackSize

获取或设置针对密码反馈 (CFB) 和输出反馈 (OFB) 密码模式的加密操作的反馈大小(以位为单位)。

(继承自 SymmetricAlgorithm)
IV

获取或设置对称算法的初始化向量 (IV)。

(继承自 SymmetricAlgorithm)
Key

获取或设置数据加密标准 (DES) 算法的密钥。

KeySize

获取或设置对称算法所用密钥的大小(以位为单位)。

(继承自 SymmetricAlgorithm)
LegalBlockSizes

获取对称算法支持的块大小(以位为单位)。

(继承自 SymmetricAlgorithm)
LegalKeySizes

获取对称算法支持的密钥大小(以位为单位)。

(继承自 SymmetricAlgorithm)
Mode

获取或设置对称算法的运算模式。

(继承自 SymmetricAlgorithm)
Padding

获取或设置对称算法中使用的填充模式。

(继承自 SymmetricAlgorithm)

方法

Clear()

释放 SymmetricAlgorithm 类使用的所有资源。

(继承自 SymmetricAlgorithm)
Create()

创建加密对象的实例以执行数据加密标准 (DES) 算法。

Create(String)
已过时.

创建加密对象的实例以执行数据加密标准 (DES) 算法的指定实现。

CreateDecryptor()

用当前的 Key 属性和初始化向量 (IV) 创建对称解密器对象。

(继承自 SymmetricAlgorithm)
CreateDecryptor(Byte[], Byte[])

当在派生类中重写时,用指定的 Key 属性和初始化向量 (IV) 创建对称解密器对象。

(继承自 SymmetricAlgorithm)
CreateEncryptor()

用当前的 Key 属性和初始化向量 (IV) 创建对称加密器对象。

(继承自 SymmetricAlgorithm)
CreateEncryptor(Byte[], Byte[])

当在派生类中重写时,用指定的 Key 属性和初始化向量 (IV) 创建对称加密器对象。

(继承自 SymmetricAlgorithm)
DecryptCbc(Byte[], Byte[], PaddingMode)

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

(继承自 SymmetricAlgorithm)
DecryptCbc(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, PaddingMode)

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

(继承自 SymmetricAlgorithm)
DecryptCbc(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, PaddingMode)

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

(继承自 SymmetricAlgorithm)
DecryptCfb(Byte[], Byte[], PaddingMode, Int32)

使用具有指定填充模式和反馈大小的 CFB 模式解密数据。

(继承自 SymmetricAlgorithm)
DecryptCfb(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, PaddingMode, Int32)

使用具有指定填充模式和反馈大小的 CFB 模式解密数据。

(继承自 SymmetricAlgorithm)
DecryptCfb(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, PaddingMode, Int32)

使用具有指定填充模式和反馈大小的 CFB 模式将数据解密到指定的缓冲区。

(继承自 SymmetricAlgorithm)
DecryptEcb(Byte[], PaddingMode)

使用具有指定填充模式的 ECB 模式解密数据。

(继承自 SymmetricAlgorithm)
DecryptEcb(ReadOnlySpan<Byte>, PaddingMode)

使用具有指定填充模式的 ECB 模式解密数据。

(继承自 SymmetricAlgorithm)
DecryptEcb(ReadOnlySpan<Byte>, Span<Byte>, PaddingMode)

使用具有指定填充模式的 ECB 模式将数据解密到指定的缓冲区。

(继承自 SymmetricAlgorithm)
Dispose()

释放 SymmetricAlgorithm 类的当前实例所使用的所有资源。

(继承自 SymmetricAlgorithm)
Dispose(Boolean)

释放由 SymmetricAlgorithm 占用的非托管资源,还可以另外再释放托管资源。

(继承自 SymmetricAlgorithm)
EncryptCbc(Byte[], Byte[], PaddingMode)

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

(继承自 SymmetricAlgorithm)
EncryptCbc(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, PaddingMode)

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

(继承自 SymmetricAlgorithm)
EncryptCbc(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, PaddingMode)

使用具有指定填充模式的 CBC 模式将数据加密到指定的缓冲区。

(继承自 SymmetricAlgorithm)
EncryptCfb(Byte[], Byte[], PaddingMode, Int32)

使用 CFB 模式加密具有指定填充模式和反馈大小的数据。

(继承自 SymmetricAlgorithm)
EncryptCfb(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, PaddingMode, Int32)

使用 CFB 模式加密具有指定填充模式和反馈大小的数据。

(继承自 SymmetricAlgorithm)
EncryptCfb(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, PaddingMode, Int32)

使用具有指定填充模式和反馈大小的 CFB 模式将数据加密到指定的缓冲区。

(继承自 SymmetricAlgorithm)
EncryptEcb(Byte[], PaddingMode)

使用具有指定填充模式的 ECB 模式加密数据。

(继承自 SymmetricAlgorithm)
EncryptEcb(ReadOnlySpan<Byte>, PaddingMode)

使用具有指定填充模式的 ECB 模式加密数据。

(继承自 SymmetricAlgorithm)
EncryptEcb(ReadOnlySpan<Byte>, Span<Byte>, PaddingMode)

使用具有指定填充模式的 ECB 模式将数据加密到指定的缓冲区中。

(继承自 SymmetricAlgorithm)
Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
GenerateIV()

当在派生类中重写时,生成用于该算法的随机初始化向量 (IV)。

(继承自 SymmetricAlgorithm)
GenerateKey()

当在派生类中重写时,生成用于该算法的随机密钥 (Key)。

(继承自 SymmetricAlgorithm)
GetCiphertextLengthCbc(Int32, PaddingMode)

获取具有给定填充模式和 CBC 模式下的纯文本长度的密码文本的长度。

(继承自 SymmetricAlgorithm)
GetCiphertextLengthCfb(Int32, PaddingMode, Int32)

获取具有给定填充模式和 CFB 模式下纯文本长度的密码文本的长度。

(继承自 SymmetricAlgorithm)
GetCiphertextLengthEcb(Int32, PaddingMode)

获取在 ECB 模式下具有给定填充模式和纯文本长度的密码文本的长度。

(继承自 SymmetricAlgorithm)
GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetType()

获取当前实例的 Type

(继承自 Object)
IsSemiWeakKey(Byte[])

确定指定的密钥是否为半弱密钥。

IsWeakKey(Byte[])

确定指定的密钥是否为弱密钥。

MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
ToString()

返回表示当前对象的字符串。

(继承自 Object)
TryDecryptCbc(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, Int32, PaddingMode)

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

(继承自 SymmetricAlgorithm)
TryDecryptCbcCore(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, PaddingMode, Int32)

在派生类中重写时,尝试使用具有指定填充模式的 CBC 模式将数据解密到指定的缓冲区。

(继承自 SymmetricAlgorithm)
TryDecryptCfb(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, Int32, PaddingMode, Int32)

尝试将数据解密到指定的缓冲区,使用具有指定填充模式和反馈大小的 CFB 模式。

(继承自 SymmetricAlgorithm)
TryDecryptCfbCore(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, PaddingMode, Int32, Int32)

在派生类中重写时,尝试使用具有指定填充模式和反馈大小的 CFB 模式将数据解密到指定的缓冲区。

(继承自 SymmetricAlgorithm)
TryDecryptEcb(ReadOnlySpan<Byte>, Span<Byte>, PaddingMode, Int32)

尝试使用具有指定填充模式的 ECB 模式将数据解密到指定的缓冲区。

(继承自 SymmetricAlgorithm)
TryDecryptEcbCore(ReadOnlySpan<Byte>, Span<Byte>, PaddingMode, Int32)

在派生类中重写时,尝试使用具有指定填充模式的 ECB 模式将数据解密到指定的缓冲区。

(继承自 SymmetricAlgorithm)
TryEncryptCbc(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, Int32, PaddingMode)

尝试使用具有指定填充模式的 CBC 模式将数据加密到指定的缓冲区。

(继承自 SymmetricAlgorithm)
TryEncryptCbcCore(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, PaddingMode, Int32)

在派生类中重写时,尝试使用具有指定填充模式的 CBC 模式将数据加密到指定的缓冲区中。

(继承自 SymmetricAlgorithm)
TryEncryptCfb(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, Int32, PaddingMode, Int32)

尝试使用具有指定填充模式和反馈大小的 CFB 模式将数据加密到指定的缓冲区。

(继承自 SymmetricAlgorithm)
TryEncryptCfbCore(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, PaddingMode, Int32, Int32)

在派生类中重写时,尝试使用具有指定填充模式和反馈大小的 CFB 模式将数据加密到指定的缓冲区中。

(继承自 SymmetricAlgorithm)
TryEncryptEcb(ReadOnlySpan<Byte>, Span<Byte>, PaddingMode, Int32)

尝试使用具有指定填充模式的 ECB 模式将数据加密到指定的缓冲区。

(继承自 SymmetricAlgorithm)
TryEncryptEcbCore(ReadOnlySpan<Byte>, Span<Byte>, PaddingMode, Int32)

在派生类中重写时,尝试使用具有指定填充模式的 ECB 模式将数据加密到指定的缓冲区中。

(继承自 SymmetricAlgorithm)
ValidKeySize(Int32)

确定指定的密钥大小对当前算法是否有效。

(继承自 SymmetricAlgorithm)

显式接口实现

IDisposable.Dispose()

此 API 支持产品基础结构,不能在代码中直接使用。

释放由 SymmetricAlgorithm 占用的非托管资源,还可以另外再释放托管资源。

(继承自 SymmetricAlgorithm)

适用于

另请参阅