當(dāng)前位置:首頁 > 公眾號(hào)精選 > 小林coding
[導(dǎo)讀]因?yàn)?URL 的信息都是保存在 HTTP Header 中的,而 HTTPS 是會(huì)對 HTTP Header + HTTP Body 整個(gè)加密的,所以 URL 自然是會(huì)被加密的。

大家好,我是小林,昨晚有位讀者又給我送素材來了。

他在面試字節(jié),被問到這個(gè)問題:HTTPS 會(huì)加密 URL 嗎?


答案是,會(huì)加密的。

因?yàn)?URL 的信息都是保存在 HTTP Header 中的,而 HTTPS 是會(huì)對 HTTP Header + HTTP Body 整個(gè)加密的,所以 URL 自然是會(huì)被加密的。

下圖是 HTTP/1.1 的請求頭部,可以看到是包含 URL 信息的。

對應(yīng)的實(shí)際的 HTTP/1.1 的請求頭部:

HTTP/1.1 請求的第一行包含請求方法和路徑。HTTP/2 用一系列偽頭部(pseudo-header)替換了請求行,這五個(gè)偽頭部很容易識(shí)別,因?yàn)樗鼈冊诿Q的開頭用了一個(gè)冒號(hào)來表示。

比如請求方法和路徑偽頭字段如下:

  • ":method" 偽頭字段包含了 HTTP 方法;
  • ":path" 偽頭字段包含目標(biāo) URL 的路徑和查詢部分;

如下圖:

上圖是我瀏覽器 F12 開發(fā)者工具查看的信息,瀏覽器顯示信息是已經(jīng)解密后的信息,所以不要誤以為 URL 沒有加密。

如果你用抓包工具,抓包 HTTPS 的數(shù)據(jù)的話,你是什么都看不到的,如下圖,只會(huì)顯示“Application Data”,表示這是一個(gè)已經(jīng)加密的 HTTP 應(yīng)用數(shù)據(jù)。

HTTPS 可以看到域名嗎?

再問大家一個(gè)問題,HTTPS 可以看到請求的域名嗎?

從上面我們知道,HTTPS 是已經(jīng)把  HTTP Header + HTTP Body 整個(gè)加密的,所以我們是無法從加密的 HTTP 數(shù)據(jù)中獲取請求的域名的。

但是我們可以在 TLS 握手過程中看到域名信息。

比如下圖,TLS 第一次握手的 “Client Hello” 消息中,有個(gè) server name 字段,它就是請求的域名地址。

所以,用了 HTTPS 也不能以為偷偷在公司上某 hub 不會(huì)被發(fā)現(xiàn)

HTTPS 的應(yīng)用數(shù)據(jù)是如何保證完整性的?

TLS 的握手協(xié)議我相信大家都很熟悉了,我也寫過很多相關(guān)的文章了:

  • HTTPS RSA 握手解析
  • HTTPS ECDHE 握手解析

然后對于 HTTPS 是怎么加密 HTTP 數(shù)據(jù)的,我沒有提到過。

然后很多讀者以為 HTTP 數(shù)據(jù)就用對稱加密密鑰(TLS 握手過程中協(xié)商出來的對稱加密密鑰)加密后就直接發(fā)送了,然后就疑惑 HTTP 數(shù)據(jù)有沒有通過摘要算法來保證完整性?

事實(shí)上,TLS 在實(shí)現(xiàn)上分為握手協(xié)議記錄協(xié)議兩層:

  • TLS 握手協(xié)議就是我們說的 TLS 四次握手的過程,負(fù)責(zé)協(xié)商加密算法和生成對稱密鑰,后續(xù)用此密鑰來保護(hù)應(yīng)用程序數(shù)據(jù)(即 HTTP 數(shù)據(jù));
  • TLS 記錄協(xié)議負(fù)責(zé)保護(hù)應(yīng)用程序數(shù)據(jù)并驗(yàn)證其完整性和來源,所以對 HTTP 數(shù)據(jù)加密是使用記錄協(xié)議;

TLS 記錄協(xié)議主要負(fù)責(zé)消息(HTTP 數(shù)據(jù))的壓縮,加密及數(shù)據(jù)的認(rèn)證,過程如下圖:

具體過程如下:

  • 首先,消息被分割成多個(gè)較短的片段,然后分別對每個(gè)片段進(jìn)行壓縮。
  • 接下來,經(jīng)過壓縮的片段會(huì)被加上消息認(rèn)證碼(MAC 值,這個(gè)是通過哈希算法生成的),這是為了保證完整性,并進(jìn)行數(shù)據(jù)的認(rèn)證。通過附加消息認(rèn)證碼的 MAC 值,可以識(shí)別出篡改。與此同時(shí),為了防止重放攻擊,在計(jì)算消息認(rèn)證碼時(shí),還加上了片段的編碼。
  • 再接下來,經(jīng)過壓縮的片段再加上消息認(rèn)證碼會(huì)一起通過對稱密碼進(jìn)行加密。
  • 最后,上述經(jīng)過加密的數(shù)據(jù)再加上由數(shù)據(jù)類型、版本號(hào)、壓縮后的長度組成的報(bào)頭就是最終的加密報(bào)文數(shù)據(jù)。

記錄協(xié)議完成后,最終的加密報(bào)文數(shù)據(jù)將傳遞到傳輸控制協(xié)議 (TCP) 層進(jìn)行傳輸。


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