2011-09-20 185 views
0

在我的桌面應用程序中,我使用HTTPS連接。證書是自簽名的。 我如何可以檢查在c#中的自簽名證書編程?檢查自簽名證書(SSL,C#)

我讓我的回調 「ValidateRemoteCertificate」:

ServicePointManager.ServerCertificateValidationCallback += new RemoteCertificateValidationCallback(ValidateRemoteCertificate) 

默認情況下,我的 「ValidateRemoteCertificate」 方法總是返回TRUE。 但我認爲我需要檢查有效或無效的證書。 如何檢查?我必須檢查「ValidateRemoteCertificate」?

回答

0

既然你已經實現了您知道回調委託

public delegate bool RemoteCertificateValidationCallback(
    Object sender, 
    X509Certificate certificate, 
    X509Chain chain, 
    SslPolicyErrors sslPolicyErrors) 

如果我理解正確的簽名回調,客戶端沒有安裝在他的商店證書,是否正確?儘管我建議按順序獲取基礎架構並部署有效的證書,但您可以對此做什麼,即將證書的散列/指紋與存儲在應用程序中的值進行比較,以驗證證書的有效性。