SSL的工作原理
SSL的工作原理:當一個使用者在Web上用Netscape瀏覽器漫游時,瀏覽器利用HTTP協議與Web服務器溝通。例如,瀏覽器發出一個HTTP GET命令給服務器,想下載一個首頁的HTML檔案,而服務器會將檔案的內容傳送給瀏覽器來響應。GET這個命令的文字和HTML檔案的文字會通過會話層(Socket)的連接來傳送,Socket使兩臺遠程的計算機能利用Internet來通話。通過SSL,資料在傳送出去之前就自動被加密了,它會在接收端被解密。對沒有解密鑰的人來說,其中的資料是無法閱讀的。
SSL采用TCP作為傳輸協議提供數據的可靠傳送和接收。SSL工作在Socket層上,因此獨立于更高層應用,可為更高層協議,如Telnet、FTP和HTTP提供安全業務。SSL提供的安全業務和TCP層一樣,采用了公開密鑰和私人密鑰兩種加密體制對Web服務器和客戶機(選項)的通信提供保密性、數據完整性和認證。在建立連接過程中采用公開密鑰,在會話過程中使用私人密鑰。加密的類型和強度則在兩端之間建立連接的過程中判斷決定。在所有情況下,服務器通過以下方法向客戶機證實自身:給出包含公開密鑰的、可驗證的證明;演示它能對用此公開密鑰加密的報文進行解密。
為了支持客戶機,每個客戶機都要擁有一對密鑰,這要求在Internet上通過Netscape分配。由于Internet中的服務器數遠少于客戶機數,因此能否處理簽字及密鑰管理的業務量是很重要的,并且與客戶聯系比給商家以同樣保證更重要。
安全服務信息保密要怎么才能做到?
(1)信息保密,通過使用公開密鑰和對稱密鑰技術以達到信息保密。SSL客戶機和服務器之間的
所有業務都使用在SSL握手過程中建立的密鑰和算法進行加密。這樣就防止了某些用戶通過使用IP數據包嗅探工具非法竊聽。盡管數據包嗅探仍能捕捉到通信的內容,但卻無法破譯。
(2)信息完整性,確保SSL業務全部達到目的。應確保服務器和客戶機之間的信息內容免受破壞。SSL利用機密共享和hash函數組提供信息完整性服務。
(3)雙向認證,客戶機和服務器相互識別的過程。它們的識別號用公開密鑰編碼,并在SSL握手時交換各自的識別號。為了驗證證明持有者是其合法用戶(而不是冒名用戶),SSL要求證明持有者在握手時對交換數據進行數字式標識。證明持有者對包括證明的所有信息數據進行標識,以說明自己是證明的合法擁有者。這樣就防止了其他用戶冒名使用證明。證明本身并不提供認證,只有證明和密鑰一起才起作用。