Skip to main content
 首页 » 编程设计

c#之如何在机器中创建一个 RSA key 以便在 RSACryptoServiceProvider 中使用

2024年02月24日19dyllove98

我有以下情况:

不同机器上的多个应用程序将使用 RSA 加密共享存储在数据库中的信息。

今天,我正在以一种不安全的方式来做这件事。这些机器共享一个包含 XML 格式的 RSA key 的 DLL。

我如何使用此 XML 中的信息在不同的机器上生成机器 key ,然后如何在 RSACryptoServiceProvider 中使用它们?

请您参考如下方法:

我过去所做的:(这只是一个大纲;如果您需要实际代码,我可以提供,但听起来您的问题只是在寻找想法。)

必须在每台机器上完成以下操作。 (您可以创建一个简单的控制台应用程序或一个 powershell 脚本来执行此操作。)

  • 使用ProtectedData.Protect加密 key
  • 将加密 key 存储在注册表中。您可以在注册表项上设置 ACL 权限以提高安全性。

在您的应用中,使用 ProtectedData.Unprotect 获取 key ,然后将其传递给 RSACryptoServiceProvider 进行加密和解密。