偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

從HTTP到HTTPS再到HSTS,你了解多少?

開發(fā) 前端
近些年,隨著域名劫持、信息泄漏等網(wǎng)絡(luò)安全事件的頻繁發(fā)生,網(wǎng)站安全也變得越來越重要,也促成了網(wǎng)絡(luò)傳輸協(xié)議從 HTTP 到 HTTPS 再到 HSTS 的轉(zhuǎn)變。

[[203273]]

近些年,隨著域名劫持、信息泄漏等網(wǎng)絡(luò)安全事件的頻繁發(fā)生,網(wǎng)站安全也變得越來越重要,也促成了網(wǎng)絡(luò)傳輸協(xié)議從 HTTP 到 HTTPS 再到 HSTS 的轉(zhuǎn)變。

HTTP

HTTP(超文本傳輸協(xié)議) 是一種用于分布式、協(xié)作式和超媒體信息系統(tǒng)的應(yīng)用層協(xié)議。HTTP 是互聯(lián)網(wǎng)數(shù)據(jù)通信的基礎(chǔ)。它是由萬維網(wǎng)協(xié)會(W3C)和互聯(lián)網(wǎng)工程任務(wù)組(IETF)進(jìn)行協(xié)調(diào)制定了 HTTP 的標(biāo)準(zhǔn),最終發(fā)布了一系列的 RFC,并且在1999年6月公布的 RFC 2616,定義了 HTTP 協(xié)議中現(xiàn)今廣泛使用的一個版本——HTTP 1.1。

HTTP 訪問過程

HTTP 屬于 TCP/IP 模型中的應(yīng)用層協(xié)議,當(dāng)瀏覽器與服務(wù)器進(jìn)行互相通信時,需要先建立TCP 連接,之后服務(wù)器才會接收瀏覽器的請求信息,當(dāng)接收到信息之后,服務(wù)器返回相應(yīng)的信息。最后瀏覽器接受對服務(wù)器的信息應(yīng)答后,對這些數(shù)據(jù)進(jìn)行解釋執(zhí)行。

 

http 1.0 請求模式

HTTP 1.0 時,瀏覽器每次訪問都要單獨(dú)建立連接,這會造成資源的浪費(fèi)。

后來HTTP 1.1可以在一次連接中處理多個請求,并且將多個請求重疊進(jìn)行:

 

http 1.1 請求模式

HTTP 協(xié)議特點

  1. 簡單、快速、靈活:當(dāng)用戶想服務(wù)器發(fā)送請求時,只需傳送請求方法和路徑即可,HTTP 允許傳輸任意類型的數(shù)據(jù)對象。并且 HTTP 協(xié)議簡單易用,HTTP 服務(wù)器規(guī)模小,保證了網(wǎng)絡(luò)通信的速度;
  2. 無連接、無狀態(tài):HTTP協(xié)議限制每次連接只處理單個請求,當(dāng)服務(wù)器收到用戶請求后就會斷開連接,保證了傳輸時間的節(jié)省。同時HTTP協(xié)議對事務(wù)處理沒有記憶能力,如果后續(xù)的請求需要使用前面的信息就必須重傳數(shù)據(jù);
  3. 管線化和內(nèi)容編碼:隨著管線化技術(shù)的出現(xiàn),HTTP 請求比持久性連接速度更快,并且當(dāng)某些報文的內(nèi)容過大時,為了減少傳輸?shù)臅r間,HTTP 會采取壓縮文件的方式;
  4. HTTP 支持客戶/服務(wù)器模式

從 HTTP 到 HTTPS

HTTP 協(xié)議由于其簡單快速、占用資源少,一直被用于網(wǎng)站服務(wù)器和瀏覽器之間進(jìn)行數(shù)據(jù)傳輸。但是在數(shù)據(jù)傳輸?shù)倪^程中也存在很明顯的問題,由于 HTTP 是明文協(xié)議,不會對數(shù)據(jù)進(jìn)行任何方式的加密。當(dāng)黑客攻擊竊取了網(wǎng)站服務(wù)器和瀏覽器之間的傳輸報文的時,可以直接讀取傳輸?shù)男畔?,造成網(wǎng)站、用戶資料的泄密。因此 HTTP 不適用于敏感信息的傳播,這個時候需要引入 HTTPS(超文本傳輸安全協(xié)議)。

HTTPS

