什么是SSL?
SSL 代表安全套接字層。它是一種用于加密和驗證應(yīng)用程序(如瀏覽器)和 Web 服務(wù)器之間發(fā)送的數(shù)據(jù)的協(xié)議。 身份驗證 , 加密 Https 的加密機制是一種共享密鑰加密和公開密鑰加密并用的混合加密機制。
SSL/TLS 協(xié)議作用:認(rèn)證用戶和服務(wù),加密數(shù)據(jù),維護數(shù)據(jù)的完整性的應(yīng)用層協(xié)議加密和解密需要兩個不同的密鑰,故被稱為非對稱加密;加密和解密都使用同一個密鑰的對稱加密。優(yōu)點在于加密、解密效率通常比較高 HTTPS 是基于非對稱加密的, 公鑰是公開的,
(1)客戶端向服務(wù)器端發(fā)起 SSL 連接請求;
(2) 服務(wù)器把公鑰發(fā)送給客戶端,并且服務(wù)器端保存著唯一的私鑰;
(3)客戶端用公鑰對雙方通信的對稱秘鑰進行加密,并發(fā)送給服務(wù)器端;
(4)服務(wù)器利用自己唯一的私鑰對客戶端發(fā)來的對稱秘鑰進行解密;
(5)進行數(shù)據(jù)傳輸,服務(wù)器和客戶端雙方用公有的相同的對稱秘鑰對數(shù)據(jù)進行加密解密,可以保證在數(shù)據(jù)收發(fā)過程中的安全,即是第三方獲得數(shù)據(jù)包,也無法對其進行加密,解密和篡改。
因為數(shù)字簽名、摘要是證書防偽非常關(guān)鍵的武器。 “摘要”就是對傳輸?shù)膬?nèi)容,通過 hash算法計算出一段固定長度的串。然后,在通過 CA 的私鑰對這段摘要進行加密,加密后得到的結(jié)果就是“數(shù)字簽名”
SSL/TLS 協(xié)議的基本思路是采用公鑰加密法,也就是說,客戶端先向服務(wù)器端索要公鑰,然后用公鑰加密信息,服務(wù)器收到密文后,用自己的私鑰解密。
如何保證公鑰不被篡改?
將公鑰放在數(shù)字證書中。只要證書是可信的,公鑰就是可信的。
公鑰加密計算量太大,如何減少耗用的時間?
每一次對話(session),客戶端和服務(wù)器端都生成一個"對話密鑰"(session key),用它來加密信息。由于"對話密鑰"是對稱加密,所以運算速度非常快,而服務(wù)器公鑰只用于加密"對話密鑰"本身,這樣就減少了加密運算的消耗時間。
(1)客戶端向服務(wù)器端索要并驗證公鑰。
(2)雙方協(xié)商生成"對話密鑰"。
(3)雙方采用"對話密鑰"進行加密通信。上面過程的前兩步,又稱為"握手階段"(handshake)。
《計算機網(wǎng)絡(luò)》書本:
SSL 工作過程,A:客戶端,B:服務(wù)器端
1.協(xié)商加密算法:A 向 B 發(fā)送 SSL 版本號和可選加密算法,B 選擇自己支持的算法并告知 A
2.服務(wù)器鑒別:B 向 A 發(fā)送包含公鑰的數(shù)字證書,A 使用 CA 公開發(fā)布的公鑰對證書進行驗證
3.會話密鑰計算:A 產(chǎn)生一個隨機秘密數(shù),用 B 的公鑰進行加密后發(fā)送給 B,B 根據(jù)協(xié)商的算法產(chǎn)生共享的對稱會話密鑰并發(fā)送給 A.
4.安全數(shù)據(jù)傳輸:雙方用會話密鑰加密和解密它們之間傳送的數(shù)據(jù)并驗證其完整性
更多關(guān)于網(wǎng)絡(luò)安全培訓(xùn)的問題,歡迎咨詢千鋒教育在線名師,如果想要了解我們的師資、課程、項目實操的話可以點擊咨詢課程顧問,獲取試聽資格來試聽我們的課程,在線零距離接觸千鋒教育大咖名師,讓你輕松從入門到精通。