【问题标题】:ASP.net MachineKey.Encode Changing Machine KeyASP.net MachineKey.Encode 更改机器密钥
【发布时间】:2012-11-24 02:33:03
【问题描述】:

.Net 中的新 MachineKey.Encode/MachineKey.Decode 功能似乎使加密更容易。

我的问题是,如果您需要定期修改 MachineKey,是否需要一个 3 步过程?

  1. 解密和存储现有数据
  2. 修改 MachineKey
  3. 重新加密并存储加密数据

或者有没有办法使用两个不同的密钥调用 MachineKey.Encrypt/.Decrypt?

【问题讨论】:

    标签: asp.net encryption encryption-symmetric


    【解决方案1】:

    您打算将数据存储多长时间?这些方法通常用于保护 cookie 中的往返数据或值,而不是用于长期数据存储。

    如果您使用的是 ASP.NET 4.5,MachineKey.Encode() 和 MachineKey.Decode() 已经 deprecated 支持 DataProtector

    【讨论】:

    • 数据库中受保护的数据。通常需要 3 或 6 个月的时间来更换密钥。没有想过如何改变它可能会弄乱身份验证令牌。可能应该坚持使用 AesManaged 或类似的。
    • 是的,很高兴这些方法易于使用,并且可以加密和验证数据,但在我看来,长期存储并不可行。当您更改 machineKey 时,之前的所有数据都将无法访问。您最好使用具有更好密钥管理的既定密码系统,或者使用数据库级安全功能。
    猜你喜欢
    • 2011-05-04
    • 1970-01-01
    • 1970-01-01
    • 2011-12-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-11
    • 2023-03-26
    相关资源
    最近更新 更多