Kerberos協(xié)議和DES加密算法在電子郵件服務(wù)認證設(shè)計與實現(xiàn)中的應(yīng)用
【摘要】 電子郵件以其快速、便捷、有效、可信的特點,成為現(xiàn)代社會信息溝通重要方式。但電子郵件傳輸信息的過程中,常發(fā)生電子郵件信息泄密、欺詐或攜帶木馬病毒的事件。這些事件已嚴重威脅到電子郵件服務(wù)器系統(tǒng)的正常運行和服務(wù),對用戶形成了極大的信息安全隱患,甚至造成了嚴重的經(jīng)濟損失。因此,很有必要通過研究電子郵件傳輸過程中的脆弱性和威脅點,來有效避免上述情況發(fā)生。本文通過對Kerberos協(xié)議和DES加密算法的研究,在深入分析電子郵件傳輸過程和Kerberos協(xié)議的基礎(chǔ)上,提出并設(shè)計一種新的Kerberos協(xié)議實現(xiàn)的模型算法,并通過將這種新的Kerberos協(xié)議模型算法導(dǎo)入電子郵件傳輸過程中,確保電子郵件在傳輸信息過程中的有效性和安全性。本文主要做了如下工作:1.研究Kerberos協(xié)議內(nèi)容要求及其實現(xiàn)方法,提出并實現(xiàn)了一個新的Kerberos算法。在該算法模型中加入時間戳和有效期管控因子,以保證在電子郵件服務(wù)過程中的信息不被冒用或抵賴否認。2.研究并實現(xiàn)了Kerberos認證過程中信息流的加解密模塊。通過對比分析對稱加密算法和非對稱加密算法的優(yōu)缺點,選擇已經(jīng)過國際安全性驗證的DES算法作為實現(xiàn)認證過程中信息流加解密模塊的算法。3.研究Kerberos數(shù)據(jù)輸入輸出的格式規(guī)范化設(shè)計問題,提出通過采用ASN.1基本編碼規(guī)則中的TLV格式來對本文中所要加密的數(shù)據(jù)信息流進行格式化處理,以消除在加解密過程中可能出現(xiàn)的錯誤情況。4.研究基于Kerberos協(xié)議和DES加密算法的電子郵件服務(wù)認證模擬實現(xiàn)的過程,主要包括身份認證階段的流程實現(xiàn)、票據(jù)授權(quán)階段流程實現(xiàn)和電子郵件服務(wù)階段流程實現(xiàn)等過程。本文最終設(shè)計出一個新的Kerberos協(xié)議算法實現(xiàn)模型,成功將其應(yīng)用到了電子郵件系統(tǒng)進行身份認證及票據(jù)授權(quán),并通過DES加解密算法對身份認證及通信數(shù)據(jù)進行加解密,圓滿完成了本文所要達成的目標。
第一章 緒 論
1.1 本文研究的背景及意義
隨著計算機技術(shù)的出現(xiàn),給人們?nèi)粘I詈凸ぷ鲙砹司薮蟮谋憷陀绊。特別是進入 20 世紀 90 年代以后,伴隨著科學技術(shù)理論發(fā)展、特種高新材料的應(yīng)用、精密電子元器件以及印制電路制造技術(shù)的高速發(fā)展,世界計算機技術(shù)有了突飛猛進的發(fā)展和進步[1]。計算機技術(shù)發(fā)展的同時,也帶動了通信技術(shù)和網(wǎng)絡(luò)技術(shù)的飛速發(fā)展。互聯(lián)網(wǎng)從最初的軍方和校園實驗室中,發(fā)展到如今各個國家互聯(lián)在一起的國際性綜合互聯(lián)網(wǎng)絡(luò)。
最初的互聯(lián)網(wǎng)絡(luò)系統(tǒng)中主要是以單機形式存在的,網(wǎng)絡(luò)模式采用的是集中式分布網(wǎng)絡(luò)。而隨著技術(shù)不斷進步,以及教育科研機構(gòu)對計算機和網(wǎng)絡(luò)的需要不斷提高,逐漸產(chǎn)生了分布式網(wǎng)絡(luò)系統(tǒng)。分布式網(wǎng)絡(luò)系統(tǒng)相比于集中式的網(wǎng)絡(luò)系統(tǒng),具有非常明顯的優(yōu)勢。分布式網(wǎng)絡(luò)系統(tǒng)具有性能高效、實時控制、通信快捷、資源共享和風險分散等優(yōu)點,反映了當今信息社會計算機系統(tǒng)網(wǎng)絡(luò)的發(fā)展趨勢。隨著分布式網(wǎng)絡(luò)系統(tǒng)被更多的機構(gòu)和個人使用,人們也同時發(fā)現(xiàn)了一些存在于分布式網(wǎng)絡(luò)系統(tǒng)中的安全問題。這些問題主要集中在如何保障分布式網(wǎng)絡(luò)系統(tǒng)中各個主機的信息安全?如何保障網(wǎng)絡(luò)通訊過程中信息流的保密性、完整性和可用性?
上述的安全問題產(chǎn)生的根本原因是,在分布式網(wǎng)絡(luò)設(shè)計和創(chuàng)建的過程中,人們只是單純的考慮到如何保障網(wǎng)絡(luò)通訊過程中更加快速、更加便捷的問題,而沒有考慮到分布式網(wǎng)絡(luò)系統(tǒng)中存在哪些安全漏洞?這些安全漏洞容易遭受哪些方面的惡意滲透或攻擊。由于這些問題遲遲沒有得到有效解決,造成了分布式網(wǎng)絡(luò)系統(tǒng)被頻繁惡意攻擊的次數(shù)越來越多。一旦這些分布式系統(tǒng)遭受惡意攻擊,無論這些攻擊是來自外部還是內(nèi)部,都會對分布式網(wǎng)絡(luò)系統(tǒng)本身的安全以及用戶的隱私和信息安全帶來極大的影響和損失。
隨著現(xiàn)代科學技術(shù)的不斷發(fā)展,信息技術(shù)也在不斷的發(fā)展和應(yīng)用,從更深層次的廣度和寬度影響和改變著人類對信息技術(shù)的認知。同樣,信息安全的問題也在被越來越多的安全專家和學者所重視。而信息安全的內(nèi)涵,也從最開始的只是注重信息的保密性,進而發(fā)展到關(guān)注信息的可用性和完整性。同時,在信息安全體系推進和發(fā)展的過程中,人們通過實踐進一步提出,信息安全的可追溯性、不可抵賴性、通訊雙方的身份驗證等問題,也是信息安全領(lǐng)域需要重視的問題。通過對理論和實踐的不斷研究,人們總結(jié)了許多關(guān)于信息安全領(lǐng)域的“攻(攻擊)、防(防范)、測(檢測)、控(控制)、管(管理)、評(評估)”等多方面的基礎(chǔ)理論和實施技術(shù)[2]。同時世界上主要的安全廠商也都針對于分布式網(wǎng)絡(luò)系統(tǒng)中信息安全問題研發(fā)了對應(yīng)的安全產(chǎn)品,這些產(chǎn)品主要包括信息加密、入侵檢測、防病毒、身份認證等各個方面和領(lǐng)域。
結(jié)合信息安全管理理論和保障信息系統(tǒng)通訊安全的技術(shù)發(fā)展來看,身份認證技術(shù)(Authentication Technology)是保護分布式網(wǎng)絡(luò)系統(tǒng)通訊過程中非常重要的安全手段之一。目前所有的分布式網(wǎng)絡(luò)通訊過程建立連接的前提是,需要所有的通訊方身份進行合法性驗證,從而保障通訊過程中的信息保密和網(wǎng)絡(luò)安全性。
因此,應(yīng)用身份認證技術(shù)的主要目的,就是要驗證分布式網(wǎng)絡(luò)通訊過程中所有通訊方的身份信息,防止網(wǎng)絡(luò)通訊過程中傳輸?shù)男畔⒈环欠ㄓ脩魫阂獾母`取和攻擊。正式基于此作用,身份認證技術(shù)已經(jīng)成為最重要的,也是最基本的分布式網(wǎng)絡(luò)系統(tǒng)通訊服務(wù)之一。
正式基于上述的重要作用,身份認證系統(tǒng)一旦其本身遭遇安全威脅或惡意攻擊,又或者是身份認證技術(shù)本身的實現(xiàn)技術(shù)和理論存在重大安全隱患,那么我們所使用的系統(tǒng)及網(wǎng)絡(luò)通訊的所有安全措施將形同虛設(shè),毫無安全性可言。因此,身份認證技術(shù)本身的安全設(shè)計強度決定了分布式系統(tǒng)中網(wǎng)絡(luò)通訊過程的安全強度。
電子郵件應(yīng)用是自互聯(lián)網(wǎng)大規(guī)模商用之后最早的網(wǎng)絡(luò)通訊應(yīng)用之一。雖然網(wǎng)絡(luò)通訊技術(shù)日新月異,網(wǎng)絡(luò)通訊軟件及應(yīng)用如雨后春筍般不斷涌現(xiàn),但是電子郵件應(yīng)用仍被公認為最有效、最便捷的網(wǎng)絡(luò)通訊應(yīng)用之一。隨著網(wǎng)絡(luò)通訊技術(shù)的發(fā)展和電子郵件開發(fā)商的不斷努力,目前電子郵件的功能越來越豐富,世界上使用電子郵件的人數(shù)也越來越多。據(jù) 2012 年 CNNIC 的調(diào)查結(jié)果顯示,我國全部互聯(lián)網(wǎng)用戶已經(jīng)超過 5 億,而電子郵箱賬戶已超過 8 億。也就是說,我國平均每個互聯(lián)網(wǎng)用戶擁有 1.6 個電子郵箱[3]。時至今日,電子郵件已經(jīng)發(fā)展成為政府、教育、金融、服務(wù)等行業(yè)最基本、最普遍的網(wǎng)絡(luò)通訊工具。
.............................
1.2 當前身份認證的研究與應(yīng)用
在進行本文深入探討主題之前,我們有必要了解一下什么是身份認證,有哪些身份認證的技術(shù)和實現(xiàn)方式,當前世界對于身份認證及其技術(shù)的研究和應(yīng)用已經(jīng)發(fā)展到什么樣的程度。
身份認證從本質(zhì)上講,就是通訊的雙方必須對彼此的身份合法性進行驗證,確保通訊雙方就是彼此需要進行信息傳輸和交互的對象。身份認證要保證在網(wǎng)絡(luò)中進行傳輸?shù)男畔⒉槐凰朔欠ǐ@取和攻擊,從技術(shù)實現(xiàn)角度來看就是要需要進行認證的一方能夠采取有效的途徑和方法,使得認證授權(quán)的一方確認他確實擁有那些信息。
身份認證技術(shù)是應(yīng)用系統(tǒng)安全的第一道關(guān)口,是所有安全的基礎(chǔ)。目前身份認證技術(shù)可以分為三大類:基于口令的身份認證技術(shù),基于信物的身份認證技術(shù)和基于生物特征的身份認證技術(shù)[5]。
基于口令的身份認證技術(shù)主要是根據(jù)你所知道的信息來證明你的身份(whatyou know;即,你知道什么?);例如你自己的口令密碼、設(shè)置的問題答案等等信息。這種身份認證形式,也就是我們常說的“基于口令的認證方式”。
(2)根據(jù)你所擁有的東西來證明你的身份(what you have;即,你有什么?);假設(shè)某一件東西只有你本人擁有,如 IC 卡、USB-Key、單位數(shù)字證書等,通過出示這個東西也可以確認你的身份。這種身份認證形式,也就是我們常說的“基于信物的認證方式”。
(3)直接根據(jù)獨一無二的身體特征來證明你的身份(who you are;即,你是誰?),比如指紋、面貌等。這種身份認證形式,也就是我們常說的“基于生物特征的認證方式”。
下面就這三種主要身份認證形式進行理解和闡述:
(1)基于口令的認證方式——
在日常工作和生活中使用最多的身份認證技術(shù),就是基于口令的認證技術(shù)。例如 A 和 B(A 表示被認證的對象;B 表示提供服務(wù)的認證方),當 A 要求訪問系統(tǒng)時,B 則要求 A 出具正確的系統(tǒng)登陸所必須的賬號口令。B 收到 A 提交的賬號口令以后,將其與自己賬號口令數(shù)據(jù)庫中的賬號口令進行一致性比對,如果兩者比對相符,則 B 就認為 A 就是合法的用戶。這種基于口令的認證方式的有點顯而易見,主要是簡單、快捷、便于用戶操作和接受。
但是基于口令的認證方式也存在較大的安全隱患。在上述的舉例中,一旦 A的賬號口令被有意或無意的泄露,或者是 B 系統(tǒng)數(shù)據(jù)庫被攻擊導(dǎo)致賬號口令被人非法竊取,那么這種認證方式的安全性就被徹底破壞和失效。而且這種方式的認證是單向的,而非雙向認證,F(xiàn)在我們假設(shè)有一個攻擊者仿冒成 B 系統(tǒng),其要求A 向其提交賬戶和密碼,理由是要對 A 進行身份驗證;但是 A 卻無法對攻擊者進行身份驗證。在這種情況下,一旦 A 將賬戶口令提交給攻擊者,那么攻擊者就可以使用 A 的賬戶口令去訪問真正的 B 系統(tǒng)來獲取 A 的數(shù)據(jù)信息,從而造成 A 的數(shù)據(jù)信息外泄[6]。
基于口令的身份認證技術(shù)因為使用簡單、便捷,從而得到了廣泛應(yīng)用。但是隨著網(wǎng)絡(luò)技術(shù)和應(yīng)用的不斷變化和深入,攻擊者所使用的攻擊水平越來越高,攻擊手段也越來越多樣,傳統(tǒng)的基于口令的身份認證技術(shù)已經(jīng)不能滿足現(xiàn)有的身份安全認證的需要[7]。這也迫使基于口令的身份認證技術(shù)必須保持發(fā)展和更新。目前比較典型的代表就是靜態(tài)口令技術(shù)和動態(tài)口令技術(shù)。
................................
第二章 背景知識
2.1 Kerberos 協(xié)議簡介
Kerberos 身份認證服務(wù)協(xié)議最早是由美國麻省理工學院(MIT)組織開發(fā)的一個項目。經(jīng)過人們對該協(xié)議的不斷應(yīng)用和實踐,至今 Kerberos 協(xié)議已經(jīng)歷過幾次重大的換版更新。Kerberos 協(xié)議本身是一種應(yīng)用于開放式網(wǎng)絡(luò)環(huán)境,基于可信任第三方的 TCP/IP(Transmission Control Protocol 傳輸控制協(xié)議/Internet Protocol 網(wǎng)際協(xié)議)網(wǎng)絡(luò)安全認證協(xié)議,其認證模型基于 Needham-Schroeder,以加密為基礎(chǔ),對用戶及網(wǎng)絡(luò)連接進行認證,提供增強網(wǎng)絡(luò)安全的服務(wù)。
麻省理工學院最早為 Kerberos 協(xié)議開發(fā)過一套計算機網(wǎng)絡(luò)安全系統(tǒng)。這個Kerberos 系統(tǒng)采用了用戶端+系統(tǒng)服務(wù)器的結(jié)構(gòu),同時使用了 DES 加密技術(shù),并且能夠它們之間可以進行相互認證,即用戶端和系統(tǒng)服務(wù)器都可以要求對雙方的身份進行認證。這種雙向的身份認證模式可以用于需要進行防止竊聽、replay 攻擊和保護數(shù)據(jù)完整性等場合。而在加密技術(shù)的使用上,Kerberos 安全系統(tǒng)使用的是一種應(yīng)用對稱密鑰體制進行密鑰管理的系統(tǒng)。當然,Kerberos 安全系統(tǒng)也可以使用公開密鑰加密模式,以滿足對更高安全級別的身份認證需求。
目前 Kerberos 協(xié)議共有五個協(xié)議版本,而版本 1-3 都只有麻省理工內(nèi)部發(fā)行。第四版本的 Kerberos 協(xié)議發(fā)布于 1980 年,其協(xié)議的主要設(shè)計者是 Steve Miller 和Clifford Neuman。第五版本的 Kerberos 協(xié)議發(fā)布于 1993 年,其協(xié)議的主要設(shè)計者是 John Kohl 和 Clifford Neuman,由 RFC 1510 頒布。第五版本的 Kerberos 協(xié)議主要是從模型設(shè)計上解決了第四版本的 Kerberos 協(xié)議的局限性和安全隱患。
麻省理工學院于 2007 年組織成立了一個 Kerberos 協(xié)會,目的是不斷推動Kerberos 協(xié)議在世界范圍內(nèi)的應(yīng)用和持續(xù)發(fā)展。
Windows2000 和后續(xù)的操作系統(tǒng)都默認 Kerberos 為其最基本和標準的認證方法。而 RFC 3244 則記錄和整理了 Microsoft 的一些對 Kerberos 協(xié)議軟件包的添加。蘋果的 Mac OS X,以及 Red Hat Enterprise Linux4 和后續(xù)的操作系統(tǒng),也都使用了第五版本的 Kerberos 協(xié)議,以增強其在身份認證過程中的安全性。
IETF 的工作小組在 2005 年對 Kerberos 協(xié)議做了更新后的說明規(guī)范,最近的更新包括:“加密和校驗和細則”(RFC 3961),以及“針對 Kerberos 版本 5 的高級加密算法(AES)加密”(RFC 3962)[22]。
Kerberos 協(xié)議在設(shè)計之初,就已經(jīng)考慮到在分布式網(wǎng)絡(luò)通訊傳輸過程中對信息安全的保密問題。經(jīng)過前五代版本的發(fā)展和更新,最新版本的 Kerberos 協(xié)議在對用戶訪問系統(tǒng)服務(wù)前的身份驗證、提供通訊各方共享密鑰服務(wù)等方面,都提供了很強大的安全保護措施和控制機制。一個優(yōu)秀的 Kerberos 協(xié)議實現(xiàn)過程,必須要保證通訊各方及所有通訊數(shù)據(jù)的安全性、可靠性、操作透明性以及系統(tǒng)可擴充性。
本文將重點研究 Kerberos 身份認證協(xié)議在電子郵件服務(wù)通訊傳輸過程中的安全性分析、安全性設(shè)計、安全性論證,并對其進行模擬實現(xiàn)。
.............................
2.2 郵件服務(wù)器工作模式
互聯(lián)網(wǎng)(Internet)中基于 TCP/IP 協(xié)議的電子郵件系統(tǒng)采用的是客戶端/服務(wù)器工作模式[28]。整個系統(tǒng)的核心是電子郵件服務(wù)器,在電子郵件服務(wù)器提供服務(wù)過程中,需要運行各種郵件傳輸協(xié)議。下面我們兩個電子郵件收發(fā)者 Lu 和 Wan 通過互聯(lián)網(wǎng)傳輸電子郵件的過程為例,來說明電子郵件系統(tǒng)是如何工作的,需要使用到哪些協(xié)議。

如圖 2-3 所示,是用戶 Lu 要通過互聯(lián)網(wǎng)(Internet)給用戶 Wan 發(fā)送電子郵件的傳輸過程示意圖。假設(shè)使用主機 1 進行工作的用戶 Lu 在互聯(lián)網(wǎng) Internet 上的電子郵件服務(wù)器 1 中擁有的電子郵件地址為 Lu@sz.edu,而在使用主機 2 進行工作的用戶 Wan 在互聯(lián)網(wǎng) Internet 上的電子郵件服務(wù)器 2 中擁有的電子郵件地址為Wan@gz.edu,并且主機 1 和主機 2 操作系統(tǒng)中均安裝有電子郵件的應(yīng)用程序,現(xiàn)在假設(shè)用戶 Lu 通過用戶主機 1 給用戶 Wan 在互聯(lián)網(wǎng) Internet 中的主機 2 發(fā)送電子郵件,則電子郵件傳輸過程及原理模型可用圖 2-4 表示為:

如下是對電子郵件傳輸原理模型的過程說明:
(1)使用主機 1 進行工作的用戶 Lu 先將電子郵件的內(nèi)容編寫好。電子郵件的內(nèi)容主要有收件人 Wan 的收件地址、電子郵件的主題、電子郵件的正文,以及有可能添加的附件文檔。
(2)用戶 Lu 在自己使用的電腦主機 1 上將上述郵件發(fā)送信息編輯好之后,通過安裝在電腦主機 1 上的電子郵件應(yīng)用程序發(fā)送該郵件。在電子郵件的應(yīng)用程序中,有一個模塊叫做 SMTP 協(xié)議模塊,它的主要功能是幫助用戶完成電子郵件的傳出工作。
(3)主機 1 上的電子郵件 SMTP 客戶進程將會按照電子郵件應(yīng)用程序設(shè)置規(guī)則,申請與電子郵件服務(wù)器 1 建立連接線路。一旦電子郵件服務(wù)器 1 同意與 SMTP客戶進程建立連接后,SMTP 客戶進程將按照既定的程序設(shè)置將用戶 Lu 的電子郵件傳輸?shù)诫娮余]件服務(wù)器 1 中。
(4)而對電子郵件服務(wù)器 1 來說,在收到了用戶 Lu 從電腦主機 1 中傳輸過來的電子郵件內(nèi)容后,它首先要分析電子郵件內(nèi)容中的電子郵件收件人地址信息,然后通過與本電子郵件服務(wù)器所管轄內(nèi)的電子郵件用戶列表進行信息比對。如果比對結(jié)果一致,則電子郵件服務(wù)器 1 就將這封電子郵件存放在電子郵件收件人信箱中;如果是比對結(jié)果不一致,那么電子郵件服務(wù)器 1 就將這封電子郵件“打回原籍”,重新交還給到電子郵件服務(wù)器 1 上的 SMTP 客戶進程進行處理。
(5)電子郵件服務(wù)器 1 上的客戶進程向本地服務(wù)器申請一個臨時端口號后,開始根據(jù)電子郵件正文內(nèi)容中注明的電子郵件目標地址,檢索自己的服務(wù)器路由列表。如果檢索的結(jié)果發(fā)現(xiàn),該收件人信箱所在的電子郵件服務(wù)器是位于互聯(lián)網(wǎng)上電子郵件服務(wù)器 2 中的地址信箱,則電子郵件服務(wù)器 1 向電子郵件服務(wù)器 2 發(fā)出建立連接的請求。如果電子郵件服務(wù)器 2 同意與電子郵件服務(wù)器 1 建立起連接線路,則電子郵件服務(wù)器 1 開始將該此封電子郵件按 SMTP 協(xié)議的要求傳輸?shù)诫娮余]件服務(wù)器 2。
(6)電子郵件服務(wù)器 2 在收到電子郵件服務(wù)器 1 推送過來的郵件后,再按該電子郵件正文內(nèi)容中注明的電子郵件目標地址,檢索并標記收件人的用戶名 Wan,同時將該郵件存入該目標收件人的電子郵箱中。至此,用戶 Lu 編輯好的要發(fā)送給用戶 Wan 的電子郵件信息傳輸就告一段落了。
...............................
第三章 KERBEROS 身份認證系統(tǒng)的設(shè)計...............................................23
3.1 在郵件系統(tǒng)中加載 KERBEROS 協(xié)議必要性分析 ......................................23
3.2 設(shè)計一個 KERBEROS 認證服務(wù)的初步設(shè)想 ..............................................24
3.3 KERBEROS 認證服務(wù)的具體設(shè)計 ...............................................25
3.3.1 加載認證端.................................................... 25
3.3.2 消除用戶密鑰明文傳輸安全隱患.............................................. 27
3.3.3 服務(wù)票據(jù)的安全性設(shè)計.................................................. 28
3.3.4 過程完善設(shè)計................................................... 30
第四章 郵件服務(wù) Kerberos 化的模擬實現(xiàn)
基于以上的討論,我認為開發(fā)工具應(yīng)該選用 VC++比較好。原因首先是自己對VC++這個語言接觸的比較多,便于自己上手;其次是 VC++語言是基于面向?qū)ο蟮某绦蜷_發(fā)工具,有非常清晰的結(jié)構(gòu)化模塊;最后就是 VC++調(diào)試功能很強,并且可以查詢 MSDN 庫,比較方便和實用。因此,后續(xù)的系統(tǒng)主要模塊的開發(fā)和實現(xiàn)的過程都將使用 VC++工具來進行。
4.1 系統(tǒng)主要模塊分析
4.1.1加解密模塊
如上述第三章節(jié)對 Kerberos 認證系統(tǒng)服務(wù)的安全性討論結(jié)果,本次設(shè)計的這套 Kerberos 身份認證服務(wù)系統(tǒng)的安全性,主要是基于密鑰的安全性。因此,如何選擇使用合適的加密算法,對此次模擬實現(xiàn)的過程安全性至關(guān)重要。
本次設(shè)計中要選取的加密算法要具備如下幾個條件:即算法簡單易懂、實現(xiàn)過程與加解密的強度性價比高、加解密過程速度快速、使用軟件編程比較容易實現(xiàn)。
下面部分內(nèi)容將通過分析現(xiàn)有的密碼體制現(xiàn)狀,比較相互之間的優(yōu)缺點,來確定選擇哪一種類型的加密算法。
4.1.1.1 密碼體制的構(gòu)成與分類
依據(jù)當今經(jīng)典密碼學理論,一個好的密碼體制一般由以下幾個部分組成:
(1)需要加密的明文“P”;
(2)經(jīng)過加密轉(zhuǎn)換得到的密文“C”;
(3)將明文加密成密文所使用的加密密鑰“Kc”;
(4)將密文解密成明文所使用的解密密鑰“Kd”;
(5)明文加密成密文的變換過程“E: P×Kc→C”;
(6)密文解密成明文的變換過程“D: C×Kd→P”;
如果將明文用 m 表示,而密文用 c 表示,則將明文加密變換成密文的加密過程 E(k,m),又可以被記為 E(m)k;而將密文解密變換成明文的解密過程 D(k,c),又可以被記為 D(c)k。假設(shè)任意的 m∈P,Dm*Ekd(m)=m成立,那我們就認為該密碼體制具有保密性。如果還是上述的公式成立,并且將密文解密成明文的密鑰只有加密通訊的密文接收方保管,那這個密碼體制就具有身份認證的特性。
在當代密碼學理論中,密碼體制主要分為對稱密碼體制(symmetric keycryptosystem)和非對稱密碼體制(asymmetric key cryptosystem)[33]。所謂的對稱密碼體制是指進行保密通訊的雙方所擁有的密鑰都是相同的,因此加密密鑰和解密密鑰都必須保密。
而在非對稱密碼體制中,進行保密通訊的雙方所擁有的密鑰是不同的。這類密鑰其中一個稱為公鑰,公鑰可以公開發(fā)布,任何需要和私鑰的所有者進行通訊的一方都可以對其進行使用;另一個稱為私鑰,私鑰是公鑰的所有者對密文進行解密的密鑰,因此私鑰必須保密不得公開。基于當今對計算科學以及數(shù)論的研究結(jié)果表明,要想用公鑰推導(dǎo)出私鑰,這在理論上和計算上都是不可行的。
對稱密碼體制的特點是加密和解密速度一樣快,同時其保密強度高。但同時缺點也是顯而易見的,主要的缺點有:
(1)密鑰的生成者必須將所有通訊者共享的密鑰通過一個安全的途徑進行傳送,當通訊者的數(shù)量非常龐大時,使得密鑰的分發(fā)相當困難。
(2)一旦有一個通訊方將密鑰泄露,那么所有通訊方的信息將變得無保密性可言。
因此,基于對稱密鑰體制的優(yōu)缺點,其通常用于大量數(shù)據(jù)的快速加解密過程。
而非對稱密碼體制的優(yōu)點正是解決了對稱密碼體制的缺點問題,但同時其也擁有自己的缺點:數(shù)據(jù)加密和解密速度非常緩慢,無論是用硬件還是軟件來實現(xiàn),都比對稱密鑰加密體制要復(fù)雜。
..............................
第五章 結(jié)論
此次論文研究在校方及企業(yè)導(dǎo)師的幫助下,嚴格按照前期既定的論文研究方案計劃進行,論文研究過程順利,并順利的得出了最終演示版結(jié)果。通過此次論文研究,最終成功完成了對 Kerberos 協(xié)議模型設(shè)計及 DES 加密算法的程序?qū)崿F(xiàn),同時根據(jù)實際需要,創(chuàng)造性的在 Kerberos 協(xié)議中增加時間戳和有效期兩個管控因子,解決了電子郵件信息傳送過程中被他人冒用和抵賴的問題,使得郵件傳送過程更加安全和可信。
5.1 系統(tǒng)存在的問題
雖然所設(shè)計的這個 Kerberos 身份認證系統(tǒng)從整體上可以保證用戶在使用電子郵件服務(wù)過程中進行身份驗證、獲取票據(jù)授權(quán)票以及通訊共享密鑰過程中的安全性和可靠性,但還有一些問題需要進行進一步研究和細化,這些內(nèi)容主要包括:
首先,關(guān)于用戶生成可以證明自己合法用戶身份的驗證器的問題,雖然用戶生成了驗證器,但是并沒有在驗證器中定義其生命周期。而且即使用戶定義了生命周期,也會讓攻擊者利用到這個生命周期時間范圍內(nèi)對 Kerberos 身份認證服務(wù)系統(tǒng)以及電子郵件服務(wù)系統(tǒng)進行欺騙和重放攻擊。要解決這個問題,我們需要定義 Kerberos 身份認證服務(wù)器需要對用戶的驗證器只能使用一次,這樣就避免了上述安全隱患的發(fā)生。
其次,這個系統(tǒng)在設(shè)計的時候沒有考慮到拒絕服務(wù)攻擊的可能性。如果攻擊者一直在網(wǎng)絡(luò)中對通訊傳輸?shù)臄?shù)據(jù)包進行監(jiān)聽和截獲,即使攻擊者無法破解加密數(shù)據(jù)包信息中的內(nèi)容,攻擊者也會將這些加密數(shù)據(jù)包反復(fù)提交給 Kerberos 身份認證服務(wù)系統(tǒng)。而 Kerberos 身份認證系統(tǒng)就需要不斷的對這些由攻擊者提交的加密數(shù)據(jù)包進行解密和驗證,這種情況的直接后果是,可能導(dǎo)致 Kerberos 身份認證服務(wù)系統(tǒng)無法及時響應(yīng)和處理合法用戶的身份驗證請求,從而造成身份驗證過程無法進行,進而造成整個系統(tǒng)服務(wù)的中斷。為避免上述安全隱患的發(fā)生,我們還需要在發(fā)送的信息中添加相關(guān)的控制因子,并可以根據(jù)當前網(wǎng)絡(luò)及所需訪問的服務(wù)情況設(shè)置有效期的時限。這樣就可以很好的解決攻擊者的拒絕服務(wù)攻擊。這也是我在本次論文研究中提出來的理論創(chuàng)新之處。
...............................
參考文獻:
- [1] 畢志明. 基于公鑰的新型Kerberos域間認證方案的研究[D]. 河北大學 2009
- [2] 張松林. 基于Kerberos的安全認證模塊設(shè)計與實現(xiàn)[D]. 哈爾濱工業(yè)大學 2010
- [3] 劉錚. 基于改進Kerberos協(xié)議的單點登錄系統(tǒng)研究與實現(xiàn)[D]. 重慶大學 2010
- [4] 王宇. 基于Kerberos+SSL的企業(yè)數(shù)據(jù)安全傳輸系統(tǒng)的設(shè)計與實現(xiàn)[D]. 大連理工大學 2013
- [5] 孫從友. 基于PKI的Kerberos統(tǒng)一認證授權(quán)系統(tǒng)的設(shè)計與實現(xiàn)[D]. 北京郵電大學 2012
- [6] 詹慧. 基于FeaVer的Kerberos形式化驗證和改進[D]. 華東理工大學 2011
- [7] 卓見. 基于Kerberos的統(tǒng)一身份認證與授權(quán)管理系統(tǒng)設(shè)計與實現(xiàn)[D]. 北京郵電大學 2013
- [8] 王劍柯. 基于信任與零知識證明的Kerberos跨域認證模型[D]. 重慶大學 2010
- [9] 曹璞. 基于公鑰密碼的Kerberos認證協(xié)議研究[D]. 浙江工業(yè)大學 2003
- [10] 孔令凡. 基于KERBEROS&ECC的遠程訪問安全研究與設(shè)計[D]. 浙江工業(yè)大學 2001
本文編號:9360
本文鏈接:http://www.wukwdryxk.cn/shoufeilunwen/shuoshibiyelunwen/9360.html