傳輸層安全

傳輸層安全(Transport Layer Security,TLS)其新繼任者安全套接層(Security Socket Layer,SSL)在網際網路上提供保密安全信道的加密協定,為諸如網站、電子郵件、網上傳真等等數據傳輸進行保密。SSL 3.0和TLS 1.0有輕微差別,但兩種規範其實大致相同。

基本介紹

  • 中文名:傳輸層安全
  • 外文名:Transport Layer Security
  • 類型:提供保密安全信息的加密協定
  • 保護數據對象:網站、電子郵件、網上傳真
工作原理,工作方式,

工作原理

TLS利用密鑰算法在網際網路上提供端點身份認證與通訊保密,其基礎是公鑰基礎設施(PKI)。不過在實現的典型例子中,只有網路服務者被可靠身份驗證,而其客戶端則不一定。這是因為公鑰基礎設施普遍商業運營,電子簽名證書要花大錢購買,普通大眾很難買的起證書。協定的設計在某種程度上能夠使客戶端/伺服器應用程式通訊本身預防竊聽、干擾(Tampering)、和訊息偽造。
TLS包含三個基本階段:
對等協商支持的密鑰算法
基於公鑰加密交換對稱密鑰和基於證書的身份認證
基於對稱密鑰的數據傳輸保密
在第一階段,客戶端與伺服器協商所用密碼算法。 當前廣泛實現的算法選擇如下:
公鑰加密系統:RSA、Diffie-Hellman、DSA及Fortezza
對稱密鑰系統:RC2、RC4、IDEA、DES、Triple DES及AES;
單向散列函式:MD5及SHA。

工作方式

雙向證書認證的SSL握手過程。
首先,TLS的記錄層(Record layer)用於封裝更高層的HTTP等協定。記錄層數據可以被隨意壓縮、加密,與訊息驗證碼(MAC)打包在一起。每個記錄層包都有一個content_type段用以記錄更上層用的協定。
客戶端要收發幾個握手信號:
傳送一個ClientHello訊息,說明它支持的密碼算法列表、壓縮方法及最高協定版本,也傳送稍後將被使用的隨機數。
然後收到一個ServerHello訊息,包含伺服器選擇的連線參數,源自客戶端初期所提供的ClientHello。
當雙方知道了連線參數,客戶端與伺服器交換證書(依靠被選擇的公鑰系統)。這些證書通常基於X.509,不過已有草案支持以OpenPGP為基礎的證書。
伺服器請求得到客戶端的證書有可能成功,所以連線可以是相互的身份認證
客戶端與伺服器通過加密通道協商一個共同的“主密鑰”(客戶端與伺服器計算隨機數),這通過精心謹慎設計的偽隨機數函式實現。結果可能使用Diffie-Hellman交換,或簡單的公鑰加密,雙方各自用私鑰解密。所有其他關鍵數據的加密均使用這個“主密鑰”。
TLS/SSL有多樣的安全保護措施:
所有的記錄層數據均被編號,序號用在訊息驗證碼(MAC)中。

相關詞條

熱門詞條

聯絡我們