成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

一文讀懂HTTPS以及SSL單向驗證和雙向驗證

安全 應用安全
HTTPS是一種通過計算機網絡進行安全通信的傳輸協議,經由HTTP進行通信,利用SSL/TLS建立安全信道,加密數據包。HTTPS使用的主要目的是提供對網站服務器的身份認證,同時保護交換數據的安全性與完整性。

 [[326864]]

簡述

本文主要介紹HTTPS以及SSL單向驗證和雙向驗證。

HTTPS介紹

HTTPS是一種通過計算機網絡進行安全通信的傳輸協議,經由HTTP進行通信,利用SSL/TLS建立安全信道,加密數據包。HTTPS使用的主要目的是提供對網站服務器的身份認證,同時保護交換數據的安全性與完整性。

HTTP介紹

HTTP是超文本傳輸協議,是一個基于請求與響應、無狀態的、應用層的協議,常基于TCP/IP協議傳輸數據,互聯網上應用最為廣泛的一種網絡協議,所有的WWW文件都必須遵守這個標準。

SSL/TLS介紹

TLS在傳輸層對網絡連接進行加密,前身是SSL協議,由網景公司1995年發布,用以保障數據在Internet上安全地進行傳輸,利用數據加密(Encryption)技術,確保數據在網絡傳輸過程中不會被截取或竊聽。

數據加密用到了對稱加密和非對稱加密,TCP協議建立傳輸連接時,SSL首先對對稱加密的密鑰使用非對稱加密的公鑰進行非對稱加密,連接建立好之后,SSL對傳輸內容使用對稱加密。

對稱加密,速度高,可加密內容較大,用來加密會話過程中的消息。

非對稱加密,加密速度較慢,但能提供更好的身份認證技術,用來加密對稱加密的密鑰。

OSI模型

HTTPS和HTTP協議位于應用層,SSL\TLS協議位于傳輸層與應用層之間,TCP協議位于傳輸層,IP協議位于網絡層。如下圖所示:

 

一文讀懂HTTPS以及SSL單向驗證和雙向驗證

 

圖 1 協議模型

SSL單向驗證

客戶端執行HTTPS請求時,需要由TCP協議建立和釋放連接。這就涉及TCP協議的三次握手和四次揮手。想要了解一文讀懂TCP三次握手工作原理及面試常見問題匯總和一文讀懂TCP四次揮手工作原理及面試常見問題匯總的同學,請點擊鏈接查看。

TCP連接建立好后,對于HTTP而言,服務器就可以發送數據給客戶端。但是對于HTTPS,它還要運行SSL/TLS協議,SSL/TLS協議分兩層,第一層是記錄協議,主要用于傳輸數據的加密壓縮;第二層是握手協議,它建立在第一層協議之上,主要用于數據傳輸前的雙方身份認證、協商加密算法、交換密鑰。

SSL單向驗證流程:

 

一文讀懂HTTPS以及SSL單向驗證和雙向驗證

 

圖 2 SSL單向驗證流程

SSL單向驗證總共有四步

1) 第一步,客戶端向服務器端發起Client Hello,請求內容包括:

a. 客戶端支持的SSL/TLS協議版本列表;

b. 客戶端支持的對稱加密算法列表;

c. 客戶端生成的隨機數A;

2) 第二步,服務器端回應客戶端Server Hello,回應內容包括:

a. 雙方都支持的SSL/TLS協議版本;

b. 雙方都支持的對稱加密算法;

c. 服務器密鑰庫中的證書;

d. 服務器端生成的隨機數B;

3) 第三步,客戶端收到服務器端回應,客戶端檢查服務器端證書是否合法,驗證內容如下:

a. 服務器端證書是否過期;

b. 服務器端證書是否被吊銷;

c. 服務器端證書是否可信;

d. 服務器端證書域名和客戶端請求域名是否一致。

驗證通過后,客戶端回應服務器端,回應內容包括:

