摘要: 公私鑰:公鑰可以唯一解密私鑰加密過(guò)的數(shù)據(jù),反之亦然。
SSL過(guò)程:需要兩對(duì)公私鑰(P1,V1),(P2,V2),假設(shè)通信雙方是A和B,B是服務(wù)器,A要確認(rèn)和它通信的是B:
A->B: hello
B->A: 用V2加密過(guò)的P1(即用戶證書,A就用P2解密出P1)
A->B: ok
B->A: 用V1加密的一段信息
A->B: 用P1加密一個(gè)自動(dòng)生成的K(用之前的P1解密成功這段信息則認(rèn)為B是可信的了)
B->A: 用K加密的數(shù)據(jù)(之后兩對(duì)密鑰功能結(jié)束,由K來(lái)加解密數(shù)據(jù))
這里,P2就是第3方的CA證書,由于非對(duì)稱加密很慢,所以公私鑰只是用來(lái)保證K的傳送安全,之后通信是用K的對(duì)稱加密算法來(lái)保證。
這里(P1,V1)就是certificate authority (CA)用來(lái)給客戶簽名用的公私鑰。
(P2,V2)是客戶自己的公私鑰,提交給CA,CA所做的事情就是用(P1,V1)來(lái)給客戶的(P2,V2)簽名,簡(jiǎn)單吧?
閱讀全文