2012-09-19 64 views
1

我想下載並驗證證書就像Internet Explorer,我試圖監視IE API調用,看看它是如何做到這一切。 首先,我沒有看到哪個wininet函數正在下載SSL證書,其次有很多調用crypt32.dll函數。Wininet - 如何下載並驗證SSL證書

有人可以告訴我哪些功能請求證書或驗證證書所需的證書數據。 我想了解方法並在我的應用程序中實現完全相同的行爲。

回答

0

如果您使用WinINet打開https連接,它會爲您下載並檢查證書。所以你不知道你在做什麼。

如果您想檢查WinINet下載的證書,您可以在IE8或更高版本中使用INTERNET_OPTION_SERVER_CERT_CHAIN_CONTEXT

如果你不想使用WinINet,你可以使用existing implementationTLS或者你可以自己實現它,但後者不是一個好主意。

+0

沒有人確切知道哪些Crypto API用於確認證書是否已通過驗證? – Neo

+0

我不確切知道使用哪個API,可能是[CertVerifyCertificateChainPolicy](http://msdn.microsoft.com/en-us/library/windows/desktop/aa377163%28v=vs.85%29.aspx)。你爲什麼在乎? – arx

1

有人能告訴我哪些功能申請證書

證書是SSL握手的一部分,它不是單獨下載。

+0

那麼如何檢查證書是否有效? – Neo