System.Security.Cryptography.X509Certificates 和 PKCS
不再有 CAPICOM!利用這些新的命名空間,您現在就可以獲得 CryptoAPI (CAPI) 的托管包裝,它允許您管理證書并直接從任一種托管語言創建 CMS/PKCS#7 封裝或簽名的消息。
需要要求用戶從個人存儲中選擇證書嗎?現在這是很自然的:
X509Store store = new X509Store("My", StoreLocation.CurrentUser);
store.Open(OpenFlags.ReadOnly | OpenFlags.OpenExistingOnly);
X509CertificateExCollection certs =
store.Certificates.Select( "MyTitle", "MyMessage",
X509SelectionFlag.SingleSelection);
if (1 == certs.Count) {
Console.WriteLine("You selected \"{0}\"",
certs[0].SubjectName.Name);
}
else Console.WriteLine("You canceled my dialog!");
圖 2 顯示了結果對話框。如果您注意了該代碼,那么您可能已經注意到 .NET Framework 小組已經走到用“Ex”后綴命名類的棘手境地。難道不是 Bunny 先生的 Guide to ActiveX® Controls 一書告誡我們不要這樣命名 COM 中的東西嗎?等一等,我敢打賭幾年后您就將看到 Ex2 版本。
圖 2 選擇證書
文章來源于領測軟件測試網 http://www.kjueaiud.com/