【发布时间】:2015-12-18 16:27:53
【问题描述】:
我正在尝试验证证书以确保它具有正确的 keyUsage。 但是看不到如何在此应用程序策略中指定我的 X509KeyUsageFlags.KeyEncypherment 使用标志。
这是我到目前为止的代码。其他人有这个工作吗?
X509Certificate2 tmpCert = new X509Certificate2(Cert);
X509Chain ch = new X509Chain();
ch.ChainPolicy.RevocationMode = X509RevocationMode.NoCheck;
ch.ChainPolicy.VerificationFlags = X509VerificationFlags.AllowUnknownCertificateAuthority;
var kUsage = new System.Security.Cryptography.Oid("2.5.29.15");
ch.ChainPolicy.ApplicationPolicy.Add(kUsage);
bool success = ch.Build(tmpCert);
【问题讨论】:
-
嗯,查看 Mono 源代码,看起来这个 oid 只会检查证书签名使用情况。没有看到我们可以在哪些地方添加特定的 keyusage 标志。
标签: c# .net x509certificate2