a. 客戶端生成一個"隨機數C","隨機數C"也被稱為"pre-master-key",然后使用服務器端證書中的公鑰加密"隨機數C",將加密后的"隨機數C"發送給服務器端;

4) 第四步,服務器端使用密鑰庫中的私鑰解密加密后的"隨機數C"得到"隨機數C",此時客戶端和服務器端都拿到了隨機數A、隨機數B、隨機數C,雙發通過這3個隨機數使用相同的密鑰交換算法計算得到相同的對稱加密密鑰,這個對稱加密密鑰就作為客戶端和服務器端數據傳輸時對稱加密使用的密鑰。

服務器端和客戶端,握手結束,之后就可以用對稱加密傳輸數據了。

SSL雙向驗證

SSL單向驗證過程中,客戶端會驗證自己訪問的服務器端,服務器端對客戶端不做驗證。如果服務器端驗證客戶端,則需要開啟服務器端驗證,這就是雙向驗證。

SSL雙向驗證和單向驗證的不同之處在于:

a. 第二步中服務器端第一次回應客戶端的Server Hello消息中,會要求客戶端提供客戶端證書;

b. 第三步中客戶端驗證完服務器端證書后,回應的內容中,會增加兩個信息:

a) 客戶端證書;

b) 客戶端證書驗證消息(CertificateVerify message):客戶端將之前所有收到的和發送的消息組合起來,并用hash算法得到一個hash值,然后用客戶端密鑰庫的私鑰對這個hash進行簽名,這個簽名就是CertificateVerify message;

c. 服務器端收到客戶端證書后,會做如下處理:

a) 確認客戶端發送的證書是有效合法的;

b) 用客戶端證書中的公鑰驗證收到信息中的簽名,以確定這個證書是客戶端發出的;

服務器端和客戶端,握手結束,之后就可以用對稱加密傳輸數據了。

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

2020-05-25 10:22:56

技術資訊

2021-12-16 14:45:09

https架構服務端

2023-12-22 19:59:15

2021-08-04 16:06:45

DataOps智領云

2018-09-28 14:06:25

前端緩存后端

2022-09-22 09:00:46

CSS單位

2022-11-06 21:14:02

數據驅動架構數據

2025-04-03 10:56:47

2023-11-27 17:35:48

ComponentWeb外層

2023-05-20 17:58:31

低代碼軟件

2022-07-05 06:30:54

云網絡網絡云原生

2022-07-26 00:00:03

語言模型人工智能

2022-12-01 17:23:45

2021-12-29 18:00:19

無損網絡網絡通信網絡

2022-10-20 08:01:23

2023-10-23 15:38:12

Spring 5開發

2022-07-27 15:56:58

固態硬盤網絡存儲

2023-05-17 16:01:00

物聯網數據治理

2023-04-11 14:48:34

2024-04-10 13:50:41

CentOSUbuntu操作系統
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日本精品一区二区三区在线观看视频 | 国产日韩欧美在线观看 | 国产精品久久网 | 国产一区二区精品自拍 | 国产日韩久久 | 资源首页二三区 | 欧美一区二区激情三区 | 新疆少妇videos高潮 | 成人一级视频在线观看 | 欧州一区| 中国91av| 尤物在线精品视频 | 综合自拍| 国产精品久久久久久久久久久久久久 | 巨大荫蒂视频欧美另类大 | 久久久视 | 毛片在线看片 | 91在线观看免费视频 | h视频在线免费 | 有码在线| 国产激情精品 | 久久国产精品网站 | 久草在线中文888 | 亚洲欧美日韩网站 | 欧美激情一区二区三级高清视频 | 成人精品一区二区三区中文字幕 | 日韩另类 | 久久午夜精品福利一区二区 | 国产成人一区二区三区久久久 | 三级国产三级在线 | 欧美老妇交乱视频 | 国产精品高潮呻吟 | 久久成人精品视频 | 黄色大片免费观看 | 精品欧美一区二区三区久久久 | 91视频网址| 免费三级黄 | 国产96色在线 | 伊人网国产 | 国产一区二区在线视频 | 免费播放一级片 |