2022-10-04 分類: 網(wǎng)站建設(shè)
當(dāng)網(wǎng)站安裝SSL證書后,建立連接的過程會(huì)發(fā)生改變,安全性大幅提高,其原理就是利用非對(duì)稱加密傳輸會(huì)話密鑰,再通過會(huì)話密鑰加密客戶端與服務(wù)器之間傳輸?shù)臄?shù)據(jù)。
問題來了,為什么不直接使用公鑰加密數(shù)據(jù),而是先用公鑰加密會(huì)話密鑰,再通過會(huì)話密鑰加密數(shù)據(jù)呢?豈不是畫蛇添足,多此一舉。
我們先來看看網(wǎng)站安裝SSL證書后,客戶端與服務(wù)器建立連接的過程。
客戶端提交https請(qǐng)求 服務(wù)器響應(yīng)請(qǐng)求,把證書公鑰發(fā)給客戶端 客戶端驗(yàn)證證書公鑰的有效性 驗(yàn)證通過后,生成一個(gè)會(huì)話密鑰 使用SSL證書的公鑰,加密該會(huì)話密鑰,并發(fā)送給服務(wù)器 服務(wù)器收到加密數(shù)據(jù)后,使用私鑰解密,得到會(huì)話密鑰 客戶端與服務(wù)器利用該會(huì)話密鑰,加密要傳輸?shù)臄?shù)據(jù),進(jìn)行通信當(dāng)客戶端成功驗(yàn)證了SSL證書公鑰的有效性后,便可以直接通過該公鑰加密數(shù)據(jù),與服務(wù)器傳輸數(shù)據(jù),為什么還需要多出很多步驟出來呢?
其實(shí)這主要是為了解決速率太慢的問題。
RSA公鑰算法的簽名算法、驗(yàn)證算法耗時(shí)以及每秒所能完成的計(jì)算量如下:
我們以RSA 2048為例,普通電腦完成一次簽名操作需要4.097毫秒,也就是說一秒鐘可以完成的加密了為244.1*2048=499916.8bit/second=499.917kbps。
如此慢的速率,用戶肯定無法接受。
非對(duì)稱加密雖然安全性很高,但速率太慢是它一個(gè)致命的缺點(diǎn)。
對(duì)稱加密恰恰相反,雖然安全性差,但速率很高。
SSL證書的智慧就體現(xiàn)在這里。首先利用非對(duì)稱加密的高安全性,傳輸AES對(duì)稱加密的密鑰,服務(wù)器解密后,通信雙方便有了會(huì)話密鑰,這個(gè)會(huì)話密鑰因?yàn)槭峭ㄟ^RSA這一非對(duì)稱算法進(jìn)行加密的,不會(huì)被第三人監(jiān)聽或者竊取很安全。
此后丟掉速率很難的非對(duì)稱加密,直接使用對(duì)稱加密算法通信即可。
我們可以舉一個(gè)更容易理解的例子。
A和B在不同的兩個(gè)地方,他們想互相運(yùn)送珍貴的貨物,運(yùn)送途中必須保證貨物的安全。
他們現(xiàn)在有兩種運(yùn)輸方式可以選擇,一種是飛機(jī),一種是貨車。
A和B所在的地方很奇怪,陸路運(yùn)輸公司會(huì)配備專門的安保人員,而航空運(yùn)輸沒有,所以經(jīng)常發(fā)生劫機(jī)事件,陸路運(yùn)輸則比較安全。
迫于無奈,A和B只能選擇陸路運(yùn)輸,但時(shí)間長(zhǎng)了,它們發(fā)現(xiàn)這樣做效率太低。經(jīng)過調(diào)查發(fā)現(xiàn),只要按照特定的航線航行,就不會(huì)發(fā)生劫機(jī)事件。
于是,B想了一個(gè)好辦法,使用陸路運(yùn)輸將航線圖運(yùn)送到A的手中,A知道航線后,雙方再使用航空運(yùn)輸,既能保證速度,又能保證安全性,一舉兩得。
從另一方面說,不使用公鑰直接加密數(shù)據(jù),也是為了安全考慮。假如直接使用公鑰加密,一旦服務(wù)器私鑰被獲取,那么所有通信內(nèi)容都將被解密,極其不安全。
如果公鑰加密的是會(huì)話密鑰,即便私鑰被獲取,由于通信內(nèi)容是采用會(huì)話密鑰進(jìn)行加密的,第三人也無法解密數(shù)據(jù)。
文章題目:SSL為什么不直接用公鑰加密數(shù)據(jù)?
文章網(wǎng)址:http://www.rwnh.cn/news9/201359.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化、企業(yè)網(wǎng)站制作、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)公司、動(dòng)態(tài)網(wǎng)站、面包屑導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容