資訊與網路安全技術 第 七章 數位簽章與數位憑證  上一頁      下一頁

 

7-4 數位憑證

內容:

7-4-1 數位憑證的 功能  

所謂『數位憑證』(Digital Certificate是一份電子性的文件,被用來證明持有人的身分證明,其中至少包含著持有人的姓名、郵政地址、電子郵件地址、以及公開鑰匙,並且必須經過具權威的單位證明其有效期限。如果沒有公正單位可證明公開鑰匙的合法性的話,任何人(譬如志明)皆可利用公開密碼演算法(如 RSA 演算法)產生一對公開鑰匙與私有鑰匙,並宣稱這把公開鑰匙可以代表自己的身份,且將之公佈在於網路上;同樣的道理,別人也可佯稱是志明,同樣將公開鑰匙公佈出來;由此可見,僅有公開鑰匙來證明身份是不夠的,而必須有一公正單位來證明這把公開鑰匙確是屬於該人所擁有。

數位憑證的環境裡,必須存在一個權威單位專門發給個人(或組織單位)一對公開鑰匙與私有鑰匙,並且可以對外宣稱某一把公開鑰匙確是代表某一個人(或法人)的身份。但對他人而言,為何這把鑰匙可以代表某一個人的身份?它的依據又在哪裡?譬如,為何這把公開鑰匙是志明先生的?而不是春嬌小姐所有?誰可以證明它?再說,全台灣有上千位志明先生,到底是哪一位志明?這也有爭執所在的地方。因此,我們需要一個具有權威的單位,專門發給個人公開鑰匙,並且必須詳盡敘述它的個人資料,這就是所謂『數位憑證』(Digital Certificate);而此具有權威的單位,便稱為『憑證授權』(Certificate Authority, CA中心。以下將分別敘述其功能。

我們希望在 Internet 網路的虛擬環境下,也能接近於實體環境。在實體環境,每個人(或組織單位)也許擁有許多證件,譬如,汽車駕駛執照。當您在高速公路上駕駛汽車,遇到警察檢查您的駕照時,您只要亮出您的駕照即可,至於您的駕照是真是假?這可要警察自己去判斷(當然,如果是造假的,可能會吃上官司)。又譬如,當您進出海關時,只要秀出您的護照即可,至於護照真假與否,這可要看海關人員的功力了。至於警察如何判斷汽車駕照的真假?除了這個駕照是政府(權威單位)所發外,在駕照上必須有政府單位的戳記,方便警察人員辨識。倘若這樣還是無法嚇止他人使用假駕照的話,警察人員可以透過網路向電腦查詢,這個駕照的來源、以及使用期限,使造假者無法遁形。

數位憑證』就是讓個人(或組織單位)在網路的虛擬環境下,可以表示個人身分的依據。當個人需要在網路上進行任何交易,只需秀出個人的數位憑證,足以表明自己的身份;至於此數位憑證是真是假?如警察人員一樣,可向有關單位詢問是否有發出此數位憑證。由此可見,CA 中心除了負責發行數位憑證外,也需隨時提供使用者查詢數位憑證真偽的責任;並且每一張數位憑證都有期限的限制,如何去判斷已過期或註銷的憑證,CA 中心有需要提供一套完整的系統來處理。

另一方面,數位憑證可以達到直接仲裁與第三者仲裁的功能;當接收者收到憑證之後,可自行或透過其它管道確認這張憑證的真偽;當對方否認交易行為時,接收者亦可將他的憑證及傳送訊息,呈送給法院當作證物使用(目前已具有法律地位)。因此,數位憑證是時下電子商務或電子化管理環境,不可或缺的主要工具。

7-4-2 數位憑證的種類

到底有哪些數位憑證?這種觀念和實際環境(Real Environment)非常類似。在實際環境裡,每個人可能擁有許多證照,譬如,身分證、汽車駕照、機車駕照、護照、學生證等等,每一種證照都有其特殊功能;譬如,到政府機關申請資料,必須要身份證、在學校圖書館借書,需要學生證等等。以公司行號而言,各行各業都需要營業執照,證明其營業項目是否許可。

虛擬空間也是一樣,存在許多數位憑證,每一種數位憑證具備其特殊功能,使用者可依照需要向不同的 CA 中心申請憑證,一般 Internet 網路上所使用的憑證可分為下列四種:

  • 憑證授權(CA)中心憑證:雖然 CA 中心負責發行憑證給使用者,但 CA 中心也需要另一個較高權威單位授權給它,足以表示其信用度。

  • 伺服器憑證:在網路的虛擬空間裡,無法確定通訊對方的身份,尤其存取某一伺服器時,也很難判斷這部伺服器是否偽裝的,因此,伺服器需向 CA 中心申請憑證,以確定自己真正的身份。這種情況非常類似實際環境裡的商家,有了商家的營利登記憑證,我們才能確定這家商店是否合法化。目前 Internet 網路上,從事於電子商務的伺服器,大多需要申請 SSL 數位憑證,以確定伺服器本身的名稱及公鑰。

  • 個人憑證:這是由自然人或法人向 CA 中心所申請的憑證。在個人憑證裡會詳細描述當事人身分,譬如,E-Mail 位址、郵政地址、身份證字號等等。但隨著個人憑證的使用時機不同,許多 CA 中心也發行以別名取代的憑證,但這種憑證大多祇能使用於某一特殊用途,並無法廣泛使用。

  • 軟體發行憑證:這是確定軟體身份的憑證。當您購買某一套軟體(或執行某一軟體)時,如何證明這套軟體的真偽,可由軟體發行憑證來驗證它的身份。

無論何種憑證都擁有一把公開鑰匙、以及持有該憑證的身份資料。如果您對它的憑證有所疑問時,可向發行該憑證的 CA 中心查詢。至於數位憑證的格式為何?接下來我們介紹它。

7-4-3 數位憑證的格式

數位憑證是一個電子資料,將所有資料紀錄在某一個檔案上,以供其他應用系統查詢。為了使這個檔案能廣泛的被其他系統查詢,需要建立一個標準格式。目前 Internet 網路上最廣泛的憑證格式標準為 X.509 v3version 3),又稱為X.509 數位憑證』(X.509 Digital Certificate。表 7-1 X.509 的標準規範,每一張數位憑證至少包含有:憑證版本、序號、數位簽章演算法、憑證發行者、有效期間、主體、公鑰、數位簽章等等。其中數位簽章即是利用 CA 中心的私有鑰匙向上述資料簽署所得的值,其功能如同一般證照的鋼印一樣,表示發行者保證這張憑證的正確性;接收到憑證者之後,可利用 CA 的公開鑰匙,來驗證該憑證的真偽。 

7-1 X.509 數位憑證的格式

版本

憑證格式的版本,如 X.509 Version 3

序號

用戶的唯一識別碼,同一 CA 所發行憑證的序號不可重複。

演算法識別碼

用來計算此憑證的數位簽章演算法。

發行者

發行此憑證的 CA 單位。

有效期限

憑證的有效期間。

主體

憑證持有人的相關資料,可能包含有:姓名、郵政地址、E-Mail 地址等等。

公鑰資料

持有人的公開鑰匙、以及其演算法。

數位簽章

CA 的數位簽章,CA 將上述資料經過雜湊演算法計算過後,再經過 CA 的私鑰加密。

然而,表 7-1 並沒有詳細列出各個項目的資料結構,本書將其歸類於第九章 PKIX 系統再詳細介紹。

 

主講人:粘添壽博士

 

資訊與網路安全技術