https學習總結

1、https簡介

HTTPS(全稱:Hypertext Transfer Protocol over Secure Socket Layer),是以安全爲目標的HTTP通道,簡單講是HTTP的安全版。即HTTP下加入SSL層,HTTPS的安全基礎是SSL,RFC2818文檔中https也稱作TLS之上的HTTP。因此加密的詳細內容請看SSL。 https所用的端口號是443。見下圖:
22222

從上面兩張圖中可知,https協議是基於SSL協議的。

2、https的實現原理

有兩種基本的加解密算法類型:

1)對稱加密:密鑰只有一個,加密解密爲同一個密碼,且加解密速度快,典型的對稱加密算法有DES、AES等;

2)非對稱加密:密鑰成對出現(且根據公鑰無法推知私鑰,根據私鑰也無法推知公鑰),加密解密使用不同密鑰(公鑰加密需要私鑰解密,私鑰加密需要公鑰解密),相對對稱加密速度較慢,典型的非對稱加密算法有RSA、DSA等。

下面看一下https的通信過程:

33333

https通信的優點:

1)客戶端產生的密鑰只有客戶端和服務器端能得到;

2)加密的數據只有客戶端和服務器端才能得到明文;

3)客戶端到服務端的通信是安全的。

3、服務器驗證客戶端

如果服務器要求客戶的身份認證,服務器必須檢驗客戶證書和簽名隨機數的合法性,具體的合法性驗證過程包括:

①客戶的證書使用日期是否有效

②爲客戶提供證書的CA 是否可靠

③發行CA 的公鑰能否正確解開客戶證書的發行CA 的數字簽名

④檢查客戶的證書是否在證書廢止列表(CRL)中

4、加密

在https的通信過程中,組合使用了公用密鑰方式加密和共享密鑰方式加密這兩種技術。

公用密鑰方式要比共享密鑰方式慢得多,因此使用公用密鑰來完成共享密鑰的交換。公用密鑰是從證書中獲得的。

拿到共享密鑰之後,所有的內容之間的通信都會使用共享密鑰來進行加密和解密。

公用密鑰的作用就是爲了安全的交換共享密鑰,共享密鑰是用來通信內容的加密和解密。這樣既確保了通信之間的安全,也確保了加密和解密的效率。

5、SSL的連接

連接分爲兩個階段,即握手和數據傳輸階段。

握手階段對服務器進行認證並確立用於保護數據傳輸的加密密鑰。必須在傳輸任何應用數據之前完成握手。一旦握手完成,數據就被分成一系列經過保護的記錄進行傳輸。

weixin

原創文章,轉載請註明: 轉載自成長的企鵝

本文鏈接地址:https學習總結

關於我:成長的企鵝簡介


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