【计算机网络】HTTP 与 HTTPS ( HTTPS 简介 | HTTP 通信过程 )
文章目錄
- 一、HTTPS 簡(jiǎn)介
- 二、HTTP 通信過(guò)程
一、HTTPS 簡(jiǎn)介
HTTPS 協(xié)議就是在 HTTP 協(xié)議的基礎(chǔ)上 , 增加了一個(gè) SSL 外殼 , 對(duì) HTTP 協(xié)議進(jìn)行加密 ;
HTTP 協(xié)議傳輸數(shù)據(jù)時(shí) , 傳輸?shù)木褪?明文 , 如果抓包或者截獲后 , 可以直接看到傳輸?shù)臄?shù)據(jù)內(nèi)容 ;
HTTPS 協(xié)議在網(wǎng)絡(luò)傳輸時(shí) , 傳輸?shù)膬?nèi)容是 加密后的內(nèi)容 , 不是明文 , 更不容易被截獲 ;
HTTP 特點(diǎn) :
① 無(wú)狀態(tài) : 服務(wù)器 不存儲(chǔ)客戶端的狀態(tài) , 客戶端每次請(qǐng)求服務(wù)器 , 都當(dāng)做新的客戶端第一次請(qǐng)求 ; 爬蟲可以隨意無(wú)限次地抓取網(wǎng)站信息 ;
② 無(wú)連接 : 客戶端每次請(qǐng)求服務(wù)器端 , 數(shù)據(jù)傳授完畢后 , 連接斷開 ; HTTP 是基于 TCP 協(xié)議的 , 每次連接需要 333 次握手 , 每次斷開連接需要 444 次揮手 , 頻繁進(jìn)行連接斷開操作 , 繁瑣 , 延遲高 , 空耗系統(tǒng)資源 ;
③ 安全性差 : 傳輸?shù)臄?shù)據(jù)是 明文 , 無(wú)法確保數(shù)據(jù)保密性 ; 客戶端和服務(wù)器端不驗(yàn)證對(duì)方身份 , 無(wú)法確保數(shù)據(jù)完整性 ;
④ 快速 , 靈活 , 高效 ;
HTTPS 特點(diǎn) :
① 安全性強(qiáng) : 傳輸數(shù)據(jù)加密 , 中間截獲 , 無(wú)法進(jìn)行解密 ;
② 身份驗(yàn)證 : 通過(guò) SSL 認(rèn)證證書 , 確認(rèn)通信的 客戶端 與 服務(wù)器 雙方的身份 ;
③ 數(shù)據(jù)完整性 : 加密后的數(shù)據(jù)能防止被截獲修改 ;
二、HTTP 通信過(guò)程
發(fā)送 HTTP 請(qǐng)求 , HTTP 基于 TCP , 因此需要先建立 TCP 連接 ;
① 建立 TCP 連接 : TCP 連接的建立需要 333 次握手機(jī)制 ;
- 客戶端 -> 服務(wù)器端 : 你能聽到我說(shuō)話嗎 ?
- 服務(wù)器端 -> 客戶端 : 我能 , 你能聽到我說(shuō)話嗎 ?
- 客戶端 -> 服務(wù)器端 : 我能 , 開始發(fā)送數(shù)據(jù) ;
② 客戶端瀏覽器向 Web 服務(wù)器發(fā)送請(qǐng)求報(bào)文 : 請(qǐng)求頭命令就是下圖 " 請(qǐng)求行 " 信息 ; 如
GET / HTTP/1.1③ 客戶端瀏覽器發(fā)送請(qǐng)求頭信息 : 請(qǐng)求頭信息就是下圖中的 " 請(qǐng)求頭部 " 數(shù)據(jù) , 由若干鍵值對(duì)組成 ; 如下示例
Host: rucfd.ruc.edu.cn Connection: keep-alive Cache-Control: max-age=0 Upgrade-Insecure-Requests: 1 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9 Accept-Encoding: gzip, deflate Accept-Language: zh-CN,zh;q=0.9 If-None-Match: "b7f-5b575595fe630-gzip" If-Modified-Since: Wed, 02 Dec 2020 06:28:18 GMT完整的請(qǐng)求報(bào)文信息 :
GET / HTTP/1.1 Host: rucfd.ruc.edu.cn Connection: keep-alive Cache-Control: max-age=0 Upgrade-Insecure-Requests: 1 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9 Accept-Encoding: gzip, deflate Accept-Language: zh-CN,zh;q=0.9 If-None-Match: "b7f-5b575595fe630-gzip" If-Modified-Since: Wed, 02 Dec 2020 06:28:18 GMT④ Web 服務(wù)器向客戶端瀏覽器會(huì)送應(yīng)答第一部分 : 只回送 " 響應(yīng)行 " 數(shù)據(jù) ; 如 :
HTTP/1.1 200 OK⑤ Web 服務(wù)器向客戶端瀏覽器回送應(yīng)答第二部分 : 回送 " 響應(yīng)頭部 " 信息 ; 如 :
Server: none Date: Mon, 21 Jun 2021 05:15:56 GMT Content-Type: text/html Content-Length: 1104 Connection: keep-alive Last-Modified: Wed, 02 Dec 2020 06:28:18 GMT ETag: "b7f-5b575595fe630-gzip" Accept-Ranges: bytes Vary: Accept-Encoding Content-Encoding: gzip響應(yīng)報(bào)文完整示例 :
HTTP/1.1 200 OK Server: none Date: Mon, 21 Jun 2021 05:15:56 GMT Content-Type: text/html Content-Length: 1104 Connection: keep-alive Last-Modified: Wed, 02 Dec 2020 06:28:18 GMT ETag: "b7f-5b575595fe630-gzip" Accept-Ranges: bytes Vary: Accept-Encoding Content-Encoding: gzip⑥ Web 服務(wù)器向客戶端瀏覽器回送應(yīng)答第三部分 : 回送用戶請(qǐng)求的實(shí)際數(shù)據(jù) , 在之前 " 響應(yīng)頭部 " 中的 Content-Type 中設(shè)置有用戶請(qǐng)求的類型 , 是 text/html 類型 , 這里會(huì)送的就是該 html 文本數(shù)據(jù) ;
Content-Type: text/html⑦ Web 服務(wù)器關(guān)閉 TCP 連接 : 444 次揮手 ;
總結(jié)
以上是生活随笔為你收集整理的【计算机网络】HTTP 与 HTTPS ( HTTPS 简介 | HTTP 通信过程 )的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 【OkHttp】Android 项目导入
- 下一篇: 【计算机网络】HTTP 与 HTTPS