如何理解HTTPS雙向認(rèn)證

如何理解HTTPS雙向認(rèn)證,針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。

創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),太仆寺企業(yè)網(wǎng)站建設(shè),太仆寺品牌網(wǎng)站建設(shè),網(wǎng)站定制,太仆寺網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷(xiāo),網(wǎng)絡(luò)優(yōu)化,太仆寺網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M(mǎn)足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專(zhuān)業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶(hù)成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。

一、HTTPS基礎(chǔ)

1. 什么是HTTP和HTTPS

HTTP:超文本傳輸協(xié)議(HyperText Transfer Protocol)是互聯(lián)網(wǎng)上應(yīng)用最為廣泛的一種網(wǎng)絡(luò)協(xié)議,是一個(gè)客戶(hù)端和服務(wù)器端請(qǐng)求和應(yīng)答的標(biāo)準(zhǔn)(TCP),用于從WWW服務(wù)器傳輸超文本到本地瀏覽器的傳輸協(xié)議,它可以使瀏覽器更加高效,使網(wǎng)絡(luò)傳輸減少。

HTTPS:超文本傳輸安全協(xié)議(HyperText Transfer Protocol Secure)是以安全為目標(biāo)的HTTP通道,簡(jiǎn)單講是HTTP的安全版,即HTTP下加入SSL/TLS層,HTTPS的安全基礎(chǔ)是SSL/TLS,因此加密的詳細(xì)內(nèi)容就需要SSL/TLS。HTTPS協(xié)議的主要作用可以分為兩種:一種是建立一個(gè)信息安全通道,來(lái)保證數(shù)據(jù)傳輸?shù)陌踩?;另一種就是確認(rèn)網(wǎng)站的真實(shí)性。

2. SSL和TLS區(qū)別是什么

SSL:安全套接字層(Secure Socket Layer)位于可靠的面向連接的網(wǎng)絡(luò)層協(xié)議和應(yīng)用層協(xié)議之間的一種協(xié)議層。SSL通過(guò)互相認(rèn)證、使用數(shù)字簽名確保完整性、使用加密確保私密性,以實(shí)現(xiàn)客戶(hù)端和服務(wù)器之間的安全通訊。該協(xié)議由兩層組成:SSL記錄協(xié)議和SSL握手協(xié)議。

TLS:傳輸層安全協(xié)議(Transport Layer Security)用于兩個(gè)應(yīng)用程序之間提供保密性和數(shù)據(jù)完整性。該協(xié)議由兩層組成:TLS記錄協(xié)議和TLS握手協(xié)議。

總結(jié):SSL有1,2,3三個(gè)版本,但現(xiàn)在只使用版本3,TLS是SSL的標(biāo)準(zhǔn)化后的產(chǎn)物,有TLS1.0 、TLS1.1、TLS1.2三個(gè)版本,TLS1.0和SSL3.0幾乎沒(méi)有區(qū)別,事實(shí)上我們現(xiàn)在用的都是TLS,但因?yàn)闅v史上習(xí)慣了SSL這個(gè)稱(chēng)呼,平常還是以叫SSL為多。

3. 什么是CRL

CRL:證書(shū)吊銷(xiāo)列表 (Certificate Revocation List) ,客戶(hù)端通過(guò)定期的去CA那里請(qǐng)求一個(gè)被吊銷(xiāo)的證書(shū)列表,作為本地緩存,從而之后對(duì)服務(wù)器證書(shū)的驗(yàn)證就可以依賴(lài)這個(gè)緩存。但是這個(gè)方案需要客戶(hù)端去管理一個(gè)本地緩存,這相當(dāng)于把所有的責(zé)任都扔給了客戶(hù)端??蛻?hù)端訪(fǎng)問(wèn)CA的服務(wù)器的帶寬和穩(wěn)定性都存在疑問(wèn),所以這種方案是注定要輸給服務(wù)端的解決方案的。

4. 什么是OCSP

OCSP:在線(xiàn)證書(shū)狀態(tài)協(xié)議(Online Certificate Status Protocol),在TLS的使用中,客戶(hù)端無(wú)法判斷一個(gè)還沒(méi)有過(guò)期的證書(shū)是否被吊銷(xiāo)了。因?yàn)镃A在頒發(fā)了證書(shū)之后大部分情況下都是等待這個(gè)證書(shū)過(guò)期了之后的自然失效,而如果CA出于某些原因要人為的吊銷(xiāo)某個(gè)證書(shū)就沒(méi)有了辦法。這個(gè)時(shí)候客戶(hù)端在從服務(wù)端拿到了一個(gè)證書(shū)之后,去找OCSP服務(wù)端的接口去驗(yàn)證一下這個(gè)證書(shū)的是否過(guò)期這一信息。

5. 什么是HSTS

