https加密原理

1.簡介

萬維網服務器使用SSL默認服務端口443來取代普通萬維網服務的80端口,且該安全網頁URL中的協議標識用https代替http,在與服務器建立TCP連接后,先進行瀏覽器和服務器之間的握手協議,完成加密算法的協商和會話秘鑰的傳遞,然后進行安全數據傳輸。

  • 公開秘鑰加密
    即為非對稱加密,發送方使用對方的公開秘鑰加密,對方收到加密信息后,再使用自己的私有秘鑰進行解密
  • 共享秘鑰加密
    即為對稱加密,加密和解密使用同一個秘鑰的方式稱為共享秘鑰加密

2.CA證書

CA是負責管理和簽發證書的第三方權威機構,是所有行業和公眾都信任的,認可的。
CA證書,是用于驗證網站是否可信,一般里面包含有公開秘鑰。

3.實現過程

  • 協商加密算法
    瀏覽器向服務器發送瀏覽器SSL版本號和一些可選的加密算法,服務器選定后再告訴瀏覽器
  • 服務器鑒別
    服務器向瀏覽器發送一個包含其公開秘鑰的數字證書,瀏覽器使用該證書認證機構的公鑰對該證書進行驗證,公開秘鑰加密
  • 共享秘鑰計算
    瀏覽器產生一個隨機數,用服務器公鑰加密后發送給服務器,雙方根據協商的算法產生一個共享秘鑰加密
  • 安全數據傳輸
    雙方使用共享秘鑰加密他們之間的數據并驗證其完整性

為什么要先采用公開密鑰加密,之后再采用共享秘鑰加密?
因為公開密鑰加密處理速度慢,而共享秘鑰加密,首先必須告知對方自己的私鑰,而這個私鑰的傳輸過程的安全性沒有保障,所以要采用先公開密鑰加載,之后用公開密鑰來保證私鑰傳輸的安全性。

4.SSL的處理速度變慢

  • 通信慢,因為要通過SSL通信,獲取包含其公開秘鑰的數字證書
  • 消耗CPU和內存資源,進行加密計算,因此只有包含個人信息等敏感數據時,才利用HTTPS加密通信,節約購買證書的開銷

5.加密的過程

https加密是在傳輸層
https報文在被包裝成tcp報文時完成加密過程,無論是頭部還是內容主體部分都是會被加密

6.https和http的區別

  1. https協議需要用到CA申請的證書
  2. http信息是明文傳輸,https則是具有安全性的ssl加密
  3. http是直接與TCP進行數據傳輸,而https是通過一層SSL(表示層),http默認使用80端口,https默認使用443端口
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容