HTTPS(Hypertext Transfer Protocol Secure )是一種以計算機(jī)網(wǎng)絡(luò)安全通信為目的的傳輸協(xié)議。在HTTP下加入了SSL層,從而具有了保護(hù)交換數(shù)據(jù)隱私和完整性和提供對網(wǎng)站服務(wù)器身份認(rèn)證的功能,簡單來說它就是安全版的 HTTP 。

 

HTTP、HTTPS 差異

HTTPS 訪問過程

HTTPS 在進(jìn)行數(shù)據(jù)傳輸之前會與網(wǎng)站服務(wù)器和Web瀏覽器進(jìn)行一次握手,在握手時確定雙方的加密密碼信息。

具體過程如下:

  1. Web 瀏覽器將支持的加密信息發(fā)送給網(wǎng)站服務(wù)器;
  2. 網(wǎng)站服務(wù)器會選擇出一套加密算法和哈希算法,將驗證身份的信息以證書(證書發(fā)布 CA 機(jī)構(gòu)、證書有效期、公鑰、證書所有者、簽名等)的形式發(fā)送給Web瀏覽器;
  3. 當(dāng) Web 瀏覽器收到證書之后首先需要驗證證書的合法性,如果證書受到瀏覽器信任則在瀏覽器地址欄會有標(biāo)志顯示,否則就會顯示不受信的標(biāo)識。當(dāng)證書受信之后,Web 瀏覽器會隨機(jī)生成一串密碼,并使用證書中的公鑰加密。之后就是使用約定好的哈希算法握手消息,并生成隨機(jī)數(shù)對消息進(jìn)行加密,再將之前生成的信息發(fā)送給網(wǎng)站;

 

     4.  當(dāng)網(wǎng)站服務(wù)器接收到瀏覽器發(fā)送過來的數(shù)據(jù)后,會使用網(wǎng)站本身的私鑰將信息解密確定密碼,然后通過密碼解密Web瀏覽器發(fā)送過來的握手信息,并驗證哈希是否與 Web 瀏覽器一致。然后服務(wù)器會使用密碼加密新的握手信息,發(fā)送給瀏覽器;

     5.  最后瀏覽器解密并計算經(jīng)過哈希算法加密的握手消息,如果與服務(wù)發(fā)送過來的哈希一致,則此握手過程結(jié)束后,服務(wù)器與瀏覽器會使用之前瀏覽器生成的隨機(jī)密碼和對稱加密算法進(jìn)行加密交換數(shù)據(jù)。

 

HTTPS 握手過程

HTTPS 加密算法

為了保護(hù)數(shù)據(jù)的安全,HTTPS 運(yùn)用了諸多加密算法:

     1.  對稱加密:有流式、分組兩種,加密和解密都是使用的同一個密鑰。

         例如:DES、AES-GCM、ChaCha20-Poly1305 等。

     2.  非對稱加密:加密使用的密鑰和解密使用的密鑰是不相同的,分別稱為:公鑰、私鑰,公鑰和算法都是公開的,私鑰是保密的。非對稱加密算法性能較低,但是安全性超強(qiáng),由于其加密特性,非對稱加密算法能加密的數(shù)據(jù)長度也是有限的。

         例如:RSA、DSA、ECDSA、 DH、ECDHE 等。

     3.  哈希算法:將任意長度的信息轉(zhuǎn)換為較短的固定長度的值,通常其長度要比信息小得多,且算法不可逆。

         例如:MD5、SHA-1、SHA-2、SHA-256 等。

     4.  數(shù)字簽名:簽名就是在信息的后面再加上一段內(nèi)容(信息經(jīng)過 hash 后的值),可以證明信息沒有被修改過。hash 值一般都會加密后(也就是簽名)再和信息一起發(fā)送,以保證這個 hash 值不被修改。

從 HTTPS 到 HSTS

但是當(dāng)網(wǎng)站傳輸協(xié)議從 HTTP 到 HTTPS 之后,數(shù)據(jù)傳輸真的安全了嗎?

由于用戶習(xí)慣,通常準(zhǔn)備訪問某個網(wǎng)站時,在瀏覽器中只會輸入一個域名,而不會在域名前面加上 http:// 或者 https://,而是由瀏覽器自動填充,當(dāng)前所有瀏覽器默認(rèn)填充的都是http://。一般情況網(wǎng)站管理員會采用了 301/302 跳轉(zhuǎn)的方式由 HTTP 跳轉(zhuǎn)到 HTTPS,但是這個過程總使用到 HTTP 因此容易發(fā)生劫持,受到第三方的攻擊。

