SSL憑証(SSL certificate)的原理

基本的public key, private key 和 https的關系如下:

(1)  主機(server)上要先生成private key, public key兩把key。( 可以互相上鎖、解鎖 )
      其中,private key要留在主機裡,public key則是公開給全世界知道

(2) 當一般使用者在瀏覽網頁時拿到這台主機的public key之後,browser就可以靠public key來加密,由此而建立https

//  上述是最簡單的模型。
然而,實際上,在(2) 的步驟,一般使用者拿到public key時,他心裡有一個疑問,「我怎麼知道,現在給我public key的你,沒有被別人冒用了呢?」 這種時候,使用者的瀏覽器就會冒出警告訊息,說收到的public key並沒有被認証過。


於是,為了電子商務的安全性,就要由第三方公証機關 「憑証中心」來代為處理這個「信賴」的問題。將上述的模型複雜化,引入了「憑証中心」這個角色之後,就變成如下:

(1) 主機(server)上要先生成private key, public key兩把key。( 可以互相上鎖、解鎖 )
      其中,private key要留在主機裡,public key則是要先做加工之後,才可以讓全世界得知。

(2) public key送給憑証中心簽署認証。這種時候,因為要送public key和相關的一些網站基本資訊出去給憑証中心簽署認証,需要把public key放進一個文件檔,這個文件檔就叫做certificate signing request,副檔名通常是CSR )

(3) 憑証中心簽署完畢後的public key,又可以稱之為ceriticate 。
      certificate自憑証中心取回之後,要安裝入主機(server),作為SSL的public key 來使用

(4) 當一般使用者在瀏覽網頁時拿到這台主機的public key( 這時候可以叫它certificate )之後,browser裡頭早就預先安裝好的憑証中心public key會認証這個certificate,然後回報說,這個網站的https是沒有問題的。於是browser就可以用public key來加密,由此而建立https ( 如此一來,browser就不會跳出警告訊息了。)
  • 163 Bu dökümanı faydalı bulan kullanıcılar:
Bu cevap yeterince yardımcı oldu mu?

İlgili diğer dökümanlar

PHP要怎麼寫,可以避免資料隱碼(SQL injection)攻擊呢?

Q: PHP要怎麼寫,可以避免資料隱碼(SQL...

整理網站被駭的處理

以下是記錄我們所撰寫於blog.unethost.com的文章,在這邊提供快速檢索:   1. 如何找出網站開啟速度慢的原因(或是網站疑似被駭) 2. 如何處理網站被駭,避免再次被駭呢?...

網站被google列為惡意網站

Q:我的網站,如果被google列為惡意網站,該如何處理呢?A:根據這樣的狀況,請使用 google webmasters tools (Google 網站管理員工具)...

如何透過cpanel來阻擋已知的攻擊者IP位址?

如果已經知道某些IP是惡意的攻擊者,可以透過cpanel的功能來阻擋這些IP位址

如何關閉apache的目錄索引

Q: 我想要關閉apache的目錄索引, 如下圖,使下圖的目錄索引不再出現,該如何設定呢?A: 在public_html目錄下的 .htaccess 檔中,增加一行:Options...