MachineKeyCompatibilityMode 枚举

定义

指定可使用哪个加密方法。

C#
public enum MachineKeyCompatibilityMode
继承
MachineKeyCompatibilityMode

字段

名称 说明
Framework20SP1 0

使用在 2.0 Service Pack 2 以前的 .NET Framework 版本中实现的加密方法。 初始化向量 (IVs) 针对除了在 ASP.NET 成员资格数据库中存储加密密码外的所有加密操作使用。

Framework20SP2 1

使用 .NET Framework 版本 2.0 SP2 和更新版本中可用的强悍加密方法。 初始化向量 (IVs) 针对所有加密操使用。

Framework45 2

使用 .NET Framework 版本 4.5 和更新版本中可用的加密方法。 用于 Framework20SP1Framework20SP2的加密方法比较,由默认加密例程生成的密码文本为一个较小的,并针对理论攻击的某些类更可靠。 它们还与 Windows 8 目录密钥管理集成,以获取所需的加密密钥。 此操作可让您通过派生自 DataProtector 的类写入和在 DataProtectorType 属性中指定类指类名称来指定自定义加密例程。

以下配置要求应用于该选项:

  1. 如果 DataProtectorType 属性有值,则 ApplicationName 属性必须有值。

  2. Validation 特性必须从 KeyedHashAlgorithm 类中指定一个系统定义的验证算法 (例如 MD5、 SHA1、 HMACSHA256、 HMACSHA384 或 HMACSHA512) 或一个类中的自定义验证算法。 AES 和 3DES 不是验证算法的值。

当指定此选项时,不管使不使用为 Protection 属性指定的值,总是对 Forms 身份验证票进行加密和签名。 如果页的 EnableViewStateMac 属性是 trueViewStateEncryptionMode 属性是 Always,则也对视图状态进行加密和签名。

注解

设置 CompatibilityMode 属性时,将使用 MachineKeyCompatibilityMode 值。

适用于

产品 版本
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1