x509和数字签名

时间:2010-10-07 14:03:04

标签: c# .net security x509certificate

我正在重写一个应用程序,以便我们可以停止使用Microsoft.Web.Services2.dll中的旧Microsoft.Web.Services2.Security.X509并开始使用System.Security.Cryptography.X509Certificates。

但有一种我无法弄清楚的方法:

bool Microsoft.Web.Services2.Security.X509.X509Certificate.SupportsDigitalSignature()

我在

中找不到它的等价物

System.Security.Cryptography.X509Certificates.X509Certificate2

我是否甚至需要测试证书是否支持数字签名?我看不出它怎么不能......

2 个答案:

答案 0 :(得分:2)

首先,证书必须具有私钥才能用于签名。使用X509Certificate2.HasPrivateKey属性进行检查。

使用X509Certificate2.Extensions属性访问Key Usage extension。其中一个重要用途是数字签名。这就是你要找的东西。

答案 1 :(得分:0)

我相信你会想要使用this
Microsoft.Web.Services3.Security.Tokens