了解https之前,先了解http:
是乙個應用層協議,由請求和響應構成,是乙個標準的客戶端伺服器模型。
是乙個無狀態的協議
。http協議通常承載於tcp協議之上,有時也承載於tls或ssl協議層之上,這個時候,就成了我們常說的https。
https有兩種基本的加解密演算法型別:
1)對稱加密:金鑰只有乙個,加密解密為同乙個密碼,且加解密速度快,典型的對稱加密演算法有des、aes等;
2)非對稱加密:金鑰成對出現(且根據公鑰無法推知私鑰,根據私鑰也無法推知公鑰),加密解密使用不同金鑰(公鑰加密需要私鑰解密,私鑰加密需要公鑰解密),相對對稱加密速度較慢,典型的非對稱加密演算法有rsa、dsa等。
https的通訊過程:
https通訊的優點:
1)客戶端產生的金鑰只有客戶端和伺服器端能得到;
2)加密的資料只有客戶端和伺服器端才能得到明文;
3)客戶端到服務端的通訊是安全的。
http和https有一些什麼區別:
1、https協議需要到ca申請證書(ca是證書的簽發機構,它是pki的核心。ca是負責簽發證書、認證證書、管理已頒發證書的機關)
2、http資訊都是明文傳輸,https具有安全性的ssl加密傳輸協議。
3、http埠是80,https預設埠是443
4、http是一種無狀態,https由ssl+http組成。
https在安全方面做的很好:
1、認證使用者或伺服器,確保資料傳送到正確的客戶機或伺服器
2、加密資料防止資料中途被竊聽
3、維護資料的完整性,確保資料在傳輸過程中不能被改變。
當然,安全性做的好了,速度肯定就會慢一點,用https協議載入的頁面比較慢,但是也僅限於第一次而已。
———-分割線———-
一、https簡介
二、https與http的區別
1)https的伺服器需要到ca申請證書,以證明自己伺服器的用途;
2)http資訊是明文傳輸,https資訊是密文傳輸;
3)http與https的埠不同,乙個是80埠,乙個是443埠;
可以說http與https是完全不同的連線方式,https集合了加密傳輸,身份認證,更加的安全。
三、https通訊的步驟
1)客戶端請求伺服器,傳送握手訊息
2)伺服器返回客戶端自己的加密演算法、數字證書和公鑰;
3)客戶端驗證伺服器端傳送來的數字證書是否與本地受信任的證書相關資訊一致;如果不一致則客戶端瀏覽器提示證書不安全如下圖所示
如果驗證通過,則瀏覽器會採用自身的隨機數演算法產生乙個隨機數,並用伺服器傳送來的公鑰加密;傳送給伺服器;這裡如果有人通過攻擊獲取了這個訊息,那也沒用,因為他沒有解密此段訊息所需要私鑰;驗證通過的**在瀏覽器位址列的右邊會有一安全鎖的標識;
3)伺服器解密得到此隨機數,並用此隨機數作為金鑰採用對稱加密演算法加密一段握手訊息傳送給瀏覽器;
4)瀏覽器收到訊息後解密成功,則握手結束,後續的資訊都通過此隨機金鑰加密傳輸。
以上是服務端認證的情況,如果服務端對訪問的客戶端也有認證需求,則客戶端也需要將自己的證書傳送給伺服器,伺服器認證不通過,通訊結束;原理同上;
另外,一般在傳輸過程中為了防止訊息竄改,還會採用訊息摘要後再加密的方式,以此保證訊息傳遞的正確性。
https通訊原理
https通訊原理 https在傳輸資料之前需要客戶端 瀏覽器 與服務端 之間進行一次握手,在握手過程中將確立雙方加密傳輸資料的密碼資訊。tls ssl協議不僅僅是一套加密傳輸的協議,更是一件經過藝術家精心設計的藝術品,tls ssl中使用了非對稱加密,對稱加密以及hash演算法。握手過程的具體描述...
HTTP通訊原理和HTTPS通訊原理
本博主參加位元組跳動第一次面試的時候,發現自己對於網路協議這方面欠缺很嚴重,並且在資訊保安課程中學到了部分數字證書的概念,故特意整理部落格以加強自己對於部分協議體系的理解。http 協議 hypertext transfer protocol,超文字傳輸協議 是客戶端瀏覽器或其他程式與web伺服器之...
Https安全通訊原理
是什麼?是基於安全目的的http 通道,其安全基礎由ssl 層來保證。最初由netscape 2.與http 主要區別 協議基礎不同 https 在http 下加入了ssl層,通訊方式不同 https 在資料通訊之前需要客戶端 伺服器進行握手 身份認證 建立連線後,傳輸資料經過加密,通訊埠443。傳...