c# - 您将加密 key 放在面向公众的服务器上的什么位置?

标签 c# security encryption nservicebus

我在我的 Web 应用程序和服务之间使用带有 MSMQ 的 NServiceBus,我需要能够加密消息负载,这样如果消息在 Web 服务器上本地排队(服务主机已关闭),敏感数据就无法访问被查看。

因为 Web 服务器是面向公众的,所以我不仅需要对可能序列化到磁盘的数据进行加密,而且我也不能将加密 key 存储在 Web 服务器上。

我考虑过使用 DPAPI 来存储 key ,但由于 key 将存储在主机上,我还不知道这是否符合要求。我考虑过的另一种选择是,当 Web 应用程序启动时,它可以从服务请求 key ,并在应用程序池的生命周期内将其保存在内存中。

我以前从未处理过这种级别的加密要求,想了解其他人在做什么,并就上述想法获得一些反馈。

最佳答案

可以使用公钥/私钥加密吗?然后你只需要在服务器上公钥,其他地方使用私钥解密数据。

关于c# - 您将加密 key 放在面向公众的服务器上的什么位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4865527/

相关文章:

C#正则表达式过滤字符

php - 敏感接收器作为 php 漏洞?

security - 如何在不需要键盘输入的情况下创建加密安全的身份验证?

php - 保证正确的 Ajax 调用参数值的最佳方式

security - 使用证书的服务器身份验证(过程)

ios - 使用解密时,表达式类型不明确,没有更多 AES 上下文

c# - WPF 的免费字体和颜色选择器?

c# - 如何将带有绘图的 Canvas 放置在 ListView 控件的特定列内?

c# - 在 C# 中用 16 位字交换字节序的更快方法

c# - 检查程序集的强名称