資訊與網路安全技術 第 十三章 用戶認證系統        下一頁

 

第十三章 用戶認證協定

 『叩』!!『叩』!!『您是誰?』『我是志明春嬌快開門啦 !!』。喂!等一下!他真的是志明嗎?可以讓他進去嗎?(裡面真的是春嬌嗎?)

13-1 用戶認證

內容:

13-1-1 用戶認證簡介

『認證』Authentication可由兩方面來討論,一者為『訊息認證』(Message Authentication,或稱確認),主要確認訊息是否確實由某人所發送,並且確認訊息在傳輸當中並無遭受偽造或竄改。換句話說,所欲確認的對象是訊息,這方面已在第六章詳細介紹過。另一者為『用戶認證』(User Authentication,所欲確認的對象是某一個『實體』,它可能是人、組織單位、或系統主機等等。基本構想是肯定對方的身份無誤之後,才允許雙方通訊,此為本章介紹的重點。就用戶認證的技巧而言,可以使用秘密鑰匙系統或公開鑰匙系統。基本上,屬於較封閉性系統(如電子化系統),多半採用秘密鑰匙系統;然而對於開放性系統(如電子商務系統),一般皆採用公開鑰匙系統比較方便。這兩種鑰匙系統的認證協定,本章都會分別說明。

用戶認證是確定通訊中的對方是否如所希望通訊的人,而不是冒牌的。如果網路上只使用到電子郵遞(或公文交換),使用數位簽署便足以確認發信人的真偽。但如應用到分散式資料庫存取時,所牽涉的認證問題就變得非常複雜。通常一個資料庫都會提供多人同時使用,並且每一個人的使用權限也不盡相同,只有明確的身份認證,才能避免使用者超越權限存取資料。另一方面,攻擊者若冒充合法使用者來偷竊資料,也有可能在合法使用者存取資料時,竊聽傳輸中的訊息。所以用戶認證技術不但要有複雜的密碼學基礎,還必須定義出雙方對認證處理的方式;也就是說,必須制定一個『認證協定』(Authentication Protocol,通訊雙方依照此協定共同來處理認證身份的問題。

在資料存取環境裡有兩個重要的課題很容易讓人混淆:『認證』(Authentication『授權』(Authorization。認證是確認通訊中是否確實其人(或程序 process);授權則是確認通訊中這個人的使用權限。例如,世雄志明那裡索取『電腦網路與連結技術』書本時,志明就必須做下列的判斷:

  • 來訪者果真是世雄嗎?認證

  • 世雄有權利索取此書嗎?授權

志明確定上述兩個條件都成立時,才可以將書交給世雄。第一個條件比較重要,因為需先確定對方身份無誤之後,才有必要進入第二個條件去審查其權限範圍,相較於第一個條件,第二個條件可就容易多了。或許我們可將兩個條件分開處理,譬如,可由第三者(春嬌)判斷來訪者是否為世雄,如果正確的話,她再通知志明此人身分無誤;接下來,由志明自己審查世雄的權限。如此一來,春嬌好比扮演著認證使用者身份的工作,我們可稱它為『認證系統』(Authentication System,如本章欲介紹的主題 - Kerberos 系統。

13-1-2 用戶認證途徑

既然,認證協定主要著重於通訊雙方的身分確認,首先我們就一般的資訊系統而言,到底是如何表達某一個人的身份。基本上,可能有下列幾種途徑:

  • 使用者帳號/密碼:利用使用者帳號與密碼辨識身份是最普遍的方法,但必須事先在系統上建立帳戶才行。目前在 Internet 網路上,許多系統為了允許陌生人進入,通常會設定一個特殊帳戶讓陌生人使用,譬如 Guest 帳戶。

  • 網路位址/網域名稱:係利用 IP 封包標頭的來源位址、或者經由 IP 位址查詢其網域名稱(DNS 功能),用來判斷發送此封包的身份。換句話說,利用 IP 位址判斷出該封包的出處,再決定是否給予通過、或接受請求等服務。

  • 共享秘密鑰匙:利用特殊管道將秘密鑰匙傳送給另一方;如果能確認對方所持有的鑰匙與自己是相同的,便可以確定通訊者的身份。不過這種機制大多需要其他系統來輔助,譬如,以帳號/密碼產生共享鑰匙。

  • 公開鑰匙:先將個人的公開鑰匙傳送給想要連絡的人,或是某一接收者已擁有多人的公開鑰匙。當接收者收到某一個利用私有鑰匙加密的資料時,並且可以利用其公開鑰匙解密的話,便可確定傳送資料者的身份。這種機制容易受他人欺騙,攻擊者或許可偽裝另一人,進而傳送偽裝的公開鑰匙來瞞騙接收者。

  • 數位憑證:利用標準化數位憑證可說是目前最妥當的方法,因為憑證內可紀錄使用者名稱、郵遞地址、公開鑰匙等個人訊息;此外,憑證是經由權威單位所簽署保證,並已提供認證該憑證的方法。

  • 智慧卡:智慧卡或 IC 卡內可以儲存個人數位憑證、一次密碼、公開鑰匙等等。何況智慧卡使用時,必須輸入密碼,因此有如提款卡一般,有雙重確認的功能(卡片與密碼)。

上述眾多身份的表示方法,總是離不開如何去認證它,本章重點主要在於介紹一些確認的方法,以辨識其真偽。

主講人:粘添壽博士

 

資訊與網路安全技術