DES 类

定义

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

public ref class DES abstract : System::Security::Cryptography::SymmetricAlgorithm
public abstract class DES : System.Security.Cryptography.SymmetricAlgorithm
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public abstract class DES : System.Security.Cryptography.SymmetricAlgorithm
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class DES : System.Security.Cryptography.SymmetricAlgorithm
type DES = class
    inherit SymmetricAlgorithm
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
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)
SetKey(ReadOnlySpan<Byte>)

设置此实例的键。

(继承自 SymmetricAlgorithm)
SetKeyCore(ReadOnlySpan<Byte>)

设置此实例的键。

(继承自 SymmetricAlgorithm)
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)

适用于

另请参阅