一、Http
#HyperText Transfer Protocol,超文本傳輸協議,是網路上使用最廣泛的一種協議,所有WWW文件必須遵守的標準。 HTTP協定傳輸的資料都是未加密的,也就是明文的,因此使用HTTP協定傳輸隱私資訊非常不安全。
使用TCP埠為:80
二、Https
Hyper Text Transfer Protocol over Secure Socket Layer,安全的超文本傳輸協議,網景公式設計了SSL(Secure Sockets Layer)協定用於對Http協定傳輸的資料進行加密,確保會話過程中的安全性。
使用TCP埠預設為443
三、SSL協定加密方式
SSL協定即用到了對稱加密也用到了非對稱加密(公鑰加密),在建立傳輸鏈路時,SSL首先對對稱加密的金鑰使用公鑰進行非對稱加密,鏈路建立好之後,SSL對傳輸內容使用對稱加密。
對稱加密
速度高,可加密內容較大,用來加密會話過程中的訊息
公鑰加密
加密速度較慢,但能提供更好的身份認證技術,用來加密對稱加密的密鑰
相關推薦:《常見問題》
四、雙向認證
雙向認證和單向認證原理基本上差不多,只是除了客戶端需要認證服務端以外,增加了服務端對客戶端的認證,具體過程如下:
1、客戶端向服務端發送SSL協定版本號、加密演算法種類、隨機數等資訊。
2、服務端給客戶端回傳SSL協定版本號、加密演算法種類、隨機數等信息,同時也傳回伺服器端的證書,也就是公鑰證書。
3、客戶端使用服務端傳回的資訊驗證伺服器的合法性,包括:
(1)憑證是否過期。
(2)髮型伺服器憑證的CA是否可靠。
(3)傳回的公鑰是否能正確解開傳回憑證中的數位簽章。
(4)伺服器憑證上的網域名稱是否和伺服器的實際網域名稱相符。
(5)驗證通過後,將繼續進行通信,否則,終止通信。
4、服務端要求客戶端發送客戶端的證書,客戶端會將自己的證書傳送至服務端。
5、驗證客戶端的證書,經過驗證後,會取得客戶端的公鑰。
6、客戶端向服務端發送自己所能支援的對稱加密方案,供伺服器端進行選擇。
7、伺服器端在客戶端提供的加密方案中選擇加密程度最高的加密方式。
8、將加密方案透過使用先前取得到的公鑰進行加密,並傳回給客戶端。
9、客戶端收到服務端回傳的加密方案密文後,使用自己的私鑰進行解密,取得具體加密方式,而後,產生該加密方式的隨機碼,用作加密過程中的金鑰,使用先前從服務端憑證取得的公鑰進行加密後,發送給服務端。
10、服務端收到客戶端傳送的訊息後,使用自己的私鑰進行解密,取得對稱加密的金鑰,在接下來的會話中,伺服器和用戶端將會使用該密碼進行對稱加密,確保通訊過程中資訊的安全。
以上是https雙向認證如何開啟的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

Atom編輯器mac版下載
最受歡迎的的開源編輯器

WebStorm Mac版
好用的JavaScript開發工具