如何存储加密密钥.net

本文关键字:加密 密钥 net 存储 何存储 | 更新日期: 2023-09-27 18:13:52

我的。net应用程序包含一些RSA加密。我的问题是:where to store the keys ?

在谷歌上搜索了一下之后,我看不到任何真正的建议。What I have seen

    将它们拆分并存储到不同的文件夹中。
  1. ProtectedData使用。但是如果我使用受保护的数据,我仍然需要存储密钥的加密结果。还是同样的问题,在哪里存储?

有更好的选择吗?

如何存储加密密钥.net

标准方法将密钥存储在密钥容器中,net有一个API来完成此操作。看到如何:在密钥容器中存储非对称密钥您可以将密钥容器存储为私有的,在这种情况下,只有您可以访问密钥。如果您希望在计算机中的不同用户或程序之间共享密钥,则应使用机器级密钥容器。要在机器级别存储,只需要在容器的参数中添加UseMachineKeyStore标志

CspParameters cp = new CspParameters();
cp.KeyContainerName = ContainerName;
cp.Flags = UseMachineKeyStore 

请记住,任何时候使用机器密钥存储时,都需要设置标志。该配置具有一定的安全一致性,这取决于信息的敏感程度。您可以使用访问规则限制对create容器的访问。

我希望这些信息对你有用。