SSL/TLS安全會話的一個比喻

 

密鑰協商的形象化比喻
如果上面的說明不夠清晰,這裏我們用個形象的比喻,我們假設A與B通信,A是SSL客戶端,B是SSL服務器端,加密後的消息放在方括號[]裏,以突出明文消息的區別。雙方的處理動作的說明用圓括號()括起。

A:  我想和你安全的通話,我這裏的對稱加密算法有DES,RC5,密鑰交換算法有RSA和DH,摘要算法有MD5和SHA。
B:  我們用DES-RSA-SHA這對組合好了。
這是我的證書,裏面有我的名字和公鑰,你拿去驗證一下我的身份(把證書發給A)。
目前沒有別的可說的了。
A:  (查看證書上B的名字是否無誤,並通過手頭早已有的CA的證書驗證了B的證書的真實性,如果其中一項有誤,發出警告並斷開連接,這一步保證了B的公鑰的真實性)
(產生一份祕密消息,這份祕密消息處理後將用作加密密鑰,加密初始化向量和hmac的密鑰。將這份祕密消息-協議中稱爲 per_master_secret-用B的公鑰加密,封裝成稱作ClientKeyExchange的消息。由於用了B的公鑰,保證了第三方無法竊聽)
我生成了一份祕密消息,並用你的公鑰加密了,給你(把ClientKeyExchange發給B)
注意,下面我就要用加密的辦法給你發消息了!
(將祕密消息進行處理,生成加密密鑰,加密初始化向量和hmac的密鑰)
[我說完了]
B:(用自己的私鑰將ClientKeyExchange中的祕密消息解密出來,然後將祕密消息進行處理,生成加密密鑰,加密初始化向量和hmac的密鑰,這時雙方已經安全的協商出一套加密辦法了)
注意,我也要開始用加密的辦法給你發消息了!
[我說完了]
A: [我的祕密是...]
B: [其它人不會聽到的...]

 

 原文地址 http://www.xcar.com.cn/bbs/viewthread.php?tid=6950971

 

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