現(xiàn)代密碼學(xué)-理論與實踐管理密鑰的技術(shù)_第1頁
現(xiàn)代密碼學(xué)-理論與實踐管理密鑰的技術(shù)_第2頁
現(xiàn)代密碼學(xué)-理論與實踐管理密鑰的技術(shù)_第3頁
現(xiàn)代密碼學(xué)-理論與實踐管理密鑰的技術(shù)_第4頁
現(xiàn)代密碼學(xué)-理論與實踐管理密鑰的技術(shù)_第5頁
已閱讀5頁,還剩9頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

管理密鑰的技術(shù)冶金自動化院 李勇、張銳TOC\o"1-3"\p""\h\z1. 控制密鑰使用的技術(shù)21.1密鑰別離和密鑰使用約束2密鑰分析和密鑰誤用的危害21.2對稱密鑰使用的技術(shù)3密鑰標(biāo)記和密鑰變數(shù)(KeytagsandKeyVariants)3密鑰公證(KeyNotarization)3控制向量(ControlVectors)42. 多個域的密鑰管理52.1兩個域之間的信任關(guān)系52.2多個認證機構(gòu)的信任模型7證書鏈和認證路徑(Certificatechainsandcertificationpaths)7相互隔離的域間的信任(trustwithseparatedomains)8嚴格等級信任模型(stricthierarchicaltrustmodel)8反向證書和一般有向圖信任模型(reversecertificatesandthegeneraldigraphtrustmodel)10信任模型中的約束(constraintsintrustmodels)102.3證書的分發(fā)和撤消11證書撤消和證書撤消列表(certificaterevocationandCRLs)113. 密鑰生存期問題123.1生存期保護需求12密鑰更新中的依賴對平安性的影響12各種不同類型密鑰的生存期存儲需求123.2密鑰管理生命期13生存期中密鑰的狀態(tài)(keystatewithinlifecycle)14系統(tǒng)初始化和密鑰安裝(systeminitializationandkeyinstallation)14密鑰管理技術(shù)〔局部〕綜述控制密鑰使用的技術(shù)這一節(jié)考慮那些如何將密鑰使用于預(yù)先授權(quán)的用途的技術(shù)。1.1密鑰別離和密鑰使用約束那些可能與密碼學(xué)密鑰相關(guān)聯(lián)的信息不僅包括那些限制它們使用的特征,還包括其他操作性使用的信息。這些信息包括誰是密鑰的擁有者。有效期〔預(yù)先定義的秘密期限〕。密鑰標(biāo)識符〔允許對密鑰的非密碼學(xué)性質(zhì)的引用〕。特定的算法。特定用途的系統(tǒng)或環(huán)境,或者密鑰的合法用戶。那些與密鑰生成,注冊和認證的實體的名稱。密鑰的整體校驗和〔通常是認證需求的一局部〕。1.1.1密鑰分析和密鑰誤用的危害在簡單密鑰管理系統(tǒng)中,和密鑰相關(guān)聯(lián)的信息,包括對它們的合法使用信息,是通過上下文環(huán)境推斷出來的。另外,為了透明性和對信息的控制,對信息明顯明顯許可的使用可能伴隨著密鑰的分發(fā),而且在使用信息的時候,要通過對企圖使用的信息做驗證來加強這一點。如果受控信息服從管理的話,就應(yīng)當(dāng)通過一種可以保證完整性和真實性的方法保證受控信息受密鑰約束。例如通過簽名的方法〔和公開密鑰相比擬〕,或者某一種提供數(shù)據(jù)完整性的加密技術(shù)。密鑰分析的原理就是應(yīng)用于不同目的的密鑰應(yīng)當(dāng)是密碼學(xué)性質(zhì)隔離的〔參見備注1〕。密鑰的誤用的危害可以用某些技術(shù)來說明,而這些技術(shù)保證密鑰只應(yīng)用于那些在密鑰生成的時候預(yù)先授權(quán)的目標(biāo)。對密鑰使用的限制可以通過程序技術(shù),物理保護〔防竄擾的硬件〕,或者下面討論的密碼學(xué)技術(shù)來保證。在1.2節(jié)討論的其他方法包括a)密鑰標(biāo)記,密鑰標(biāo)記允許密鑰和顯式定義的用途別離;b)密鑰變數(shù),密鑰變數(shù)可以別離密鑰而無需顯式定義授權(quán)用途;c)密鑰公證和控制向量,它們可以將控制信息和密鑰來源進程綁定在一起。備注1〔密鑰隔離的密碼學(xué)理由〕一個可靠的密碼學(xué)設(shè)計鑰防止在多種應(yīng)用目的使用同樣密鑰。一個密鑰加密密鑰不能當(dāng)作一個數(shù)據(jù)加密密鑰使用而保持不變,這是因為不管加密數(shù)據(jù)是什么,在應(yīng)用程序中加密密鑰并不是總是可用的。由于密鑰生命周期不一致性和密碼學(xué)慎重性,不同的非對稱加密和簽名密鑰也在普遍的使用著。如果下面三種情況之一出現(xiàn),也可能出現(xiàn)潛在的紕漏。非對稱密鑰既應(yīng)用于簽名,又用于挑戰(zhàn)——響應(yīng)實體認證;密鑰既使用于加密,又使用于挑戰(zhàn)——響應(yīng)認證〔選擇密文攻擊〕;對稱密鑰同時使用于加密和消息認證,或者潛在的使用。也可以參考備注3。1.2對稱密鑰使用的技術(shù)下面討論的主要技術(shù)是控制向量的使用。由于歷史的原因,我們還要討論密鑰標(biāo)記、密鑰變量和密鑰公證的問題。1.2.1密鑰標(biāo)記和密鑰變數(shù)(KeytagsandKeyVariants)密鑰標(biāo)記提供了一種詳細說明密鑰可使用的范圍的簡單方法〔例如數(shù)據(jù)加密比照密鑰加密密鑰〕。一個密鑰標(biāo)記是一個比特向量或者一個結(jié)構(gòu)化的字段,在密鑰的整個生命周期它和密鑰在一起并且保持關(guān)聯(lián)。標(biāo)記比特位和密鑰連接到一起加密,從而被密鑰綁定,只有當(dāng)密鑰被加密之后,它才會以明文的方式顯示出來。如果標(biāo)記比特位和密鑰結(jié)合在一起,信息還是足夠短從而允許在一個單獨的塊操作中完成加密〔例如一個56比特的密鑰和一個8比特的標(biāo)記合成一個64位的塊密碼〕,那么加密提供的繼承完整性就排除了對標(biāo)記有意義的操作。一個提供密碼隔離的簡單樸素的方法是通過使用附加的非秘密性的參數(shù)和一個非秘密性的函數(shù)從一個基密鑰〔或者派生密鑰〕得到隔離密鑰。所得密鑰稱成為密鑰變數(shù)或者派生密鑰。一個改變密鑰的技術(shù)是密鑰是密鑰偏置法。在密鑰偏置法中通過一個通常使用的不變的數(shù)的根底上一個在每次使用之后都會產(chǎn)生增量的計數(shù)器來修改加密密鑰的密鑰c。這樣會防止加密密鑰的重發(fā)。修改后的密鑰被用于加密另外〔例如會話〕的密鑰。接收者按照同樣的方法修改來解密會話密鑰。第二個技術(shù)是用的最開始的4比特來補充的可選的4比特位塊。該技術(shù)是固定掩碼偏置法的一個特例〔參見例1〕。例1〔使用固定掩碼偏置法(fixed-maskoffsets)的密鑰變數(shù)〕。假定正好只考慮三種類型的密鑰。通過變數(shù)一個主密鑰的變數(shù)和來構(gòu)造密鑰,其中,,和都是非秘密掩碼值。使用,和來加密其他密鑰后,我們就允許這些密鑰別離成為三類。如果派生進程是可逆的,那么基密鑰可以從派生密鑰恢復(fù)。理想情況下,派生技術(shù)是不可逆的〔單向的〕,說明一個派生密鑰損壞了不影響基密鑰(例如,章節(jié)2.1關(guān)于相關(guān)密鑰的平安影響)。還可以舉一個具有這種屬性的派生密鑰的例子:計算,這里是一個隨機數(shù),或者將加密算法換成MAC(消息認證碼)算法?;蛘吆唵蔚厥褂靡粋€帶有適宜屬性的哈希函數(shù)h散列化密鑰和隨機數(shù)。1.2.2密鑰公證(KeyNotarization)密鑰公證是一種可以防止密鑰替代的技術(shù),該技術(shù)通過要求參與密鑰管理關(guān)系的各個局部提供身份詳細的、顯式的說明。通過修改一個加密密鑰的密鑰來保證一個密鑰對于這些實體來說是真實的〔防止冒名頂替〕,這樣正確的實體必須可以合情合理地恢復(fù)檢測到的密鑰??梢哉f密鑰被這些實體“密封〞起來了。在所有〔認證過〕的密鑰建立協(xié)議中都需要防止密鑰復(fù)制。密鑰公證要求有適當(dāng)?shù)目刂菩畔砭_地恢復(fù)加密密鑰,提供了和對隱性認證的公鑰類似的隱含性密鑰保護。根本的技術(shù)〔簡單密鑰公證〕包含了一個可信效勞器〔公正人〕,或者一個分享該密鑰的一方,使用一個加密密鑰的密鑰來加密一個會話密鑰,目標(biāo)是源發(fā)方和接收方一塊使用該密鑰。加密后的結(jié)果可以用下面的公式表示:這里假定和可以鑒別給定系統(tǒng)中特定實體的身份。某一方假設(shè)想從這個加密信息中恢復(fù)出會話密鑰必須享有密鑰,顯式地以正確的順序指定和的具體數(shù)值,否那么恢復(fù)出來的將是一個隨機密鑰。之所以拿公正人做比喻是基于下面的假設(shè):第三方可以正確地認證這些組織的身份,然后提供一個只可以被該方恢復(fù)的會話密鑰。一個更深入討論有關(guān)使用偏置法公證的過程在例2中給出。例2(使用偏置法(offsetting)進行密鑰公證)是塊密碼,使用64比特密鑰操作64比特塊;是128比特密鑰加密密鑰,是64比特計數(shù)器,,是128比特源與目標(biāo)標(biāo)識符。對于偏置法密鑰公證方案,計算:,。上面產(chǎn)生出的128比特的公證密鑰就在兩密鑰三重加密算法中充當(dāng)密鑰加密密鑰。在上述計算中最左端的術(shù)語,被稱為公證封印,當(dāng)該“封印〞分別和、結(jié)合后,相比擬那些使用在簡單密鑰公證中產(chǎn)生的密鑰數(shù)〔也就是說,的函數(shù)數(shù)〕來說密鑰數(shù)量多得多。對于64比特〔單塊長度〕的密鑰,密碼加密過程可以做如下修改:使用,如上步驟計算密鑰封印,,使用的最左邊32比特和的最后邊32比特相連接來獲得,然后計算作為公證密鑰。1.2.3控制向量(ControlVectors)密鑰公證可以看作是建立認證密鑰的機制??刂葡蛄客ㄟ^將密鑰標(biāo)記的思想和簡單密鑰認證的機制結(jié)合在一起,提供了控制密鑰匙使用的一種方法。和每個密鑰相關(guān)聯(lián)的一個控制向量。它和密鑰標(biāo)記類似,定義密鑰授權(quán)使用的范圍。在每次加密之前,它給密鑰加密密鑰一個變化值,然后再用該變化值去加密。加密公式為:。因此密鑰解密需要確定適宜的控制向量和正確的密鑰加密密鑰;如果數(shù)值不正確,恢復(fù)出來的是一個毫無用處的虛假的密鑰。密碼學(xué)性質(zhì)的在密鑰生成階段綁定控制向量到防止了對控制向量的沒有授權(quán)的操作,假定只有授權(quán)的一方可以訪問密鑰加密密鑰。通過在控制向量中使用一個或多個字段指定實體,控制向量可以包含密鑰公證。和訪問控制的標(biāo)準模型相關(guān)聯(lián)〔參看注解1〕,一個控制向量可以用于表示一個主體的身份()和訪問密鑰()的權(quán)限()。在用于一個特定的密碼學(xué)操作中,控制向量和受保護的密鑰一塊輸入。在這個時候,要做一個校驗保證要求的操作和控制向量相一致。這樣一來,密鑰就要使用控制向量解密。如果控制向量不匹配和受保護密鑰綁定的數(shù)據(jù)〔或者密鑰不正確〕,恢復(fù)出來的密鑰,就是錯誤的。這里的平安依賴于校驗和使用不可別離的假定,而且校驗是在一個可信的子系統(tǒng)中完成的。如果控制密鑰的位長和密鑰加密密鑰的位長不一致,在耦合前要使用一個防止碰撞的哈希函數(shù)。這就允許任意長度的控制向量。因此一個128比特的密鑰和一個有128比特輸出的哈希函數(shù)就可以用于加密密鑰,得到:。注解1(訪問控制模型(modelforaccesscontrol))有一種方法可以控制對資源的訪問。訪問矩陣模型使用一個2維的矩陣,其中每一行代表每一個主體〔〕,每一列代表一個對象〔〕,依賴于對主體的正確的鑒別。每一個訪問紀錄表示實體對對象擁有的權(quán)限〔例如,一個應(yīng)用程序可以對文件擁有讀、寫、修改、或者執(zhí)行權(quán)限〕。列還可以表示對象可訪問列表,用條目代表權(quán)限,這里。另外一種資源保護的方法是Capability的思想:一個Capability表示一個對象和它的權(quán)限集,而且如果一個函數(shù)對Capability有訪問權(quán),不需要進一步確實認和身份驗證就可以獲得特定的權(quán)限。例3〔使用控制向量的例子〕控制向量可以用于提供類似如下功能的公開密鑰。分發(fā)對一個對稱密鑰的兩個拷貝,一個只用于加密〔或者消息認證碼的生成〕,第二份拷貝只允許解密或者消息認證碼確實認。其他使用控制字段的例子包括:允許隨機數(shù)的生成;允許密文翻譯〔KTC的例子〕;區(qū)分數(shù)據(jù)加密和密碼加密密鑰;公開密鑰認證中任何字段的合并。備注2〔密鑰確認和防止重發(fā)(keyverificationandpreventreplay)〕密鑰重發(fā)問題同樣可能在用來提供唯一性和及時性和防止消息〔序列號,時間戳、挑戰(zhàn)——應(yīng)答〕重發(fā)技術(shù)中遇到,這些技術(shù)也同樣用密鑰傳送協(xié)議。在從一個密鑰派生出密鑰之前,實際使用的是公證技術(shù)和控制向量技術(shù),對它的完整性確認是可以考慮的。這個目的可以使用數(shù)據(jù)完整性的標(biāo)準技術(shù)到達〕。簡單的方法涉及到發(fā)送某一個數(shù)據(jù)的加密密文的生成者〔在所討論的密鑰情況下〕,而且該數(shù)據(jù)能夠被接收者識別。多個域的密鑰管理這一節(jié)考慮實際多個域或者權(quán)限主體的系統(tǒng)的密鑰管理模型。定義1:一個平安域(域)(securitydomain)被定義成一個受單獨的認證機構(gòu)控制的〔子〕系統(tǒng),該認證機構(gòu)是該〔子〕系統(tǒng)中所有實體所信任的。一個域上適宜的平安策略是由它的認證機構(gòu)隱形或者顯性定義的。在一個域上,每一個實體對它的認證機構(gòu)的信任來源域一個具體實體享有的密鑰或者密碼〔在對稱情況下〕,或者實體擁有認證機構(gòu)真實的公鑰〔在非對稱情況下〕。這兩種信任關(guān)系也就通過這兩種方式保持。這就允許在實體和認證機構(gòu)之間建立平安通道〔可保證真實性和機密性〕。2.1兩個域之間的信任關(guān)系兩方和分別屬于不同的平安域和,兩個平安域分別擁有認證機構(gòu)和?,F(xiàn)在和可能想平安地通信〔或者想訪問另外一個平安域的資源〕。這一點可以簡化成和之間的如下兩個可選一的需求:1).(共享一個對稱密鑰)建立一個共享的兩方都信任的密鑰,僅有兩方或者認證機構(gòu)知道該密鑰。2).〔分享公開密鑰〕通過可以用于兩方之間信任橋梁的一個或者更多公共密鑰獲得信任關(guān)系。例如,允許對另外一方的消息真實性做確認,或者保證發(fā)送給應(yīng)外一方的消息是可靠的。上面兩種方法中的任何一種都可能為認證機構(gòu)和提供存在的可信任關(guān)系,該信任關(guān)系是基于可信的公開密鑰或者共享的秘密密鑰。如果和已經(jīng)有了信任關(guān)系,通過使用兩方初始的信任關(guān)系可以滿足上面任何一種需求。該信任關(guān)系允許為了在和之間建立對象信任關(guān)系,而在信任對,,之間建立平安的通信通道??梢酝ㄟ^和分別委托它們自己的認證機構(gòu)完成獲得其他實體信任的工作,實體是在另外一個認證機構(gòu)管理之下〔參見下面的詳細說明〕。如果和之間并不共享一個存在的信任關(guān)系,雙方共同信任的第三方認證機構(gòu)可以作為一個中介完成同樣的最終結(jié)果。這和章節(jié)2.2所提到的公開密鑰情況下的信任鏈類似。在這個子章節(jié)開始所講的兩個可選項在下面我們要詳細展開討論。圖表STYLEREF1\s2SEQ圖表\*ARABIC\s111)可信對稱密鑰:建立在共享的秘密密鑰上的信任可以通過多種可信密鑰建立技術(shù)獲得。參考上面的圖,下面給出了兩方和建立信任關(guān)系的簡略描述。(a)向認證機構(gòu)提出獲得一個可以和分享的密鑰(1)。(b)和之間建立一個臨時的秘密密鑰(2)。(c)和分別向和分發(fā),保證機密性和真實性(3A,3B)。(d)使用和之間建立平安的直接通信。如果消息(3B)的內(nèi)容可以通過由傳遞到,作為現(xiàn)存消息(2),(3A)的一局部,那么就可以刪掉消息(3B)。在這種情況下,從的視角來看,作為認證關(guān)系圖的組成成分和和信任關(guān)系可以看作一個單獨〔復(fù)合〕的認證機構(gòu),A和和該認證機構(gòu)通信,該機構(gòu)扮演的是標(biāo)準情況下的KDC或者KTC中的單個認證機構(gòu)的角色。2)可信公開密鑰?;诂F(xiàn)存的信任關(guān)系,通過象數(shù)字簽名或者消息認證碼這樣的標(biāo)準技術(shù)認證消息的來源,依靠公開密鑰可以獲得對方的信任??梢垣@得上面描述的方的可信公開密鑰?!瞐〕向認證機構(gòu)獲得方的可信公開密鑰——方法(1)〔b〕通過獲得該密鑰,該過程可以保證真實性——方法(2)?!瞔〕向傳輸該公開密鑰,該過程可以保證真實性——方法(3A)。(d)使用公開密鑰和建立直接平安通信——方法(4)。定義2交叉認證證書一個交叉認證證書〔或者CA認證〕是一個認證機構(gòu)(CA)創(chuàng)立的,說明它認證了另外一個CA的公鑰。備注3〔特定用戶信任vs域間交叉信任〕上面的方法2特別以的公開密鑰的形式向A提供了信任;這種信任可以被稱為特定用戶的信任傳輸。作為替代方法,域之間信任傳輸通常是下面這樣:假設(shè)創(chuàng)立了一個包含實體信息和的公鑰的證書。在這種情況下,創(chuàng)立了一個包括實體信息和的公鑰的交叉證書,如果擁有的可信的簽名驗證密鑰,就可以確認后面這種證書的簽名,因此可以信任的簽名認證密鑰,這樣就可以驗證證書中的公鑰〔或者其他由簽名的證書中的公鑰〕并且信任它。于是,來自于域的用戶(和認證機構(gòu))獲得了對域中由認證機構(gòu)認證的公共密鑰的信任。2.2多個認證機構(gòu)的信任模型有多種方法可以在涉及多個認證機構(gòu)的公鑰密鑰系統(tǒng)中組織認證機構(gòu)之間的信任關(guān)系。這些被稱為信任模型或者認證拓撲結(jié)構(gòu),從邏輯上說和模型之間的通訊模型顯著不同〔雖然有可能這些模型和通訊模型正好巧合〕。特別地,一個通訊鏈接并不表示一個信任關(guān)系。認證機構(gòu)(CA)之間的信任關(guān)系決定一個認證機構(gòu)發(fā)布的證書怎樣才能被別的認證機構(gòu)〔其他域的〕認證的實體使用或者驗證。在討論幾種認證信任模型之前,我們先介紹認證鏈。2.2.1證書鏈和認證路徑(Certificatechainsandcertificationpaths)公開密鑰認證提供了獲得真實可靠的公開密鑰的方法,前提是驗證者擁有簽署證書的認證機構(gòu)(CA)的一個可信任的、用來做驗證的公開密鑰。在有多個認證機構(gòu)的前提下,一個驗證者可能設(shè)想通過驗證一個由該認證機構(gòu)簽署的證書而獲得一個公開密鑰而不是設(shè)想該認證機構(gòu)從一開始就擁有一個可信的公開密鑰。但在這種情況下,驗證者可能還是可以到達他的目的,因為可以創(chuàng)立一個證書鏈,該鏈對應(yīng)一條來源于驗證者確實信任的公開密鑰組成的牢不可破的信任鏈,該證書鏈盡頭鏈接的是它想獲得信任的公開密鑰。證書鏈對應(yīng)于一個CA認證關(guān)系模型圖形表示中的有向路徑〔參見圖表2.2〕。我們的目標(biāo)是找到一個對應(yīng)一條有向路徑〔認證路徑〕的有向證書的序列,該有向路徑的起點是對應(yīng)于一個認證機構(gòu)的節(jié)點,驗證者信任該認證機構(gòu)發(fā)布的公開密鑰是真實的;終點是對密鑰驗證的公鑰進行簽名的認證機構(gòu)。例4〔對證書鏈的圖解說明〕考慮圖表2.2(e),假定一個實體擁有認證機構(gòu)的公鑰,想驗證認證機構(gòu)為實體簽名的證書,因此可以獲得對的信任。因此就存在一個有向路徑。讓表示簽名的證書將的名字綁定到公開密鑰上。這樣證書鏈還有最初對公開密鑰的信任這樣的先決條件,允許驗證中的簽名,從中獲得的一個可信拷貝。再使用驗證獲得的一個可信拷貝,于是我們就可以使用去驗證證書中所包含的公鑰的真實性。給定一個初始的公鑰和一個要驗證的證書,如果證書鏈沒有提供應(yīng)驗證者,在實際的密碼學(xué)性質(zhì)的信任鏈驗證之前,我們需要一個從公開途徑得到的數(shù)據(jù)建立一個適宜的〔信任〕鏈的方法。這個非密碼學(xué)性質(zhì)的任務(wù)和在標(biāo)注通訊網(wǎng)絡(luò)中進行路由選擇的任務(wù)很類似。例5〔使用交叉證書(cross-certificate)對建立認證鏈〕在例4中提到了一個涉及交叉證書對的尋找證書路徑的搜索技巧。在一個公開目錄中,在每一個認證機構(gòu)對應(yīng)的目錄條目中,對于每一個認證機構(gòu)來說,或者對做交叉認證或者對做交叉認證,因而對應(yīng)的目錄條目中存儲了證書對(正向,反向)或者用公式表示為,稱為交叉證書對。這里的符號和例4中的類似,證書對同時包括了的正向和方向證書,并且兩個證書至少存在一個。在缺乏更先進的技術(shù)或者更先進的路由表的情況下,通過對證書對中的反向證書做深度優(yōu)先或者廣度優(yōu)先搜索找到任何可能存在的認證路徑,這些認證路徑的起點就是驗證者最初擁有公開密鑰的認證機構(gòu)。作為證書鏈簽名認證的一局部,對交叉證書的驗證要求必須檢查這些證書本身是否有效。2.2.2相互隔離的域間的信任(trustwithseparatedomains)圖表2.2給出了許多可能的認證信任模型,這些模型建立在相互隔離的域上的。簡單的密鑰系統(tǒng)設(shè)計到一個認證機構(gòu)(CA)。更大的系統(tǒng)中要設(shè)計到兩個以上的認證機構(gòu)(CA)。在這種情況下,為了滿足在不同的認證機構(gòu)管理下用戶之間的秘密協(xié)作的需求,必須確定多個認證機構(gòu)之間的信任關(guān)系。在缺省情況下,兩個不同的認證機構(gòu)如圖表2.2(a)所示的那樣定義隔離的平安域,兩個域之間沒有信任關(guān)系。一個域中的用戶不能構(gòu)驗證來源域另外一個隔離的域中證書的真實性。2.2.3嚴格等級信任模型(stricthierarchicaltrustmodel)對于兩個隔離的域之間缺乏密碼學(xué)的可操作性的問題的解決方案之一就是圖表2.2(b)中所畫的嚴格等級劃分的思想。每一個實體的起點是根節(jié)點的公鑰,例如實體在注冊的時候獲得了認證機構(gòu)的公開密鑰,而不是象圖表2.2(a)中所示得到的是的密鑰。這個模型叫做根鏈模型(rootedchainmodel),因為所有的信任鏈都從根節(jié)點開始。它是一個中心式信任模型。多個這樣的根樹,每一個都“等級森嚴〞,可以象圖表2.2(c)里那樣支持多根節(jié)點樹。在這種情況下,就允許在多個樹的根節(jié)點之間做交叉認證,在圖上表示為根節(jié)點之間的雙向箭頭。從到的箭頭表示創(chuàng)立的給的公鑰的證書。這就允許樹中管理的用戶通過起點是終點是的認證鏈獲得對發(fā)布的證書的信任。在嚴格等級模型中,所有的實體都在單獨的域中有效〔域被根節(jié)點所定義〕。盡管有這樣的事情出現(xiàn):簽署了的公鑰證書,但直接信任的是根結(jié)點而不是節(jié)點。只是通過根結(jié)點間接地信任。該模型潛在的缺點包括:對系統(tǒng)所有的信任都依賴于根結(jié)點密鑰。甚至對于在兩個受同一個認證機構(gòu)管理的兩個實體需要證書鏈。在比擬深的層次結(jié)構(gòu)中證書鏈會變得很長。在某些組織中更自然一點的模型是要獲得對本地節(jié)點的信任〔父親CA〕而不是去獲得遠程根節(jié)點的信任。圖表STYLEREF1\s2SEQ圖表\*ARABIC\s122.2.3反向證書和一般有向圖信任模型(reversecertificatesandthegeneraldigraphtrustmodel)一個更一般的等級模型,帶有反向認證的等級關(guān)系,在圖表2.2(d)中給出。該等級關(guān)系類似于圖表2.2(b)中的嚴格等級模型,但現(xiàn)在在等級圖中每一個認證機構(gòu)(CA)也創(chuàng)立了認證它的直接上級認證機構(gòu)的公鑰的證書。在一個等級結(jié)構(gòu)中,兩種類型的證書是明顯不同的:正向證書(forwardcertificate)一個正向證書〔和認證機構(gòu)相聯(lián)系〕由的上一級創(chuàng)立,簽發(fā)給的公鑰。從等級圖上看到的是一個到的向下的箭頭。反向證書(reversecertificate)一個反向證書〔和認證機構(gòu)相聯(lián)系〕由創(chuàng)立,簽發(fā)給它的直接上級的公鑰。從等級圖上看到的一個是來源于的向上的箭頭。在這個模型里,每一個實體并不從根節(jié)點的公鑰開始,而是從創(chuàng)立它自己的證書的CA節(jié)點的公開密鑰開始,也就是從它的本地父節(jié)點開始?,F(xiàn)在所有的信任鏈從一個實體本地認證機構(gòu)〔CA〕開始。從任何實體到其它實體的最短信任鏈就在從樹中從向上到和的最近公共祖先,然后從該節(jié)點向下到的路徑上。具有反向證書的等級模型的一個缺點是在不同的認證機構(gòu)管理下的不同實體總可能出現(xiàn)很長的認證鏈,即使這些實體間經(jīng)常通信〔例子:考慮在圖表2.2(d)中和下的實體的關(guān)系〕。如果允許對直接作交叉認證,即使在圖中和之間并沒有邊相關(guān)聯(lián),那么情況就會好一點。這就是最普通的有向圖信任模型(圖表2.2(e))。該模型可以和圖論做比擬如下:在圖中用節(jié)點或者頂點表示認證機構(gòu),用有向邊表示認證關(guān)系?!簿哂衝個頂點的完全圖,從每一個頂點到其他頂點都有有向邊,表示完全信任關(guān)系,任何CA都可以直接對其他CA做交叉認證〕。有向圖模型是一個分布式信任模型。在圖中滅有中心節(jié)點或者根節(jié)點,任何CA都可以對其他節(jié)點做認證,每一個用戶實體的動作都從它本地的CA的可信公鑰開始。等級圖的概念有助于作為組織有向信任關(guān)系的參考。如果最初提供應(yīng)最終用戶實體的可信密鑰可以發(fā)生變化,這個模型可以用于補充上面討論的其他信任模型,包括嚴格的等級關(guān)系模型。備注5(向認證機構(gòu)CA分派用戶)在等級模型中,一個可選項就是限定只有最低層次的CA才能認證最終用戶,同時內(nèi)部的CA只為其他的CA效勞。在一般有向圖中,所有的CA都是平等的,自然允許任何CA都可以認證最終用戶。2.2.4信任模型中的約束(constraintsintrustmodels)如果要通過證書鏈獲得信任,需要對鏈中鏈接的證書做成功的驗證。一旦一個CA(如)對另外一個CA〔〕的公鑰做交叉認證,缺少了附加的約束,這種由擴展的信任就會慢慢的提供應(yīng)所有開始于的證書鏈的所有認證機構(gòu)。為了限制單個交叉證書擴展的信任的范圍,一個CA可以對它所簽發(fā)的證書施加約束,而且這種約束可以通過附加的表示特定策略的證書字段或者屬性證書顯性地記錄下來。對交叉證書簡單的約束包括:限制鏈的長度??梢詫碓从谒岬降慕徊孀C書的證書鏈的長度施加約束。例如,一個CA可以限制對它可以直接做交叉認證的CA的信任范圍,指定在所有它簽署的交叉證書中,所有證書都是任何信任鏈中的最后一個。限制有效域集合??梢灾乐付ㄒ粋€有效的CA的集合〔或者域名字列表〕來授予交叉證書。在認證鏈中來源于所提到的交叉證書的所有CA都必須屬于該集合。為了執(zhí)行驗證,相聯(lián)系的有一個驗證策略,該策略指定驗證發(fā)生的條件,比方在認證一個密鑰之前對證書主題的驗證類型,以及驗證證書中保證唯一對象名字的方法。2.3證書的分發(fā)和撤消一個證書目錄是一個數(shù)據(jù)庫,它是以Pull模型實現(xiàn)的――用戶在必要的時候從數(shù)據(jù)庫中取出〔拉〕證書。證書分發(fā)的另一種不同模型,Push模型,在證書創(chuàng)立時或周期性的將證書發(fā)給〔push〕所有的用戶,這可能適合于封閉系統(tǒng)。換句話說〔Alternatively〕,個人用戶在明確需要時給其它用戶提供他們自己的證書,例如,簽名驗證。在有證書撤消列表〔certificaterevocationlists,CRLs〕的基于證書的系統(tǒng)中,和分發(fā)證書一樣,也需要有一種分發(fā)CRLs的方法。一個證書目錄經(jīng)常被看作是不平安的第三方。當(dāng)目錄訪問控制的形式為寫入和刪除時,必需有保護措施允許維護和更新,而不是拒絕效勞,通過在證書上簽名來保證它們各自是平安的,不需要將它們通過平安信道傳送。在線認證是一個例外,它們由一個認證機構(gòu)在接受請求時實時創(chuàng)立,沒有生存期,或者由一個值得信任的機構(gòu)分發(fā),該機構(gòu)保證證書沒有被取消??梢允褂镁彺妗瞔aching〕證書或CRLs的方法,將經(jīng)常使用的引用項被短期存儲在本地存儲器中,防止了反復(fù)查找的花銷。緩存的CRLs必須保持足夠的刷新率,以確保能反映最近的撤消。2.3.1證書撤消和證書撤消列表(certificaterevocationandCRLs)當(dāng)一個秘密密鑰損壞〔compromise〕了,通過禁止隨后對密鑰的使用或者不再信任相關(guān)的密鑰資料〔keyingmaterial〕來將損失降低到最小?!沧⒁夂灻图用苊荑€間隱含的不同〕。這里包括任何可能使一個敵手獲得加密數(shù)據(jù)的知識的情況。如果公鑰必須從一個在線效勞器上實時獲得,該公鑰無疑可被立即刪除或替換。包含證書的情況會更加困難,因為所有分發(fā)的拷貝都必須被有效的收回。雖然〔猜想或事實上〕密鑰的損害可能很少,仍可能有其它的一些原因使一個CA過早的將一個公鑰和用戶名解除綁定〔如,取消證書〕。過早的終止使用密鑰資料的原因包括相關(guān)的實體離開或改變了他在組織中的角色,或者不再作為一個用戶進行授權(quán)。解決撤消密鑰問題的技術(shù)包括:證書中包含過期時間〔expirationdateswithincertificates〕。過期時間限制了暴露隨后資料的損失。短時有效期的一個極端例子是在線認證,它的證書根本上立即就過期。沒有CRLs的短期證書可以和需要經(jīng)常更新CRLs的長期證書進行比擬。手工通知(manualnotification)。通過使用帶外數(shù)據(jù)或特定信道的方法將撤消的密鑰通知給系統(tǒng)中的所有用戶。這可能在小的或封閉的系統(tǒng)中是可行的。包含撤消密鑰的公共文件(publicfileofrevokedkeys)。維護一個公共文件來鑒別已撤消的密鑰,所有用戶在使用密鑰前都要檢查該文件〔從文件中取出的數(shù)據(jù)可以采用和公鑰相似的技術(shù)來保證它的真實性〕。證書撤消列表〔CRLs〕。一個CRL是一種管理一個包含撤消密鑰的公共文件的方法。撤消證書(revocationcertificates)。它是實現(xiàn)CRLs的另一種方法,它可被視作在公鑰證書中包含一個撤消標(biāo)志和一個撤消時間,用來取消相應(yīng)的證書。最初的證書可以從認證目錄中刪除而用撤消證書代替。一個CRL是一個和已取消的公鑰相應(yīng)的帶符號的入口列表〔signedlistofentries〕,每一個入口指明了相應(yīng)證書的序列號,第一次撤消的時間和其它可能的信息,如撤消原因。列表的簽名〔保證它的真實性〕是由最初發(fā)出證書的CA產(chǎn)生的;通常該CRL也包括CA的名字。在所有的CRL中都包含日期,這提供了一種說明它的新鮮性的方法。如果CRLs通過一個Pull模型來分發(fā)〔例如,通過一個公共數(shù)據(jù)庫〕,即使它們沒有任何改變,它們也應(yīng)該被定期〔或者根據(jù)CRL本身指定的間隔〕分發(fā),這防止了新的CRLs被舊的CRLs惡意替換。在別離的授權(quán)撤銷列表〔authorityrevocationlists即ARLs〕中撤消交叉證書可能比擬特殊,這和CRLs類似(CRLs被限制到只能撤消終端用戶的證書)。注解2〔CRL分段〕為了有效的進行操作,當(dāng)CRLs變的很大時,一個可選的方法是將CRLs分段發(fā)送。使用的一個技術(shù)是delta-CRLs:當(dāng)更新CRL時,僅發(fā)送從最進更新后才被撤消的入口。這需要終端用戶平安的維護〔和更新〕當(dāng)前CRL的本地映像。第二種方法是將一個CRL根據(jù)撤消的原因分成段。第三種方法是根據(jù)證書中已經(jīng)指定的標(biāo)志〔在創(chuàng)立時〕將一個CRL分成特定的子列表,在所有的情況下,對每個證書,可獲得的信息必須指明要參考CRL的哪個段。密鑰生存期問題當(dāng)所有的加密密鑰在整個生存期都是固定的時,密鑰管理是最簡單的。密鑰周期(cryptoperiods)要求密鑰必須被更新。這強加了額外的需求,例如,在維護和更新用戶密鑰的認證機構(gòu)方面。密鑰存在時所經(jīng)歷的階段,即密鑰生存期,將在本節(jié)討論。3.1生存期保護需求在使用和存儲中需要有一種控制方法來保護密鑰。關(guān)于密鑰的長期存儲,保護期需依賴于加密功能〔例如,加密,簽名,數(shù)據(jù)真實性/完整性〕,毫無疑問它也依賴于數(shù)據(jù)對時間的敏感性。3.1.1密鑰更新中的依賴對平安性的影響密鑰資料〔Keyingmaterial〕應(yīng)該在加密周期過期以前更新。更新包括通過適宜的密鑰建立協(xié)議和密鑰層,使用已存在的密鑰資料來建立新的密鑰資料。為了限制萬一長期秘密密鑰或過時的會話密鑰的損害而暴露其它資料,應(yīng)該禁止密鑰資料間的相互依賴性。例如,不推薦用舊的會話密鑰加密新的會話密鑰來確保新密鑰的平安性〔因為舊密鑰的損害會導(dǎo)致新密鑰的損害〕。3.1.2各種不同類型密鑰的生存期存儲需求存儲的私鑰必須足夠平安以提供機密性和真實性。存儲的公鑰必須足夠的平安使得它們的真實性是可被驗證的。機密性和真實性分別抵消了泄漏和篡改的威脅,可以通過加密技術(shù),程序〔基于信任〕技術(shù),或物理保護〔防竄擾硬件〕的方法來提供。公鑰的簽名證書需要存檔,以便允許在將來需要時驗證簽名,這可能包括在私鑰停止以后。一些應(yīng)用程序可能要求私鑰的簽名既不備份也不存檔:這些密鑰暴露給除了潛在所有者之外的任何機構(gòu),這使不可否認的屬性無效。在這兒要注意喪失〔沒有損害〕一個私鑰的簽名可以通過產(chǎn)生一個新的來解決,由于在訪問過去的事務(wù)時不再需要該私鑰;同樣,公鑰的加密密鑰也不需要被存檔。另一方面,私鑰的解密密鑰可能需要存檔,因為如果解密密鑰喪失的話,過去用該密鑰加密的信息可能會喪失。用來保證實體真實性的密鑰不需要被備份或存檔。所有用來加密或驗證數(shù)據(jù)真實性的秘密密鑰,只要它們加密的數(shù)據(jù)需要繼續(xù)保護〔保護生存期〕,它們?nèi)孕枰C?,并需要備份或存檔以防止數(shù)據(jù)的喪失或防止密鑰不能被驗證。3.2密鑰管理生命期除了一些在所有時間秘密密鑰都保持不變的簡單系統(tǒng)外,和密鑰相關(guān)的加密周期要求密鑰被周期性的更新。更新密鑰必須有另外的過程和協(xié)議,通常包括在公鑰系統(tǒng)中和第三方通信。接下來的語句陳述了密鑰資料〔keyingmaterial〕在它的整個生存期的過程,即密鑰管理生存期。見圖3,生存期的階段可包括:用戶注冊用戶注冊用戶初始化密鑰生成密鑰建立協(xié)議密鑰恢復(fù)密鑰安裝密鑰更新密鑰備份密鑰注冊公鑰目錄密鑰的正常使用撤消存檔密鑰注銷和銷毀新用戶存在的用戶初始密鑰新密鑰新密鑰恢復(fù)的密鑰舊密鑰〔過期的〕密鑰損害或過早終止無害的喪失密鑰加密周期到期密鑰活動系統(tǒng)觸發(fā)操作前的操作中的操作后的過時的圖3密鑰管理生存期用戶注冊—一個實體成為一個平安域的授權(quán)成員。這包括通過一個平安的一次性技術(shù)獲得,創(chuàng)立和交換初始密鑰資料,如共享密碼或個人身份號碼〔PINs〕〔例如,個人交換,掛號信,委托信使〕。用戶初始化—一個實體初始化它的加密應(yīng)用〔例如,安裝和初始化軟件或硬件〕,包括使用或安裝從用戶注冊時獲得的密鑰資料。密鑰產(chǎn)生—加密密鑰的生成應(yīng)該包括一種方法,以確定預(yù)定的應(yīng)用或算法的正確屬性,而且被隨機預(yù)測的可能性〔對敵手來說〕是可以忽略的。一個實體可以產(chǎn)生它自己的密鑰,或者從一個可信任的系統(tǒng)中獲得密鑰。密鑰安裝—密鑰資料被安裝在一個實體的軟件或硬件中以便操作使用,它通過一個或多個以下技術(shù)安裝:手工給一個密碼或PINs建立入口,從以下設(shè)備中轉(zhuǎn)換:磁盤,只讀存儲設(shè)備,芯片卡〔chipcard〕或其它硬件標(biāo)志〔token〕或設(shè)備〔如,密碼裝載器〕。初始的密鑰資料可被用

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論