HSTS:http嚴(yán)格傳輸安全(HTTP Strict-Transport-Security),HSTS是國(guó)際互聯(lián)網(wǎng)工程組織 IETF 正在推行一種新的 Web 安全協(xié)議,網(wǎng)站采用 HSTS 后,用戶(hù)訪(fǎng)問(wèn)時(shí)無(wú)需手動(dòng)在地址欄中輸入 HTTPS,瀏覽器會(huì)自動(dòng)采用 HTTPS 訪(fǎng)問(wèn)網(wǎng)站地址,從而保證用戶(hù)始終訪(fǎng)問(wèn)到網(wǎng)站的加密鏈接,保護(hù)數(shù)據(jù)傳輸安全。在服務(wù)端設(shè)置HSTS后,不安全的請(qǐng)求將無(wú)法訪(fǎng)問(wèn)

二、HTTPS流程圖

如何理解HTTPS雙向認(rèn)證

三、HTTPS報(bào)文名詞答疑

1. Session Identifier

Session Identifier(會(huì)話(huà)標(biāo)識(shí)符),是 TLS 握手中生成的 Session ID。服務(wù)端可以將 Session ID 協(xié)商后的信息存起來(lái),瀏覽器也可以保存 Session ID,并在后續(xù)的 ClientHello 握手中帶上它,如果服務(wù)端能找到與之匹配的信息,就可以完成一次快速握手。

2. Session Ticket

Session Identifier 機(jī)制有一些弊端,例如:1)負(fù)載均衡中,多機(jī)之間往往沒(méi)有同步 Session 信息,如果客戶(hù)端兩次請(qǐng)求沒(méi)有落在同一臺(tái)機(jī)器上就無(wú)法找到匹配的信息;2)服務(wù)端存儲(chǔ) Session ID 對(duì)應(yīng)的信息不好控制失效時(shí)間,太短起不到作用,太長(zhǎng)又占用服務(wù)端大量資源。

而 Session Ticket(會(huì)話(huà)記錄單)可以解決這些問(wèn)題,Session Ticket 是用只有服務(wù)端知道的安全密鑰加密過(guò)的會(huì)話(huà)信息,最終保存在瀏覽器端。瀏覽器如果在 ClientHello 時(shí)帶上了 Session Ticket,只要服務(wù)器能成功解密就可以完成快速握手。

3. Client Key Exchange和Server Key Exchange

協(xié)議里常用的cipher suite除了RSA, DH_DSS,DH_RSA之外,隨機(jī)數(shù)C(pre-master key)是雙方各自計(jì)算而不放在信道上傳遞的。例如,如果用的是TLS_DHE_XXX等等,隨機(jī)數(shù)C(pre-master key)是各自從server key Exchange, client key exchange里計(jì)算的(dh協(xié)商,雙方各自貢獻(xiàn)一部分公共信息,但隨機(jī)數(shù)C(pre-master key)只在本地產(chǎn)生,TCP通信包里沒(méi)有)

四、HTTPS抓包報(bào)文分析細(xì)節(jié)

1. client hello

①、發(fā)送客戶(hù)端支持的tls版本

②、發(fā)送客戶(hù)端支持的對(duì)稱(chēng)加密列表

③、隨機(jī)數(shù)A

如何理解HTTPS雙向認(rèn)證

2. server hello

①、服務(wù)端選擇的tls版本

②、服務(wù)端選擇的對(duì)稱(chēng)加密算法

③、服務(wù)端證書(shū)

④、隨機(jī)數(shù)B

⑤、Server Key Exchange

⑥、要求客戶(hù)端返回客戶(hù)端證書(shū)(https雙向認(rèn)證獨(dú)有)

如何理解HTTPS雙向認(rèn)證

如何理解HTTPS雙向認(rèn)證

3. 客戶(hù)端發(fā)送證書(shū)等信息

①、客戶(hù)端證書(shū)(https雙向認(rèn)證獨(dú)有)

②、Client Key Exchange

③、客戶(hù)端私鑰簽名的握手?jǐn)?shù)據(jù)(https雙向認(rèn)證獨(dú)有)

④、對(duì)稱(chēng)加密通知

⑤、使用隨機(jī)數(shù)A、隨機(jī)數(shù)B、隨機(jī)數(shù)C(pre master key)計(jì)算出的對(duì)稱(chēng)加密密鑰加密的握手?jǐn)?shù)據(jù)

如何理解HTTPS雙向認(rèn)證

4. 服務(wù)端完成握手

①、New Session Ticket

②、對(duì)稱(chēng)加密通知

③、使用隨機(jī)數(shù)A、隨機(jī)數(shù)B、隨機(jī)數(shù)C(pre master key)計(jì)算出的對(duì)稱(chēng)加密密鑰加密的握手?jǐn)?shù)據(jù)

如何理解HTTPS雙向認(rèn)證

關(guān)于如何理解HTTPS雙向認(rèn)證問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開(kāi),可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識(shí)。

分享文章:如何理解HTTPS雙向認(rèn)證
網(wǎng)站URL:http://muchs.cn/article10/ihsggo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站、用戶(hù)體驗(yàn)品牌網(wǎng)站建設(shè)、網(wǎng)站收錄做網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)