HTTPS學習筆記:(1)入門介紹

前言

HTTPS包含的知識體系過於龐大,很難通過一篇文章進行介紹,本系列筆記主要基於<<HTTPS權威指南>>而做的一個讀書筆記,通過閱讀該書與自己的一些感悟從多個方面對HTTPS進行的總結。

關於快速入門,可以先看看:https://blog.csdn.net/eric_sunah/article/details/103144744

背景

隨着互聯網行業的發展,HTTP協議的因其輕便簡單而收到廣泛的應用,然而由於其都是基於TCP協議進行明文傳輸,所以安全問題可以說是HTTP協議最大的一大的短板,總結而言,HTTP的安全問題主要包含以下幾個方面:

  • 可竊聽:HTTP使用明文進行傳輸,因此傳輸內容可能很容易被竊聽。
  • 可僞裝:HTTP協議中不管是請求還是響應都不會對客戶端和服務器的身份進行確認。通過中間人攻擊的方式很容易僞裝成通信的一端與另一端進行通信。
  • 可篡改:HTTP協議本身沒有提供數據完整性的校驗機制,因此很容易被中間人進行信息篡改。

由於上述問題,HTTPS應運而生。HTTPS可以簡單理解爲,運用SSL/TLS,PKI,密碼學等安全機制來保障HTTP安全通信的技術集合,其主要解決了上述的幾個問題:

  • 防止被竊聽—加密:通過和SSL或TLS的組合使用,加密HTTP的通信內容。
  • 防止遭遇僞裝—證書:通過證書確認通信雙方的身份。證書可以由專門的第三方CA頒發,也可以自己給自己頒發(風險較大)。
  • 防止被篡改—摘要:通過對主體內容進行摘要計算,以防止信息篡改。

概念

HTTPS涉及到的概念較多,本文先對主要概念進行簡單說明,後面將會對每個概念進行詳細介紹。
主要概念如下:

  • SSL:SSL(Secure Sockets Layer)安全套接層,該協議由Netscape開發的。從OSI 7層模型的角度看是在TCP與HTTP兩層中間插入的一層,用來確保上層HTTP的數據安全。從數據層面看,在傳輸的過程中,會將HTTP協議的內容包裹起來,以達到安全傳輸的目的。通過wireshark的抓包,可能更加清楚的瞭解該層的位置與包裹的方式.

在這裏插入圖片描述

  • TLS:TLS(Transport Layer Security)傳輸層安全協議。作用和SSL類似,可以理解爲SSL 3的升級版,之所以改名,主要是爲緩和微軟與Netscape當時因瀏覽器之爭而產生的矛盾。
  • 證書:證書也叫公開密鑰證書,是由數字證書認證機構(CA,Certificate Authority)或其相關機構頒發用來確認身份的文件。
  • PKI:互聯網公鑰基礎設施(public key infrastructure,PKI)
  • CA:證書頒發機構(certification authority或certificate authority,CA),是PKI實現成員間安全通信的一種模型。
  • 對稱加密算法:用相同的祕鑰進行加密,解密的算法稱爲對稱加密算法,例如AES.該類算法的速度較快
  • 非對稱加密算法:以公鑰,私鑰分別進行加密解密的方式稱爲非對稱加密算法,該算法一般會比對稱加密算法要慢

引入的問題

魚翅熊掌不可兼得,在解決了HTTP安全問題的同時,也引入了以下幾個問題:

  • 提高實施成本:根據證書的用途以及類型,通過CA簽發證書的價格從免費-幾百萬/年不等。一個證書幾百萬,不信?看看下面阿里雲上選擇的一個土豪證書套餐的截圖:
    在這裏插入圖片描述

  • 性能損耗:HTTPS在原有通信的基礎上增加了TLS握手的處理流程,以及加密過程中涉及到數據的加密解密,因此會導致增加時延以及消耗更多系統資源

操作流程

HTTPS落地到業務的操作流程主要包括以下幾步:

  1. 生成證書
    生成證書的大致流程爲:確定證書類型->填寫CSR->提交申請。不同的第三方機構流程可能會存在一定的差異。

證書可以從第三方供應商那邊購買,也可以自己簽發[如果某網站僅用自簽名證書對外提供服務,安全性沒保障不說,專業性也肯定受到質疑],常見的CA包括:GeoTrust,Symantec,GlobalSign,沃通等。公有云一會代理這些CA的銷售渠道,例如:Amazon,騰訊雲,阿里雲等。例如:
在這裏插入圖片描述

  1. 證書配置
    管理員拿到證書後,就可以對web服務器進行配置了,不同的服務器配置方式不同,可參考:https://www.globalsign.cn/resources.shtml

  2. 按照協議傳輸

對配置了HTTPS的網站進行訪問時,就按照SSL/TLS協議進行協商與數據傳輸了,本文不對協議的內容進行介紹,細節請參考後續文章。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章