X509AsymmetricSecurityKey.GetAsymmetricAlgorithm(String, Boolean) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取指定的非对称加密算法。
public:
override System::Security::Cryptography::AsymmetricAlgorithm ^ GetAsymmetricAlgorithm(System::String ^ algorithm, bool privateKey);
public override System.Security.Cryptography.AsymmetricAlgorithm GetAsymmetricAlgorithm (string algorithm, bool privateKey);
override this.GetAsymmetricAlgorithm : string * bool -> System.Security.Cryptography.AsymmetricAlgorithm
Public Overrides Function GetAsymmetricAlgorithm (algorithm As String, privateKey As Boolean) As AsymmetricAlgorithm
参数
- algorithm
- String
要创建的非对称算法。
- privateKey
- Boolean
如果需要使用私钥来创建算法,则为 true
;否则为 false
。
返回
一个 AsymmetricAlgorithm,表示指定的非对称加密算法。
例外
privateKey
为 true
,并且构造函数中指定的 X.509 证书不具有私钥。
- 或 -
algorithm
为 XmlDsigDSAUrl,并且构造函数中指定的 X.509 证书的公钥或私钥类型不是 DSA。
- 或 -
algorithm
为 XmlEncRSA15Url、XmlEncRSAOAEPUrl、XmlDsigRSASHA1Url 或 RsaSha256Signature,并且构造函数中指定的 X.509 证书的公钥或私钥类型不是 RSA。
- 或 -
不支持 algorithm
。 支持的算法为 XmlDsigDSAUrl、XmlEncRSA15Url、XmlEncRSAOAEPUrl、XmlDsigRSASHA1Url 和 RsaSha256Signature。
注解
使用 XmlDsigDSAUrl、XmlEncRSA15Url、XmlEncRSAOAEPUrl、XmlDsigRSASHA1Url 或 RsaSha256Signature 字段指定 algorithm
参数。
由于 SHA1 出现冲突问题,Microsoft 建议使用基于 SHA256 或更好的安全模型。