我一直在閱讀互聯網上關於SSL如何工作的幾個網站,但我不明白它如何確保安全。可能因爲我不完全理解它是如何工作的。什麼使SSL安全?
讓我從SSL的核心思想開始。它用於加密HTTP連接,但爲了客戶端和服務器與加密數據進行通信,當然需要共享加密密鑰。如果有人竊聽你的連接,他們是不是可以抓住這個密鑰並在解密數據的同時繼續收聽?如果我們談論的是長期連接,我可以想象這種技術會起作用,但HTTP請求通常在半秒內完成。
讓我們假設這是以某種方式照顧。 SSL的另一個用途是驗證服務器是否與其說的完全一樣。什麼能夠防止惡意服務器僞造由根證書提供者簽名的證書?在我讀過的所有描述中,瀏覽器實際上都聯繫了其中一個權威機構來與他們覈實證書。假設證書由根證書頒發機構用私鑰加密,瀏覽器如何在不知道解密密鑰的情況下驗證此證書中的數據?或者解密密鑰與加密密鑰不同?
這些問題的一個解決方案我可以想象的是,如果證書和密鑰只發送一次,並與您的瀏覽器中的域名和IP地址一起存儲。
感謝您提前解釋。
這是一個有趣的領域。這篇維基百科文章應該爲您提供一個很好的起點:http://en.wikipedia.org/wiki/Public-key_cryptography – Russell