關於https 證實公開密鑰正確性的證書

結合上篇文章《https的ssl加密方式》會更好理解,這片文章中有介紹了https的加密方式是 混合加密,公開密鑰加密和共享密鑰加密,先選公開密鑰加密來交換共享密鑰加密的密鑰,而後在使用共享密鑰加密傳送密文,爲何會選擇二者密鑰加密呢?不直接使用共享加密機制呢?由於共享密鑰加密要比公開密鑰加密快,具體是怎麼快的請查看《SSL 速度慢嗎》web

遺憾的是在使用混合加密時,使用公開密鑰加密方式仍是存在一些問題。那就是沒法證實公開密鑰自己是貨真價實的公開密鑰。瀏覽器

好比,正準備和某臺服務器創建公開密鑰加密方式下的通訊時,如何證實收到的公開密鑰就是本來預想的那臺服務器發行的公開密鑰。或許密鑰在傳輸途中,真正的公開密鑰已經被攻擊者替換掉了。安全

上面的問題可使用由數字證書認證機構(CA,certificate Authority)和其相關頒發的公開密鑰證書。服務器

數字證書認證機構處因而客戶端和服務器雙方可信賴的第三方機構立場上,威瑞信(veriSign)就是其中一家很是有名的數字證書認證機構。post

簡介一下數字證書認證機構的業務流程。首先服務器的運營人員向數字證書認證機構提出公鑰的申請。數字證書認證機構在判明提出申請者的身份後,會對已申請的公開密鑰作數字簽名,而後分配這個已簽名的公開密鑰,並將公開密鑰放入公鑰證書後綁定在一塊兒(注意已簽名的公共密鑰和公開密碼是兩個不一樣的密鑰,公開密鑰是服務器提供的,已簽名的公開密鑰是簽名機構本身生成的)網站

服務器會將這份數字認證機構頒發的公鑰證書發送給客戶端,已進行公開加密方式通訊。公鑰證書也能夠叫作數字證書或直接稱爲證書。加密

接到證書的客戶端可以使用數字證書認證機構的公開密鑰,對那張證書上的數字簽名進行驗證,一旦驗證經過,客戶端即可以明確兩件事情: 一、 認證服務器的公開密鑰是真實有效的數字證書認證機構。二、服務器的公開密鑰是值得信賴的。cdn

此處認證機關的公開密鑰必須安全地轉交給客戶端,使用通訊發生時,如何安全轉交是一件很是困難的事,所以,多數瀏覽器開發商發佈版本時,會事先在內部植入經常使用認證機構的公開密鑰blog


可證實組織真實性的EV SSL證書ssl

證書的一個做用是用來證實爲通訊一方的服務器是否規範,另一個做用是可肯定對方服務器背後運營的企業是否真實存在。擁有該特性的證書就是EV SSL證書(Extended Validation ssl Cretificate )

EV SSL 證書是基於國際標準的認證指導方針頒發的證書,其嚴格規定了對運營商組織是否真實的確認方針,所以,用過認證的web網站能得到更高的承認度。上述機制的原意就是爲了防止用戶釣魚攻擊,不少用戶可能不瞭解EV SSL證書相關的知識。


用以確認客戶端的客戶端證書

https中還可使用客戶端證書,以客戶端證書進行客戶端認證,證實服務器正在通訊的客戶端時預料以內的客戶端,起做用和服務器證書一模一樣。

但客戶端證書仍存在幾處問題。其中的一個問題是證書的獲取和發佈。

想獲取證書時,用戶須要自行安裝客戶端證書,但客戶端證書須要付費購買的,且每張證書對應到每位用戶也就意味着須要支付和用戶對等的費用。另外讓知識層次不一樣的用戶來自行安裝證書,這是一件充滿挑戰的事情。

如今是,安全性極高的認證機構可頒發客戶端證書但僅用於特殊用途的業務,好比有些可支撐客戶端證書支出費用的業務。

例如,銀行的網上銀行就採用了客戶端證書,在登陸網銀時不只要求客戶端確認輸入ID和密碼,還會要求用戶的客戶端證書,以確認用戶時候從特定終端訪問網銀。

客戶端證書存在的另外一個問題是,客戶端證書畢竟只能用來證實客戶端實際存在,而不能用來證實用戶本人的真實有效性。

相關文章
相關標籤/搜索