HTTP和HTTPS



前言:不管是前端開發、后端開發還是測試工程師的面試題,都可能問到HTTP和HTTPS。因此弄清楚這兩個是十分重要的。

什么是HTTP?

超文本傳輸協議,是一個基於請求與響應,無狀態的,應用層的協議,常基於TCP/IP協議傳輸數據,互聯網上應用層最為廣泛的一種網絡協議。所有的WWW文件都必須遵守這個標准。設計HTTP的初衷是為了提供一種發布和接受HTML頁面的方法。

什么是HTTPS?

基於HTTP協議,通過SSL或TLS提供加密處理數據,驗證對方身份以及數據完整性保護。

  1. 內容加密:采用混合加密技術,中間者無法直接查看明文內容。
  2. 驗證身份:通過證書認證客戶端訪問的是自己的服務器。
  3. 保護數據完整性:防止傳輸的內容被中間人冒充或者篡改。
混合加密:結合對稱加密和非對稱加密技術。客戶端使用對稱加密生成秘鑰對傳輸數據進行加密,然后使用非對稱加密的公鑰再對秘鑰進行加密,所以網絡上傳輸的數據是被秘鑰加密的密文和用公鑰加密后的秘鑰,因此即使被黑客截取,由於沒有私鑰,無法獲取到加密明文的秘鑰,便無法獲取到明文數據。

HTTPS是如何工作的?

基礎知識:

非對稱加密的特點:

  • 任何經過A的公鑰進行過加密的信息,只有A的私鑰才能解密。
  • 任何有公鑰的人可以確認對方發送的信息是被私鑰加密過的。

image-20210108232612292

HTTP和HTTPS的區別:

  • https協議需要到CA申請證書,一般免費的證書較少,因而需要一定的費用。
  • http是超文本傳輸協議,信息是明文傳輸,https則是具有安全性的SSL加密傳輸協議。
  • http和https使用的是完全不同的連接方式,用的端口也不一樣,前者是80,后者是443.
  • http的連接很簡單,是無狀態的,https協議是有SSL + HTTP協議構建的可進行加密傳輸、身份認證的網絡協議,比http協議安全。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM