ssl/tls協議是什麼
計算機網路的osi
七層模型和tcp/ip
四層模型想必大家都知道。其中ssl/tls
是一種介與於傳輸層(比如tcp/ip
)和應用層(比如http
)的協議。它通過"握手協議(handshake protocol)
"和"傳輸協議(record protocol)
"來解決傳輸安全的問題。ssl/tls
是乙個可選層,沒有它,使用http
也可以通訊,它存在的目的就是為了解決安全問題,這也就是https
相對於http
的精髓所在.
ssl:(secure socket layer,安全套接字層)tls:(transport layer security,傳輸層安全協議),用於兩個應用程式之間提供保密性和資料完整性。該協議由兩層組成:tls記錄協議和tls握手協議。tls:(transport layer security,傳輸層安全協議)
ssl是netscape開發的專門使用者保護web通訊的,目前版本為3.0。最新版本的tls 1.0是ietf(工程任務組)制定的一種新的協議,它建立在ssl 3.0協議規範之上,是ssl 3.0的後續版本。兩者差別極小,可以理解為ssl 3.1,它是寫入了rfc的。
ssl/tls協議發展歷史
ssl/tls
協議發展歷史參看下表,更詳細的發展歷史參看維基百科的ssl/tls協議發展歷史。
ssl/tls執行過程概述
上面提到ssl/tls有兩個階段握手協議
和傳輸協議
,握手協議
就是建立起連線的過程,這個階段採用非對稱加密,這個過程完畢後會生成乙個對話秘鑰
,從而傳輸協議
過程,就是用這個對話秘鑰
使用對稱加密進行傳輸。之所以這樣做,是因為,非對稱加密是很耗效能的。而握手協議過程中,使用數字證書保證了公鑰的安全性。當然這個過程既可以雙向證書驗證,也可以只驗證服務端的證書單向證書驗證。這也是前兩節所作的鋪墊,不至於這兒看的太迷糊。
ssl/tls執行過程詳解
客戶端發出請求(client hello)
對應上圖第一步,客戶端發出請求,這一步客戶端主要向服務端提供以下資訊:
服務端回應(server hello)
收到客服端的請求之後,服務端向客戶端回應以下資訊:
客戶端回應
客戶端收到服務端的回應後,首先驗證服務端的數字證書,如果證書沒有問題繼續下去,如果證書有問題,則會有相應提示,或者對話直接關閉。然後客戶端在向服務端傳送以下資訊:
服務端最後的回應
如果有客戶端的證書,就先驗證客戶端的證書
這時客戶端和服務端都有了session key
,然後握手協議階段就結束了。下面開始使用session key
對稱加密資料,進行傳輸,就進入了下乙個階段,傳輸協議過程。
SSL TLS 協議初識
ssl協議位於tcp ip協議與各種應用層協議之間,為資料通訊提供安全支援。ssl協議可分為兩層 ssl記錄協議 ssl record protocol 它建立在可靠的傳輸協議 如tcp 之上,為高層協議提供資料封裝 壓縮 加密等基本功能的支援。ssl握手協議 ssl handshake proto...
SSL TLS 協議介紹
ssl tls 協議 rfc2246 rfc4346 處於 tcp ip 協議與各種應用層協議之間,為資料通訊提供安全支援。從協議內部的功能層面上來看,ssl tls 協議可分為兩層 1.ssl tls 記錄協議 ssl tls record protocol 它建立在可靠的傳輸層協議 如 tcp ...
SSL TLS協議簡介
ssl secure sockets layer 安全套接字協議 及其繼任者傳輸層安全 transport layer security,tls 是為網路通訊提供安全及資料完整性的一種安全協議。tls與ssl在傳輸層與應用層之間對網路連線進行加密。ssl協議位於tcp ip協議與各種應用層協議之間,...