【问题标题】:Using RSACryptoServiceProvider, how does one store a key exchange key and signature key in the same key container?使用 RSACryptoServiceProvider,如何将密钥交换密钥和签名密钥存储在同一个密钥容器中?
【发布时间】:2019-10-24 23:06:54
【问题描述】:

我想使用一个密钥对进行加密,并使用一个单独的密钥对进行签名。如何使用 RSACryptoServiceProvider 将它们存储在同一个密钥容器中?

【问题讨论】:

    标签: encryption rsacryptoserviceprovider


    【解决方案1】:

    最好的答案是:不要——只是创建不同的密钥容器。

    RSACryptoServiceProvider 基于 Windows CAPI 构建,后者是两个 Windows 加密库中较旧的一个(现在被认为已弃用)。 (并排)替代品 Windows CNG 不再具有“签名密钥”和“交换密钥”的区别……每个“命名密钥”只有一个密钥。 CNG 可以返回到 CAPI,但它只会使用两个密钥之一(我相信交换会获胜),因为它无法询问您关心哪个密钥。

    .NET 的某些部分现在只优先使用RSACng,如果其中一个地方运行到您的双键密钥容器中,您可能会遇到问题。

    【讨论】:

      猜你喜欢
      • 2013-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多