SSL互動(握手)過程詳解

來源:互聯網
上載者:User

原文:http://www.cpplive.com/html/1387.html

普通的TCP通訊無法保證資料的安全,它隨時可能被第三方截獲而泄漏通訊雙方之間的隱私,這顯然是我們不希望看到的,尤其在跟使用者名稱、密碼、個人資訊息息相關的通訊過程(如網上銀行交易、機密檔案傳輸等等)尤其看重資料互動的隱秘性,所以我們常常用SSL協議來建立安全保密的通訊,SSL協議能夠保證互動雙方的資料按密文方式傳輸,第三方在沒有私密金鑰的情況下幾乎無法破解,從而到達保密的目的。究竟SSL是如何互動資料來確保安全的,很多人卻不得而知,為瞭解答大家的疑惑,這裡詳細介紹一下SSL的互動過程。
   

1、建立TCP串連

由於SSL協議依賴於TCP串連實施,所以在SSL互動之前需要先建立TCP串連。用戶端connect服務端,服務端acccept用戶端,經曆三向交握以後TCP串連建立。

2、用戶端發送SSL請求

用戶端(Client)向服務端(Server)發送自身使用的SSL版本(SSL一共有三個版本)、密碼編譯演算法的相關配置、隨機資料以及其在在SSL協議中需要用到的資訊。

3、服務端處理SSL請求

伺服器(Server)反饋給用戶端(Client)自己的SSL版本、密碼編譯演算法的相關配置、隨機資料以及用自己的私人祕密金鑰加密的SERVER-HELLO資訊。服務端(Server)緊接著將自己的認證(包含公用密鑰)傳遞過去。同時有個可選項目,即服務端(Server)可以要求客服端(Client)發送自己的認證。
4、用戶端驗證服務端身份

客服端(Client)用服務端(Server)傳遞過來認證驗證服務端(Server)的身份,如果身份未驗證通過則結束本次通訊。認證驗證通過後利用服務端(Server)的公用密鑰嘗試解開被其用私人祕密金鑰加密過的SERVER-HELLO資訊,如果解開失敗,說明該SERVER-HELLO必然是假的,故結束本次通訊。

5、用戶端發送公用祕密金鑰加密過的隨機資料

用戶端端(Client)產生隨機資料(sharedsecret),並且把這個隨機資料用服務端(Server)發送過來的的公用祕密金鑰加密,此次加密過程產生本次握手中的premastersecret(這個步驟是有可能有服務端的參與的,具體情況由他們使用的密碼編譯演算法決定),然後將它(premastersecret)送回給服務端(Server)。如果服務端(Server)要求需要驗證用戶端(Client),那麼客服端(Client)也需要自己把自己的認證(包含公用密鑰)傳遞過去,同時送一些自己簽過名(私人祕密金鑰加密)的資料過去。

6、服務端用私人密鑰解密加密後的隨機資料並協商暗號

Server驗證完client的身份之後,然後用自己的私人密鑰解密得到premastersecret然後雙方利用這個premastersecret來共同協商,得到mastersecret(可理解為premastersecret為雙方協商的暗號,然後使用這個暗號再協商一個mastersecret用來產生真正的工作階段金鑰用來傳輸資料)以此來保證資料的決對安全。

7、服務端跟用戶端利用暗號產生密碼編譯演算法跟密鑰key

雙方用mastersecret一起產生真正的sessionkey,這將是一個對稱式加密的key。這個key還可以用來驗證資料完整性。雙方再交換結束資訊。握手結束。

接下來雙方就可以用協商好的演算法和密鑰key,採用對稱式加密演算法來通訊了。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.