前言:不管是前端開發、后端開發還是測驗工程師的面試題,都可能問到HTTP和HTTPS,因此弄清楚這兩個是十分重要的,
什么是HTTP?
超文本傳輸協議,是一個基于請求與回應,無狀態的,應用層的協議,常基于TCP/IP協議傳輸資料,互聯網上應用層最為廣泛的一種網路協議,所有的WWW檔案都必須遵守這個標準,設計HTTP的初衷是為了提供一種發布和接受HTML頁面的方法,
什么是HTTPS?
基于HTTP協議,通過SSL或TLS提供加密處理資料,驗證對方身份以及資料完整性保護,
- 內容加密:采用混合加密技術,中間者無法直接查看明文內容,
- 驗證身份:通過證書認證客戶端訪問的是自己的服務器,
- 保護資料完整性:防止傳輸的內容被中間人冒充或者篡改,
混合加密:結合對稱加密和非對稱加密技術,客戶端使用對稱加密生成秘鑰對傳輸資料進行加密,然后使用非對稱加密的公鑰再對秘鑰進行加密,所以網路上傳輸的資料是被秘鑰加密的密文和用公鑰加密后的秘鑰,因此即使被黑客截取,由于沒有私鑰,無法獲取到加密明文的秘鑰,便無法獲取到明文資料,
HTTPS是如何作業的?
基礎知識:
非對稱加密的特點:
- 任何經過A的公鑰進行過加密的資訊,只有A的私鑰才能解密,
- 任何有公鑰的人可以確認對方發送的資訊是被私鑰加密過的,

HTTP和HTTPS的區別:
- https協議需要到CA申請證書,一般免費的證書較少,因而需要一定的費用,
- http是超文本傳輸協議,資訊是明文傳輸,https則是具有安全性的SSL加密傳輸協議,
- http和https使用的是完全不同的連接方式,用的埠也不一樣,前者是80,后者是443.
- http的連接很簡單,是無狀態的,https協議是有SSL + HTTP協議構建的可進行加密傳輸、身份認證的網路協議,比http協議安全,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/247081.html
標籤:其他
