首页 > 解决方案 > 如何确定密钥上的 Azure.Security.KeyVault.Keys.Cryptography.CryptographyClient.Decrypt 的加密算法

问题描述

操作的CryptographyClient要求EncryptionAlgorithmDecrypt如何确定我创建的自签名密钥OpenSSL或任何密钥的用途?

EncryptionAlgorithm提供的enum 价值

  1. Rsa15
  2. RsaOaep
  3. RsaOaep256

RSA如果我已经使用创建自签名密钥,我该如何选择OpenSSL

标签: c#azureasp.net-corecryptographyazure-keyvault

解决方案


这些算法是加密算法,而不是密钥类型。您应该使用哪个取决于您的应用程序。Rsa15(算法“RSA1_5”)是旧的,不推荐用于安全应用程序。RsaOaep(算法“RSA-OAEP”)可能更多产,但使用 SHA-1 进行散列,因此RsaOaep256(算法(RSA-OAEP-256)更安全,因为它使用 SHA-256。

您可以从包括 Wikipedia 在内的各种来源了解这些算法。

在适用于 C# 的 Key Vault SDK 中,如果您在本地拥有密钥材料(例如用于加密的公钥),我们也会在本地支持这些算法,因为本地支持这些相同的算法。可能并不总是支持某些算法,例如 .NET Framework 4.6.1 上的 EC 密钥会抛出NotSupportedException.


推荐阅读