https協議分析

2022-07-09 12:42:26 字數 2071 閱讀 5504

https全稱是超文字傳輸安全協議,https利用ssl/tls加密資料報來進行http通訊。https開發的主要目的,是提供對**伺服器的身份認證,保護交換資料的隱私與完整性。

通常,http直接和tcp通訊,當使用ssl時,則變成了http先和ssl通訊,再由ssl和tcp通訊 ,如下圖所示。

乙個安全的網路環境包含以下3個方面:

而https的誕生就是為了解決這3個問題。所以可以理解為:http + 加密 + 認證 + 完整性保護 = https

https中就是應用了各種密碼學技術,保證

1、數字證書 

一種檔案的名稱,好比乙個人或者機構的名稱,能夠證明這個人或者機構的真實性。其中包含的資訊,用於實現上述功能。其作用類似於生活中的身份證。最簡單的證書包含乙個公開秘鑰、公鑰的數字簽名,公鑰擁有者的資訊。

2、數字簽名

對檔案加密只是確保了檔案的完整性,通過數字簽名的技術可以確定發件人的身份。而如何實現發件人的身份不是偽造的呢,簡單來說,數字簽名(digital signature)是公鑰密碼的逆應用:用私鑰加密訊息,用公鑰解密訊息。

生成簽名過程:

一般來說,不直接對訊息進行簽名,而是對訊息的雜湊值進行簽名,步驟如下。

對訊息進行雜湊計算,得到雜湊值

利用私鑰對雜湊值進行加密,生成簽名

將簽名附加在訊息後面,一起傳送過去

驗證簽名過程:

收到訊息後,提取訊息中的簽名

用公鑰對簽名進行解密,得到雜湊值1。

對訊息中的正文進行雜湊計算,得到雜湊值2。

比較雜湊值1和雜湊值2,如果相同,則驗證成功。

3、對稱加密

對稱加密又叫做共享秘鑰加密,加密和解密使用的是同一秘鑰。當傳輸時也必須把金鑰傳給對方,這就造成金鑰傳輸的安全問題,如果金鑰被竊取,那麼加密就變得毫無意義。常見的對稱加密演算法有des,aes等。

4、非對稱加密

非對稱加密又叫做公開秘鑰加密,顧名思義,加密的秘鑰是公開的。之所以叫非對稱加密,是因為秘鑰是一對的,分為公鑰和私鑰。公鑰公開給大家,私鑰自己儲存,任何人都可以通過公鑰加密明文,但只有私鑰擁有者才可以通過私鑰解讀公鑰加密後的密文。常見的非對稱加密又rsa,dh等

安全演算法

不使用自己開發的加密演算法,而使用沒有專利的、安全的、公開的標準加密演算法。

說明:當前的專利演算法包括但不限於:idea。已過專利保護期的加密演算法已不再受專利保護;

對稱加密演算法建議使用:aes;

金鑰交換演算法建議使用:dh;

數字簽名演算法建議使用:sha1withdsa;

非對稱演算法建議使用:ecc、rsa;

hash(雜湊)演算法建議使用:sha;

hmac(基於雜湊的訊息驗證碼)演算法建議使用:hmac-sha;

建議的各演算法建議採用如下的加密強度:

https工作流程可以分為3個階段:

1、認證伺服器:客戶端確認伺服器證書的認證機構是否在受信任的ca機構列表中,從證書中獲取伺服器的公鑰。

2、協商會話秘鑰:客戶端通過伺服器公鑰進行通訊,協商出會話密碼。這個會話秘鑰是對稱加密的型別,因為非對稱加密演算法開銷計算量大,不適合對大資料加密。另外,會話金鑰是隨機生成,每次協商都會有不一樣的結果,所以安全性也比較高。

3、此時客戶端伺服器雙方都有了本次通訊的會話金鑰,之後傳輸的所有http資料,都通過會話金鑰加密。

1、使用openssl等工具生成web伺服器的私鑰key

2、使用openssl等工具,結合key以及伺服器的其他資訊,生成證書請求csr檔案

3、傳送csr檔案給ca的其中乙個機構,支付相應費用,獲得伺服器證書

4、通過webserver(nginx等)中配置http服務

https就是在http上面加入了ssl/tls協議,保證資料傳輸的安全性。但由於https比http耗費資源,所以一般比較重要的站點才會用https。

應用層協議分析 HTTPS協議分析

例項化secure socket layer ssl 俗稱安全套接層,是由netscape communitcation於1990年開發,用於保障word wide web www 通訊的安全。主要任務是提供私密性,資訊完整性和身份認證。1994年改版為sslv2,1995年改版為sslv3。tra...

HTTP 與 HTTPS 協議分析

全球資訊網客戶程式與全球資訊網伺服器程式之間的互動遵守嚴格的協議,這就是超文字傳輸協議 http hypertext transfer protocol http 是乙個應用層協議,它使用 tcp 連線進行可靠的傳送。安全套接字層 ssl secure socket layer 和運輸層安全 tls...

https協議 什麼是HTTPS協議?

在我們平常上網的時候我經常接觸的 應該大部分都是 或者我們知道讓他是乙個超文字傳輸協議。那麼https是個什麼?雖然http和這個https兩者只差乙個s,但是本質是大不相同的,他們是兩種不同的網路傳輸協議。千萬不要搞混淆了。http協議通過請求 響應的方式,在客戶端和服務端之間進行通訊。這一切看起...