在ASP.NET 4中,default hashing algorithm was changed to HMACSHA256。我知道解密密钥用于表单身份验证和新的ASP.NET身份cookie身份验证。验证密钥是否用于Web窗体中的Viewstate验证以外的任何其他内容?
我问的原因是我们在许多应用程序中使用静态机器密钥,它们仍在使用SHA1进行验证。
答案 0 :(得分:2)
验证密钥是否用于Web窗体中的Viewstate验证以外的任何其他内容?
除此之外,我认为它还会影响MachineKey.Protect
函数的行为以及相应的Unprotect函数。此API允许开发人员保护任意值。用于反伪造令牌的MVC框架makes use of this,因此更改验证密钥将影响CSRF令牌的生成和验证。