這個時候就需要用到 HSTS(HTTP 嚴(yán)格安全傳輸)。 

 

HTTP 請求劫持

HSTS

HSTS是國際互聯(lián)網(wǎng)工程組織 IETF 正在推行一種新的 Web 安全協(xié)議,網(wǎng)站采用 HSTS 后,用戶訪問時無需手動在地址欄中輸入 HTTPS,瀏覽器會自動采用 HTTPS 訪問網(wǎng)站地址,從而保證用戶始終訪問到網(wǎng)站的加密鏈接,保護(hù)數(shù)據(jù)傳輸安全。

HSTS 原理

HSTS 主要是通過服務(wù)器發(fā)送響應(yīng)頭的方式來控制瀏覽器操作:

     1.  首先在服務(wù)器響應(yīng)頭中添加 HSTS 響應(yīng)頭:Strict-Transport-Security: max-age=expireTime [; includeSubDomains] [; preload]

         此響應(yīng)頭只有在 https 訪問返回時才生效,其中[ ]中的參數(shù)表示可選;

     2.  設(shè)置 max-age 參數(shù),時間設(shè)置不宜過長,建議設(shè)置時間為 6 個月;

     3.  當(dāng)用戶下次使用 HTTP 訪問,客戶端就會進(jìn)行內(nèi)部跳轉(zhuǎn),并且能夠看到 307 Redirect Internel 的響應(yīng)碼;

     4.  網(wǎng)站服務(wù)器變成了 HTTPS 訪問源服務(wù)器。

開啟 HSTS 后網(wǎng)站可以有效防范中間人的攻擊,同時也會省去網(wǎng)站 301/302 跳轉(zhuǎn)花費(fèi)的時間,大大提升安全系數(shù)和用戶體驗。

開啟 HSTS 后網(wǎng)站安全系數(shù)檢測測評

開啟 HSTS 以后,可以到 ssllabs 進(jìn)行測試,網(wǎng)站的安全等級會進(jìn)一步提升。

開啟前等級為:A

 

開啟后等級變?yōu)椋篈+

 

總結(jié)

從 HTTP 到 HTTPS 再到 HSTS,網(wǎng)站的安全系數(shù)一直在上升,防止 DNS 劫持、數(shù)據(jù)泄密的力度也再加大。國內(nèi)公有云服務(wù)商比如又拍云提供了完整的 HTTPS和HSTS的解決方案,不僅支持 SSL 證書快速申請,HTTPS 一鍵部署,還支持一鍵開啟 HSTS,感興趣的同學(xué)可以前往又拍云官網(wǎng)了解。

參考資料來源:

 

責(zé)任編輯:龐桂玉 來源: Linux中國
相關(guān)推薦

2020-11-27 10:34:01

HTTPHTTPS模型

2023-12-20 14:44:33

軟件開發(fā)DevOpsNoOps

2016-11-28 16:23:23

戴爾

2011-05-25 14:59:35

if elseswitch case

2020-02-27 10:49:26

HTTPS網(wǎng)絡(luò)協(xié)議TCP

2020-05-17 13:59:37

物聯(lián)網(wǎng)工業(yè)物聯(lián)網(wǎng)工業(yè)4.0

2020-03-25 08:47:22

智能邊緣邊緣計算網(wǎng)絡(luò)

2023-10-25 08:17:06

Lite模式代理類

2023-10-29 08:35:47

AndroidAOP編程

2012-12-27 10:58:24

KVMKVM概念

2021-06-06 18:22:04

PprofGopher邏輯

2021-03-28 09:26:30

HttpHttp協(xié)議網(wǎng)絡(luò)協(xié)議

2020-08-13 17:18:20

Kubernetes邊緣容器

2019-04-11 15:45:08

ReactMixin前端

2022-06-21 10:10:14

HTTP協(xié)議TCP

2013-04-08 17:13:14

2022-06-07 07:37:40

線程進(jìn)程開發(fā)

2023-09-07 10:26:50

接口測試自動化測試

2022-02-08 12:06:12

云計算

2019-08-07 17:18:18

云計算云原生函數(shù)
點贊
收藏

51CTO技術(shù)棧公眾號