Certificate 从.NET 4.6访问CNG证书的私钥-找不到GetCngPrivateKey

Certificate 从.NET 4.6访问CNG证书的私钥-找不到GetCngPrivateKey,certificate,private-key,.net-4.6,cng,Certificate,Private Key,.net 4.6,Cng,我需要从.NET 4.6访问CNG证书的私钥 在文档中,我找到了扩展方法,但在Visual Studio 2015中,此方法不适用于我 可能此方法已从上次发布的.NET framework中删除 任何关于现在访问CNG证书私钥的正确方法的建议。GetCngPrivateKey是4.6预览版的一部分,但在4.6版本中被删除。将其替换为(以及GetECDsaPrivateKey(4.6.1)和GetDSAPrivateKey(4.6.2)) Get[Algorithm]{Public | Priva

我需要从.NET 4.6访问CNG证书的私钥

在文档中,我找到了扩展方法,但在Visual Studio 2015中,此方法不适用于我

可能此方法已从上次发布的.NET framework中删除


任何关于现在访问CNG证书私钥的正确方法的建议。

GetCngPrivateKey
是4.6预览版的一部分,但在4.6版本中被删除。将其替换为(以及GetECDsaPrivateKey(4.6.1)和GetDSAPrivateKey(4.6.2))

Get[Algorithm]{Public | Private}Key方法通常会在需要时返回CNG(在Windows上)和CAPI(CryptoServiceProvider)。在非Windows系统(对于.NET Core)上,它们使用适合系统的任何备份类型

新方法还有一个优点,即几乎不需要强制转换返回类型。在4.6版本中,RSA基类得到了增强,因此所有RSA操作都可以在不强制转换的情况下完成。4.6.1的ECDSA增强,4.6的DSA增强。强制转换的唯一原因是为了互操作(比如尝试获取持久化密钥的名称)