首頁>技術>

http和https區別

http:明文、資料可被第三方攔截後被篡改、伺服器端可被冒充

https:密文、資料不可被篡改、伺服器端是被信任的

Https請求流程圖

https請求步驟:(最後給出流程圖)

1、首先有一個被信任的CA(數字證書頒發機構),如果一個網站的證書是被該CA頒發的證書,就代表該網站是可信任的CA有它自己的私鑰和公鑰每個CA有它自己的證書,該證書中儲存了該CA的公鑰,該證書可被個瀏覽器下載並儲存,意思就是瀏覽器可以得到這個CA的公鑰

2、伺服器端(公司)向CA申請一個SSL證書,CA透過各種方式確認伺服器端(公司)是否存在,是否合法,如果是合法的,則為該伺服器端頒發一個證書,該證書被CA的私鑰進行了簽名(代表該伺服器端(公司)已經被CA確認是合法的,可信任的),且證書包含了伺服器端的公鑰,組織,域名等資訊,證書有效期等。伺服器端會儲存該證書,該證書可被共享,而伺服器端的私鑰由伺服器端自己儲存,不能共享給其他人

3、瀏覽器(客戶端)透過https向伺服器端傳送請求時,伺服器端會將SSL證書響應給瀏覽器,瀏覽器解析該SSL證書,獲取頒發該證書的CA機構資訊以及有效期,而瀏覽器端內部已經下載儲存了各個被信任的CA的證書,因此瀏覽器在內部找到對應這個CA的證書之後得到了這個CA的公鑰,然後使用這個CA的公鑰伺服器端的SSL證書的簽名進行驗證SSL證書上的簽名是CA使用它自己的私鑰進行簽名的),驗證成功,說明這個SSL證書的確是這個CA頒發的,也代表這個伺服器端是可被信任的,而這個伺服器端SSL證書中包含了伺服器端的公鑰,因此瀏覽器端(客戶端)也就得到了伺服器端的公鑰

4、瀏覽器端(客戶端)生成一個隨機數(對稱秘鑰,用來對後續通訊資料進行加密),然後使用伺服器端的公鑰對這個隨機數進行加密之後傳送給伺服器端,伺服器端使用伺服器端的私鑰對這個加密之後的資料進行解密就得到了這個隨機數(這個加解密操作是非對稱加密

5、伺服器和客戶端之間的後續通訊就使用這個隨機數(對稱秘鑰)對資料進行加密解密(對稱加密)

分析

1、第4步使用非對稱加密方式來將對稱秘鑰(隨機數)傳遞給伺服器端,因為公鑰加密的資料只能對應的私鑰解密,因此客戶端使用伺服器端的公鑰將對稱秘鑰(隨機數)進行加密之後,只能由伺服器端的私鑰進行解密,因此安全性更高

2、第5步使用對稱秘鑰對後續的資料通訊進行加密的原因是,一般而言對稱加密比非對稱加密演算法效率更高

谷歌瀏覽器中管理的證書

谷歌瀏覽器中管理的證書

流程圖

Https請求流程圖

求關注~~

4
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • python入門010:數字列表