SSL/TLS协议运行机制
互聯(lián)網(wǎng)的通信安全,建立在SSL/TLS協(xié)議之上
一、作用
不使用SSL/TLS的HTTP通信,就是不加密的通信。所有信息明文傳播,帶來了三大風(fēng)險(xiǎn)。
(1)?竊聽風(fēng)險(xiǎn)(eavesdropping):第三方可以獲知通信內(nèi)容。
(2)?篡改風(fēng)險(xiǎn)(tampering):第三方可以修改通信內(nèi)容。
(3)?冒充風(fēng)險(xiǎn)(pretending):第三方可以冒充他人身份參與通信。
SSL/TLS協(xié)議是為了解決這三大風(fēng)險(xiǎn)而設(shè)計(jì)的,希望達(dá)到:
(1) 所有信息都是加密傳播,第三方無法竊聽。
(2) 具有校驗(yàn)機(jī)制,一旦被篡改,通信雙方會立刻發(fā)現(xiàn)。
(3) 配備身份證書,防止身份被冒充。
互聯(lián)網(wǎng)是開放環(huán)境,通信雙方都是未知身份,這為協(xié)議的設(shè)計(jì)帶來了很大的難度。而且,協(xié)議還必須能夠經(jīng)受所有匪夷所思的攻擊,這使得SSL/TLS協(xié)議變得異常復(fù)雜。
二.基本的運(yùn)行過程
SSL/TLS協(xié)議的基本思路是采用公鑰加密法,也就是說,客戶端先向服務(wù)器端索要公鑰,然后用公鑰加密信息,服務(wù)器收到密文后,用自己的私鑰解密。
但是,這里有兩個(gè)問題。
(1)如何保證公鑰不被篡改?
解決方法:將公鑰放在數(shù)字證書中。只要證書是可信的,公鑰就是可信的。
(2)公鑰加密計(jì)算量太大,如何減少耗用的時(shí)間?
解決方法:每一次對話,客戶端和服務(wù)器端都生成一個(gè)"對話密鑰",用它來加密信息。由于"對話密鑰"是對稱加密,所以運(yùn)算速度非常快,而服務(wù)器公鑰只用于加密"對話密鑰"本身,這樣就減少了加密運(yùn)算的消耗時(shí)間。
因此,SSL/TLS協(xié)議的基本過程是這樣的:
(1) 客戶端向服務(wù)器端索要并驗(yàn)證公鑰。
(2) 雙方協(xié)商生成"對話密鑰"。
(3) 雙方采用"對話密鑰"進(jìn)行加密通信。
上面過程的前兩步,又稱為握手階段"。
三.握手階段的詳細(xì)過程
轉(zhuǎn)載于:https://www.cnblogs.com/13070315n/p/5402156.html
總結(jié)
以上是生活随笔為你收集整理的SSL/TLS协议运行机制的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java Web乱码分析及解决方案
- 下一篇: git与sourceTree