C# 从web.config为ASP.NET MachineKey设置AES密码模式

C# 从web.config为ASP.NET MachineKey设置AES密码模式,c#,asp.net,encryption-symmetric,form-authentication,machinekey,C#,Asp.net,Encryption Symmetric,Form Authentication,Machinekey,我试着用它来验证我的网站。我在web.config中添加了machineKey元素,以便选择用于身份验证的验证和解密算法。通过查看,我发现我可以在以下验证算法中进行选择: [SHA1 | MD5 | 3DES | AES | HMACSHA256 | HMACSHA384 | HMACSHA512 | alg:算法名称] 我可以在这些解密算法中选择: [Auto | DES | 3DES | AES | alg:算法名称] 我注意到,当我尝试使用AES算法时(通过将machineKey元素中的v

我试着用它来验证我的网站。我在web.config中添加了machineKey元素,以便选择用于身份验证的验证和解密算法。通过查看,我发现我可以在以下验证算法中进行选择:

[SHA1 | MD5 | 3DES | AES | HMACSHA256 | HMACSHA384 | HMACSHA512 | alg:算法名称]

我可以在这些解密算法中选择:

[Auto | DES | 3DES | AES | alg:算法名称]

我注意到,当我尝试使用AES算法时(通过将machineKey元素中的validation和decryption属性设置为“AES”),我无法更改其密码模式(我假设它使用CBC作为默认值)。我想在这里使用不同密码模式的AES算法。所以仅仅将属性的值设置为“AES”并不能解决我的问题。machineKey文档对
alg:algorithm\u name
这样说:

alg:algorithm_name指定ASP.NET使用自定义算法加密和解密数据。必须在从SymmetricalGorthm派生的类中定义加密算法。ASP.NET调用Symmetrialgorithm.Create方法,并传入此处指定的算法名称

在阅读本文时,我假设可以引用使用
SymmetricAlgorithm.Create
方法制作的自定义算法。既然如此,我想这可以解决我的问题

现在我的问题是,我不知道如何将我的自定义算法(即AES,但使用其他密码模式,例如ECB模式)引用到web.config中的machineKey元素中。我正试图找到其他文档,但运气不好。有没有办法在web.config中设置machineKey元素的validation and decryption属性,以便它使用我的自定义算法?或者是否有其他方法可以使用自定义算法进行FormAuthentication的验证和解密