我正在重写一个应用程序,以便我们可以停止使用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
。
我是否甚至需要测试证书是否支持数字签名?我看不出它怎么不能......
答案 0 :(得分:2)
首先,证书必须具有私钥才能用于签名。使用X509Certificate2.HasPrivateKey属性进行检查。
使用X509Certificate2.Extensions
属性访问Key Usage extension。其中一个重要用途是数字签名。这就是你要找的东西。
答案 1 :(得分:0)
我相信你会想要使用this
Microsoft.Web.Services3.Security.Tokens