MachineKey.Protect和MachineKey.Unprotect

时间:2014-02-06 00:16:30

标签: c# asp.net-mvc-4 encryption .net-4.5

我正在使用.net 4.5和MachineKey.Protect / MachineKey.Unprotect来加密和解密值。我想知道什么时候我们将代码部署到我们将拥有多个服务器的生产中,MachineKey.Protect / MachineKey.Unprotect是否可以在不同步机器密钥的情况下正常工作?

以下是解密的示例代码:

var bytes = Convert.FromBase64String(Token);
var decryValue = MachineKey.Unprotect(bytes, Purpose);
string plainText = Encoding.UTF8.GetString(decryValue);

让我知道你的想法!

1 个答案:

答案 0 :(得分:4)

要取消保护数据,您需要使用与保护数据相同的机器密钥。因此,如果您需要取消保护由其他服务器保护的数据,您的服务器必须共享相同的计算机密钥。