自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

HTTP和HTTPS連接是如何建立的?

安全 應用安全
HTTPS是在HTTP的基礎上和ssl/tls證書結合起來的一種協(xié)議,保證了傳輸過程中的安全性,減少了被惡意劫持的可能.很好的解決了http的三個缺點(被監(jiān)聽、被篡改、被偽裝)那么HTTP和HTTPS連接是如何建立的?簡單的理解,HTTPS就是將HTTP中的傳輸內容進行了加密,然后通過可靠的連接,傳輸?shù)綄Ψ降臋C器上。

 HTTPS指的是超文本傳輸安全協(xié)議。HTTPS是在HTTP的基礎上和ssl/tls證書結合起來的一種協(xié)議,保證了傳輸過程中的安全性,減少了被惡意劫持的可能.很好的解決了http的三個缺點(被監(jiān)聽、被篡改、被偽裝)那么HTTP和HTTPS連接是如何建立的?簡單的理解,HTTPS就是將HTTP中的傳輸內容進行了加密,然后通過可靠的連接,傳輸?shù)綄Ψ降臋C器上。

[[269337]]

HTTP和HTTPS連接是如何建立的?

1、建立連接

HTTP和HTTPS都需要在建立連接的基礎上來進行數(shù)據(jù)傳輸,是基本操作

當客戶在瀏覽器中輸入網(wǎng)址后,瀏覽器會在瀏覽器DNS緩存,本地DNS緩存,和Hosts中尋找對應的記錄,如果沒有獲取到則會請求DNS服務來獲取對應的ip

當獲取到ip后,tcp連接會進行三次握手建立連接

2、tcp的三次揮手和四次揮手

過程簡圖

 

 

HTTP和HTTPS連接是如何建立的?

 

 

3、三次握手(建立連接)

***次:建立連接時,客戶端發(fā)送SYN包(syn=j)到服務器,并進入SYN_SEND狀態(tài),等待服務器確認;

第二次:服務器收到SYN包,向客戶端返回ACK(ack=j+1),同時自己也發(fā)送一個SYN包(syn=k),即SYN+ACK包,此時服務器進入SYN_RCVD狀態(tài);

第三次:客戶端收到服務器的SYN+ACK包,向服務器發(fā)送確認包ACK(ack=k+1),此包發(fā)送完畢,客戶端和服務器進入ESTABLISHED狀態(tài),完成三次握手。

完成三次握手,客戶端與服務器開始傳送數(shù)據(jù),也就是ESTABLISHED狀態(tài)。

三次握手保證了不會建立無效的連接,從而浪費資源。

4、四次握手(斷開連接)

***次:TCP客戶端發(fā)送一個FIN,用來關閉客戶到服務器的數(shù)據(jù)傳送。

第二次:服務器收到這個FIN,它發(fā)回一個ACK,確認序號為收到的序號加1。和SYN一樣,一個FIN將占用一個序號。

第三次:服務器關閉客戶端的連接,發(fā)送一個FIN給客戶端。

第四次:客戶端發(fā)回ACK報文確認,并將確認序號設置為收到序號加1。

5、 HTTP請求過程

  • 建立連接完畢以后客戶端會發(fā)送響應給服務端
  • 服務端接受請求并且做出響應發(fā)送給客戶端
  • 客戶端收到響應并且解析響應給用戶

 

 

HTTP和HTTPS連接是如何建立的?

 

 

HTTPS

  • 在使用HTTPS是需要保證服務端配置正確了對應的安全證書
  • 客戶端發(fā)送請求到服務端
  • 服務端返回公鑰和證書到客戶端
  • 客戶端接收后會驗證證書的安全性,如果通過則會隨機生成一個隨機數(shù),用公鑰對其加密,發(fā)送到服務端
  • 服務端接受到這個加密后的隨機數(shù)后會用私鑰對其解密得到真正的隨機數(shù),隨后用這個隨機數(shù)當做私鑰對需要發(fā)送的數(shù)據(jù)進行對稱加密
  • 客戶端在接收到加密后的數(shù)據(jù)使用私鑰(即生成的隨機值)對數(shù)據(jù)進行解密并且解析數(shù)據(jù)呈現(xiàn)結果給客戶

SSL加密建立

 

HTTPS是如何建立連接的,又是怎么進行加密的?

那HTTPS是如何建立連接的呢,怎么商量好加密密碼的呢?HTTPS 同 HTTP 一樣,首先建立起 TCP 連接,但是建立好之后并不是立即發(fā)出請求,索要具體的資源,而是先和對方商量加密的密碼。商量的加密密碼的過程就是建立 TSL 連接的過程。

其實并沒有建立真實的連接,只是在剛剛建立好的 TCP 連接上,包裹上一層加密協(xié)議而已。但是也被形象的稱作連接建立。具體建立方式如下:客服端發(fā)給服務器一個HELLO包,里面有我支持的加密協(xié)議列表。服務器收到后發(fā)送也給客戶端發(fā)送一個HELLO數(shù)據(jù)包,數(shù)據(jù)包內包涵服務器挑選的加密算法,還包含自己的數(shù)字證書信息。

你拿到他的數(shù)字證書信息之后就需要去向 CA 校驗證書,校驗成功后也知道了對方的公鑰,就該通知服務器,我們以后對稱加密的密碼是多少,當然,這個密碼是要用公鑰加密的。在這條消息發(fā)送之前,客戶端會先發(fā)送一條消息,告訴服務器,我下一個消息將使用你剛剛挑選的加密協(xié)議進行加密了,下一個消息是加密后的哦,不要搞錯。之后將對稱加密的密文發(fā)給服務器。服務器接收到之后,會根據(jù)對稱密鑰生成一系列復雜的加密算法,在傳輸給客服端,客戶端收到后會給服務器發(fā)送一個 Finished Message ,服務器收到消息后也回一個 Finished Message。這時,我們終于完成了加密的準備工作,一切加密方式和密鑰都商量好了,終于可以傳輸數(shù)據(jù)了。至此,TSL 建立連接的過程結束。

目前網(wǎng)站最安全的保護方式就是為網(wǎng)站部署SSL證書,SSL證書為我們提供了更加安全、隱私、健康的互聯(lián)網(wǎng)環(huán)境,SSL證書對傳輸中的數(shù)據(jù)進行加密,防止黑客的盜取甚至篡改數(shù)據(jù),保護用戶的個人信息及企業(yè)機密數(shù)據(jù)。

責任編輯:武曉燕 來源: 今日頭條
相關推薦

2019-12-13 09:14:35

HTTP2協(xié)議

2021-05-12 08:20:53

開發(fā)

2021-05-13 07:58:05

HTTPSHTTP安全

2023-10-20 08:14:21

2015-10-21 15:55:04

HTTPHTTPS

2015-02-05 09:25:51

HTTPSSPDYHTTP2

2024-03-01 09:57:19

數(shù)據(jù)庫檢索項目

2015-02-06 17:55:40

2024-08-23 09:02:56

2022-02-11 20:45:42

HTTPHTTPS協(xié)議

2015-06-25 10:26:41

YelpMesosDocker

2023-11-07 00:00:00

Dialector參數(shù)接口

2013-08-14 10:41:28

2018-06-06 11:01:25

HTTP長連接短連接

2010-06-23 15:28:22

2015-03-25 12:09:18

TCP網(wǎng)絡協(xié)議TCP建立連接

2020-09-05 17:00:20

HTTP長連接短連接

2024-04-03 08:32:30

2020-11-18 09:29:06

NginxHTTPHTTPS
點贊
收藏

51CTO技術棧公眾號