一、 http與https的區別
1、埠:http埠號是 80;https埠號是 443
2、傳輸協議:http是超文字傳輸協議,屬於明文傳輸;https是安全的超文字傳輸協議,是經過ssl加密後的傳輸協議
3、安全性:https使用了tls/ssl加密,比http更加的安全
4、證書:https需要申請ca證書
二、http的通訊過程
作為標準的c/s模型,http協議總是由客戶端發起,伺服器進行響應。
1、dns解析,網域名稱系統dns將網域名稱解析成ip位址
2、建立tcp連線,進行tcp的三次握手
3、瀏覽器傳送請求
4、伺服器響應瀏覽器,向瀏覽器傳送資料
5、通訊完成,tcp連線關閉
三、https的通訊過程
https通訊是建立在ssl連線層之上的請求和響應,客戶端將加密元件傳送到服務端,服務端進行匹配後將數字證書等資訊傳送到客戶端,客戶端進行證書驗證,驗證通過後使用非對稱加密對資料的金鑰進行協商,協商後得到對稱的加密金鑰,然後使用對稱演算法進行tcp鏈結,然後與客戶端進行三次握手後,進行資料傳輸,傳輸完成後,四次揮手,斷開鏈結,通訊結束。
通訊過程如下 :
1、客戶端和伺服器端通過tcp建立連線,並傳送https請求。
2、伺服器響應請求,並將數字證書傳送給客戶端,數字證書包括公共秘鑰、網域名稱、申請證書的公司。
3、客戶端收到伺服器端的數字證書之後,會驗證數字證書的合法性。
4、如果公鑰合格,那麼客戶端會生成client key,乙個用於進行對稱加密的金鑰,並用伺服器的公鑰對客戶端金鑰進行非對稱加密。
5、客戶端會再次發起請求,將加密之後的客戶端金鑰傳送給伺服器。
6、伺服器接收密文後,會用私鑰對其進行非對稱解密,得到客戶端秘鑰。並使用客戶端秘鑰進行對稱加密,生成密文並傳送。
7、客戶端收到密文,並使用客戶端秘鑰進行解密,獲取資料。
一文搞懂HTTP和HTTPS協議
1.什麼是協議?網路協議是計算機之間為了實現網路通訊而達成的一種 約定 或者 規則 有了這種 約定 不同廠商的生產裝置,以及不同作業系統組成的計算機之間,就可以實現通訊。2.http協議是什麼?http協議是超文字傳輸協議的縮寫,他是從web伺服器傳輸超文字標記語言 html 到本地瀏覽器的傳送協議...
一文搞懂transform skew
目錄 如何理解斜切 skew,先看乙個 demo。在下面的 demo 中,有 4 個正方形,分別是 紅色 不做 skew 變換,綠色 x 方向變換,藍色 y 方向變換,黑色 兩個方向都變換,拖動下面的滑塊可以檢視改變 skew 角度後的效果。切換 selector 可以設定 transform or...
一文搞懂併發和並行
併發和並行是兩個非常容易混淆的概念。它們都可以表示兩個或多個任務一起執行,但是偏重點有點不同。併發偏重於多個任務交替執行,而多個任務之間有可能還是序列的。併發是邏輯上的同時發生 simultaneous 而並行是物理上的同時發生。然而並行的偏重點在於 同時執行 並行 parallel 指在同一時刻,...