公開密鑰加密方式仍然會存在一些安全問題,即無法證明公開密鑰本身就是貨真價實的公開密鑰,也有可能是客戶端接收到,服務器發行的是攻擊者處理過的公開密鑰。
為了解決公開密鑰的正確性,可以使用由數字證書認證機構和其相關機關頒發的公開密鑰證書。數字證書認證機構處于客戶端與服務器雙方都信賴的第三方機構的立場上。
數字證書認證機構的業務流程:
1,服務器的運營人員向數字認證機構提出公開密鑰的申請。數字證書認證機構在判明提出申請者的身份之后,會對已申請的公開密鑰做數字簽名,然后分配這個已簽名的公開密鑰,并將該公開密鑰放入公鑰證書后綁定在一起。
2,服務器會將這份由數字證書認證機構頒發的公鑰證書發給客戶端,以進行公開密鑰加密方式通信。公鑰證書也可叫做數字證書或證書。
3,接到證書的客戶端可使用數字證書認證機構的公開密鑰,對那張證書上的數字簽名進行驗證,一旦驗證通過,客戶端便可明確兩件事:一是認證服務器的公開密鑰的是真實有效的數字證書認證機構;二是服務器的公開密鑰是值得信賴的。
4,認證機關的公開密鑰必須安全轉交到客戶端。