2012-02-19 92 views
2

這僅僅是對於自簽名的證書和CA證書之間的辯論一般性的問題......好處安全的CA簽名的SSL證書

我明白了CA證書的好處,由於產生的避免警告在大多數瀏覽器中,但CA證書如何有益於實際安全?我通常聽到最大的威脅是中間人攻擊,雖然我使用自簽名證書瞭解這種威脅,但我不明白CA證書如何防止這種威脅。我知道CA執行自己的安全算法時,不能在自簽名證書上使用相同的算法嗎?

我想我只是有點惱火的大企業周圍的CA證書的需要,但似乎無法找到任何不同的關於他們,除了這些假設額外的安全檢查,他們執行。 CA可以從安全角度提供自簽名證書無法提供的任何內容嗎?

回答

5

欺騙。如果另一方僞造自簽名證書,則無法檢查該證書。爲了檢查您是否收到了有效的證書而不是僞造的證書,您需要第三方檢查,這種檢查不容易被欺騙。這是通過在您的客戶端軟件(Windows爲您包含此類證書並且主要瀏覽器也這樣做)上攜帶根CA證書列表(以及一些中間證書)並使用這些CA證書驗證您從服務器收到的證書來完成的。對於自簽名證書,這種驗證是不可能的。

當然,您可以在自己的客戶端應用程序中攜帶自簽名證書(這是一些開發人員所做的,特別是對於內部應用程序而言),但這不適用於瀏覽器。

+0

我沒有想到流行的瀏覽器包含或多或少保證爲真實的內置CA證書的事實。仍然使CA成爲「大企業」,但會增加數據安全性。 – user1019084 2012-02-21 18:34:32

+0

正確。當Diginotar發現他們的簽名證書已被泄露時,請查看(有點)最近的爭吵。長話短說,DN的證書在一週內被所有主流瀏覽器撤銷,並且公司本身以相對較短的順序破產。 CA公司採取「用你的生活*保護這些」幾乎是字面上的。 – Shadur 2013-04-08 09:24:59

4

區別不在算法中,而在於人們是否信任證書頒發機構。

證書的要點是驗證您是否與您打算建立連接的人建立連接。

如果我對你說「我是合適的服務器,請相信我」,你可以選擇不相信我(畢竟,你不認識我)。

如果我對你說「我是合適的服務器,並且有證明證明它」,你可以說「好的,誰給了你這個證書?」如果我的回答是「喬從拐角處」,你可能仍然會選擇不相信我。

但是,如果我說「我有證書,並且您可以與您信任的第三方進行確認」,那麼您可以決定這是對身份的很好證明。

您如何確認它是標準的全部內容(例如,如RFC 5280中所述)。但這只是技術問題。您可以對源自VeriSign的證書和自己生成的證書使用完全相同的算法。

真正的問題是關於信任:你相信誰給你「身份證明」。我們相信VeriSign足以讓任何瀏覽器都能接受任何身份證明。我們是否應該相信能夠生成自己的自簽名證書的個人?在某些情況下,我們可能會這樣做(在這種情況下,您可以手動在瀏覽器中安裝證書),但不是一般的規則。

+0

謝謝你的回覆。我認爲這樣做是有道理的,安全性更多來源於企業是否有信譽的立場,而不是數據是否受到損害。尤金在下面的迴應中提到了後者。 – user1019084 2012-02-21 18:31:19