專利名稱:用于身份管理、驗(yàn)證服務(wù)器、數(shù)據(jù)安全和防止中間人攻擊的動(dòng)態(tài)分發(fā)密鑰系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及電子通信安全領(lǐng)域,尤其涉及網(wǎng)絡(luò)擴(kuò)展、驗(yàn)證和身份管理、檢測、撤銷和加密方法。
背景技術(shù):
最廣泛使用的為驗(yàn)證和加密在線提供安全性的方法是使用公鑰設(shè)計(jì)的非對(duì)稱加密系統(tǒng),其中驗(yàn)證依賴于證書服務(wù)器發(fā)放的證書。公
鑰基礎(chǔ)設(shè)施(PKI)系統(tǒng)由于經(jīng)常被不適當(dāng)?shù)貙?shí)施,因此具有已知的諸如易受到中間人(MitM)攻擊之類的安全弱點(diǎn)。
PKI系統(tǒng)的開銷很高,這不僅因?yàn)轶w系結(jié)構(gòu)中包含的所有步驟,而且還因?yàn)樗鼈儗?duì)密碼技術(shù)的選擇。PKI所使用的加密強(qiáng)度近來已引起質(zhì)疑。公鑰是復(fù)合素?cái)?shù)(compound prime), 并且它們總是可被攻擊。在素?cái)?shù)和因子分解理論中已有顯著進(jìn)展。存在對(duì)復(fù)合素?cái)?shù)進(jìn)行因子分解的新技術(shù)??焖儆?jì)算機(jī)通過如"篩選(sieve)"方法的簡化技術(shù)對(duì)復(fù)合素?cái)?shù)進(jìn)行因子分解,因此過去需要數(shù)年才能完成的工作如今可在幾小時(shí)中完成。由于隨著密鑰變得更強(qiáng)(更長)而引入的額外計(jì)算開銷,公鑰系統(tǒng)使用越來越強(qiáng)的密鑰變得越來越困難。
公鑰系統(tǒng)的安全性成為問題有多方面的原因。證書授權(quán)中心(CA)可能并非可信賴的。計(jì)算機(jī)上的私鑰可能不被保護(hù)。撤銷密鑰(拒絕網(wǎng)絡(luò)訪問)是困難的。撤銷通常需要第三方介入。普通用戶很難理解非對(duì)稱系統(tǒng)。此外,密碼密鑰信息對(duì)于黑客是公開可用的。目前沒有為黑客入侵和欺騙提供連續(xù)狀態(tài)驗(yàn)證、連續(xù)狀態(tài)入侵檢測、以及自動(dòng)拒絕網(wǎng)絡(luò)訪問的方法。
分發(fā)的加密密鑰是已被使用一些人工手段預(yù)先分發(fā)給所涉及的一方的密鑰,所述人工手段諸如是信件或人與人之間傳遞。這是確保
密鑰私密性的最安全的方法;然而當(dāng)希望與不具有預(yù)先共享的密鑰信息的各方建立新的動(dòng)態(tài)會(huì)話時(shí),這成為問題。
任何被創(chuàng)建以提供最高網(wǎng)絡(luò)安全級(jí)別的拓樸結(jié)構(gòu)或技術(shù)必須處理安全密鑰管理、密鑰創(chuàng)建、密鑰交換、驗(yàn)證、檢測、撤銷和授權(quán)的問題。
現(xiàn)有技術(shù)的前述示例和與之相關(guān)的局限性是示例性的而非排他的。在閱讀說明書并研究附圖之后,現(xiàn)有技術(shù)的其他局限性對(duì)于本領(lǐng)域技術(shù)人員會(huì)變得清晰。
發(fā)明內(nèi)容
結(jié)合系統(tǒng)、工具和方法描述和說明下文的實(shí)施例及其各個(gè)方面,所述系統(tǒng)、工具和方法為示例性和說明性的,而不限制本發(fā)明的范圍。在各個(gè)實(shí)施例中,上述問題中的一個(gè)或多個(gè)被減少或消除,而其他實(shí)施例針對(duì)其他改進(jìn)。
文中描述的動(dòng)態(tài)分發(fā)密鑰體系結(jié)構(gòu)處理了前述的pki系統(tǒng)的要素和缺點(diǎn)。在拓樸級(jí),公開了若干種網(wǎng)絡(luò)拓樸結(jié)構(gòu),其使用分發(fā)密鑰作為隨機(jī)數(shù)發(fā)生器,繼而生成附加的分發(fā)密鑰,并且安全地以電子方式將它們分發(fā)到額外的裝置/人,以便用于可容易地?cái)U(kuò)展的網(wǎng)絡(luò)和用于在因特網(wǎng)上擴(kuò)展安全網(wǎng)絡(luò)。此外,這些分發(fā)密鑰可以生成供任何加密
算法使用的會(huì)話密鑰。雖然優(yōu)選實(shí)施例使用美國專利第7190791號(hào)中公開的密鑰(以后稱為"白噪聲密鑰")用于附加密鑰生成(并且用于包括加密的全部安全功能),但是這還可以使用任何確定性隨機(jī)(偽隨機(jī))數(shù)據(jù)源和任何加密算法實(shí)現(xiàn)。安全網(wǎng)絡(luò)拓樸結(jié)構(gòu)的采用也在某些情境中依賴于其影響現(xiàn)有技術(shù)的能力。因而,公開了一種混合方法,該方法使用因特網(wǎng)的安全套接層公鑰技術(shù)來增加另 一個(gè)抽泉層來防止中間人攻擊。
正如汽車需要和諧工作的許多不同技術(shù)組件一樣,安全網(wǎng)絡(luò)也需要若干用于有效和安全的使用和部署的組件。公開了提供狀態(tài)的和連續(xù)的驗(yàn)證、檢測和自動(dòng)撤銷的技術(shù)。這些組件基于使用確定性隨機(jī)(偽 隨機(jī))數(shù)據(jù)源來生成和比較尚未被創(chuàng)建且尚未被傳輸?shù)拿荑€流(密鑰 輸出)的各部分的能力。在數(shù)據(jù)密鑰流中預(yù)先比較密鑰段。如果密鑰
在加密狀態(tài)下;f皮遞送,則發(fā)生密鑰的安全傳輸,并且未授權(quán)的一方不 能訪問造成密鑰流段被破解或成功猜出所需的全部信息。這還需要能 夠容易地管理偏移,從而每個(gè)端點(diǎn)知曉從密鑰中的哪個(gè)位置開始密鑰 流段(令牌)生成。
利用動(dòng)態(tài)分發(fā)密鑰拓樸結(jié)構(gòu)的這些特性的有效技術(shù)被提供以防 止中間人攻擊,提供連續(xù)驗(yàn)證和檢測,并且通過自動(dòng)撤銷來保障安全。 本發(fā)明使用分發(fā)密鑰,但是該密鑰并非像傳統(tǒng)上那樣被作為用于點(diǎn)對(duì) 點(diǎn)鏈路的密鑰,相反,該密鑰被用于分發(fā)用于建立安全通信鏈路的初 始意圖的加密的"會(huì)話"密鑰。分發(fā)密鑰本質(zhì)上不僅可用于通信流量的 加密,而且還可用于對(duì)另一方的驗(yàn)證。這是優(yōu)于PKI公鑰基礎(chǔ)設(shè)施系 統(tǒng)之處。
網(wǎng)守(GateKeeper)與密鑰庫(Key Vault) —起工作,以創(chuàng)建 用于TCP/UDP隧穿的動(dòng)態(tài)分發(fā)密鑰環(huán)境。網(wǎng)守基于簡單的標(biāo)準(zhǔn)網(wǎng)絡(luò) 過濾器(netfilter)準(zhǔn)則創(chuàng)建并加密隧道,而密鑰庫有利于在網(wǎng)守彼 此對(duì)話時(shí)網(wǎng)守所要求的點(diǎn)對(duì)點(diǎn)密鑰的取回。
簡而言之,該系統(tǒng)當(dāng)前有利于網(wǎng)絡(luò)上的在網(wǎng)絡(luò)之間的幾乎透明 的、動(dòng)態(tài)的、加密點(diǎn)對(duì)點(diǎn)通信。密鑰庫與網(wǎng)守系統(tǒng)一起工作,以在任 何基于IP的網(wǎng)絡(luò)如因特網(wǎng)上創(chuàng)建使得通信可保持安全和保密的層。
本發(fā)明提供一種動(dòng)態(tài)分發(fā)密鑰系統(tǒng)。傳統(tǒng)的分發(fā)密鑰系統(tǒng)要求通 過信件或親自將密鑰遞送給希望與之建立安全鏈接的每個(gè)人。本發(fā)明 克服了此阻礙。 一個(gè)人可在任何時(shí)候開始與使用本發(fā)明的其他人通 信,而不必等候分發(fā)密鑰被遞送。
因此,本發(fā)明提供一種對(duì)第一源計(jì)算機(jī)和第二目的地計(jì)算機(jī)之間 的通信加密的方法,其中所述源和目的地計(jì)算機(jī)各自分別具有第一和 第二私用分發(fā)密鑰,所述第一和第二私用分發(fā)密鑰中的每一個(gè)與第一 和第二唯一私鑰標(biāo)識(shí)符關(guān)聯(lián),其中密鑰存儲(chǔ)服務(wù)器具有第一和第二私
8用分發(fā)密鑰,所述第一和第二私用分發(fā)密鑰中的每一個(gè)與第一和第二
唯一私鑰標(biāo)識(shí)符相關(guān)聯(lián),所述方法包括i)所述源計(jì)算機(jī)向所述密鑰 存儲(chǔ)服務(wù)器發(fā)送對(duì)會(huì)話密鑰的請求;ii)所述密鑰存儲(chǔ)服務(wù)器識(shí)別所 述源計(jì)算機(jī),并且找到其關(guān)聯(lián)的私用分發(fā)密鑰;iii)所述密鑰存儲(chǔ)服 務(wù)器為所關(guān)心的會(huì)話生成唯一會(huì)話密鑰,所述會(huì)話由唯一會(huì)話標(biāo)識(shí)符 標(biāo)識(shí);iv)所述密鑰存儲(chǔ)服務(wù)器用源計(jì)算機(jī)私用分發(fā)密鑰對(duì)會(huì)話密鑰 進(jìn)行加密,并將其與會(huì)話標(biāo)識(shí)符一起發(fā)送到源計(jì)算機(jī);v)所述源計(jì) 算機(jī)使用所述源計(jì)算機(jī)私用分發(fā)密鑰對(duì)所述會(huì)話密鑰進(jìn)行解密,并且 使用所述會(huì)話密鑰對(duì)通信進(jìn)行加密,所述通信與所述會(huì)話標(biāo)識(shí)符一起 被發(fā)送到目的地計(jì)算機(jī);vi)所述目的地計(jì)算機(jī)接收所述加密的通信 和會(huì)話標(biāo)識(shí)符,并且向密鑰存儲(chǔ)服務(wù)器發(fā)送對(duì)與會(huì)話標(biāo)識(shí)符相關(guān)聯(lián)的 會(huì)話密鑰的請求;vii)所述密鑰存儲(chǔ)服務(wù)器從所述會(huì)話標(biāo)識(shí)符確定其 是否具有相應(yīng)的會(huì)話密鑰,以及其是否具有目的地計(jì)算機(jī)的私用分發(fā) 密鑰;viii)如果所述密鑰存儲(chǔ)服務(wù)器從所述會(huì)話標(biāo)識(shí)符確定其具有相 應(yīng)的會(huì)話密鑰,并且具有目的地計(jì)算機(jī)的私用分發(fā)密鑰,則所述密鑰 存儲(chǔ)服務(wù)器用所述目的地計(jì)算機(jī)的私用分發(fā)密鑰對(duì)所述會(huì)話密鑰進(jìn) 行加密,并且將其發(fā)送到目的地計(jì)算機(jī);ix)所述目的地計(jì)算機(jī)然后 使用其私用分發(fā)密鑰對(duì)所述會(huì)話密鑰進(jìn)行解密,并且使用所述解密后
的會(huì)話密鑰對(duì)所述通信進(jìn)行解密。
除了上述的示例性方面和實(shí)施例之外,通過參考附圖并研究以下 的詳細(xì)描述,其他方面和實(shí)施例也將變得清晰。
在附圖中示出了示例性實(shí)施例。在此公開的實(shí)施例和圖應(yīng)被認(rèn)為 是示意性的而非限制性的。
圖1示出現(xiàn)有技術(shù)PKI系統(tǒng);
圖2示出能夠使用傳統(tǒng)計(jì)算網(wǎng)絡(luò)而利用本發(fā)明的安全通信鏈路 的可能的配置;
圖3是示出本發(fā)明的系統(tǒng)的示意圖;圖4是示出過程的一個(gè)組成部分的流程圖5是示出該過程的第二個(gè)組成部分的流程圖6是該過程的一個(gè)組成部分的類圖7是該過程的第二個(gè)組成部分的類圖8是根據(jù)該過程被包裝的分組的示意性圖示;
圖9是根據(jù)該過程的頭部的示意性圖示;
圖IO是示出混合AES-白噪聲過程的流程圖ll是根據(jù)該過程的驗(yàn)證和身份管理配置的示意性圖示;
圖12是通過擾動(dòng)密鑰調(diào)度來創(chuàng)建密鑰的方法的示意性圖示。
具體實(shí)施例方式
在下文的描述中,闡述了具體細(xì)節(jié)以便使本領(lǐng)域技術(shù)人員更透徹 地理解本發(fā)明。然而,公知的要素可能并未詳細(xì)示出或描述以避免不 必要地隱蔽本公開。因此,說明書和附圖應(yīng)被看作是示例性的而非限 制性的。
圖1示出了加密Bob和Alice之間的通信的現(xiàn)有公鑰非對(duì)稱加密 方法,該方法是當(dāng)前最廣泛使用的用于為驗(yàn)證和加密在線提供安全性 的方法。
圖2示出能夠使用傳統(tǒng)計(jì)算網(wǎng)絡(luò)而利用本發(fā)明的安全通信鏈路 的可能的配置。在布置10中,在網(wǎng)絡(luò)14和16之間在因特網(wǎng)12上發(fā) 送的所有數(shù)據(jù)被加密。在布置18中,在任何具有網(wǎng)守的工作站節(jié)點(diǎn) 20之間發(fā)送的所有數(shù)據(jù)被加密。
在下文中,本發(fā)明的兩個(gè)組件被稱為網(wǎng)守和密鑰庫。網(wǎng)守是使用 密鑰庫的點(diǎn)對(duì)點(diǎn)數(shù)據(jù)鏈路層隧穿系統(tǒng)。密鑰庫在網(wǎng)守請求密鑰時(shí)將密 鑰提供給網(wǎng)守。本發(fā)明使用的優(yōu)選的加密算法是美國專利第7190791 號(hào)和PCT專利申請公報(bào)第WO 2005/076521 Al號(hào)中公開的白噪聲超 級(jí)密鑰力口密算法(Whitenoise Superkey Encryption Algorithm ), 以 上兩篇專利文獻(xiàn)并入此作為參考,并且該白噪聲超級(jí)密鑰加密算法被 使用其商標(biāo)"白噪聲(Whitenoise )—,來引用。網(wǎng)守和密鑰庫服務(wù)器可以用于從IP行進(jìn)到IP— —無論從計(jì)算機(jī) 到計(jì)算機(jī),還是作為替換方案,從網(wǎng)絡(luò)到網(wǎng)絡(luò),或者從計(jì)算機(jī)到網(wǎng)絡(luò), 以及有線到有線,無線到有線,以及無線到無線——的網(wǎng)絡(luò)體系結(jié)構(gòu) 的任何層次。由于該系統(tǒng)依賴于系統(tǒng)之間的數(shù)據(jù)鏈路層,所以該系統(tǒng)
能夠在任何地方插入到網(wǎng)絡(luò)中。 一些其他加密系統(tǒng)依賴于應(yīng)用層(SSH 是其一個(gè)例子)。當(dāng)使用應(yīng)用級(jí)時(shí),安全隧道是應(yīng)用特定的,并且需 要與希望利用它的每個(gè)應(yīng)用諸如VOIP、電子郵件、或網(wǎng)上沖浪之類 重新整合。相反,使用數(shù)據(jù)鏈路層使得可無延遲地與每個(gè)基于IP的 應(yīng)用立即整合。應(yīng)用并不知曉存在隧道。
密鑰庫和網(wǎng)守應(yīng)用可以單獨(dú)地工作,或者組合地工作。網(wǎng)守隧穿 系統(tǒng)可被獨(dú)自使用,從而僅利于對(duì)于ISP、政府、使館、或法人可能 有用的傳統(tǒng)靜態(tài)點(diǎn)對(duì)點(diǎn)隧道的概念。基于允許點(diǎn)對(duì)點(diǎn)動(dòng)態(tài)連接的分發(fā)
區(qū)域。這些其他區(qū)域包括確保呼叫的蜂窩電話;確保和驗(yàn)證電子郵件 的電子郵件系統(tǒng);用于軍事衛(wèi)星圖4象的流傳輸?shù)男l(wèi)星;如Bit Torrent 的對(duì)等網(wǎng)絡(luò)(許多ISP過濾對(duì)等網(wǎng)絡(luò)流量,并且在這些連接上給予用 戶較慢的吞吐量;然而加密后的流量不能被分析)。
圖3示意性地示出了該系統(tǒng)。每個(gè)網(wǎng)守工作站21、 23具有與其 密鑰庫25成對(duì)的唯一密鑰。所述兩個(gè)網(wǎng)守工作站21、 23使用其被分 配的密鑰從密鑰庫請求會(huì)話密鑰,所述被分配的密鑰在安裝時(shí)被物理 地分配。接著,它們可以利用該會(huì)話密鑰彼此通信。單個(gè)網(wǎng)守不能解 密任意數(shù)據(jù)。當(dāng)加密后的數(shù)據(jù)需要被解密時(shí),只有目的地計(jì)算機(jī)可以 將其解密,這是因?yàn)橛捎跁?huì)話密鑰被通過與密鑰庫成對(duì)的唯一密鑰加 密,因此只有傳輸中包含的兩臺(tái)計(jì)算機(jī)可以從密鑰庫獲得會(huì)話密鑰。
網(wǎng)守客戶端利用其私用分發(fā)密鑰創(chuàng)建和加密對(duì)與另一網(wǎng)守的會(huì) 話密鑰的請求,只有保持該會(huì)話密鑰的密鑰庫具有該私用分發(fā)密鑰的 副本。只有此會(huì)話中包含的這兩個(gè)網(wǎng)守可以請求會(huì)話密鑰,這是因?yàn)?br>
其私鑰通過密鑰庫驗(yàn)證'它們的請求。
驅(qū)動(dòng)安全鏈接的事件序列開始于發(fā)起側(cè)的網(wǎng)守,繼續(xù)前進(jìn)到密鑰庫,并且最終結(jié)束于接收側(cè)。這可以在圖4和5中看出。如詳細(xì)描繪 網(wǎng)守和密鑰庫二者中的事件流程的圖4和5所示,在建立安全的點(diǎn)對(duì) 點(diǎn)通信時(shí),這兩個(gè)系統(tǒng)共同工作以形成分發(fā)密鑰系統(tǒng)。網(wǎng)守利用現(xiàn)有 的高速緩存的密鑰通過隧道與另一網(wǎng)守通信,并且根據(jù)需要從密鑰庫 取回任何需要的會(huì)話密鑰。密鑰庫僅接收和應(yīng)答密鑰請求。
參照圖3、 4、 5,源網(wǎng)守21具有私用分發(fā)密鑰1,所述私用分發(fā) 密鑰1與其的唯一標(biāo)識(shí)符相關(guān)聯(lián),并且被與該標(biāo)識(shí)符關(guān)聯(lián)地存儲(chǔ)在密 鑰庫25中。為了開始與網(wǎng)守23的加密通信,網(wǎng)守21向密鑰庫25發(fā) 送對(duì)會(huì)話密鑰的請求。密鑰庫25識(shí)別進(jìn)行發(fā)送的網(wǎng)守21,并且找到 其相關(guān)的分發(fā)密鑰1。接著,密鑰庫25為由唯一會(huì)話標(biāo)識(shí)符所標(biāo)識(shí)的 所關(guān)心的會(huì)話生成唯一會(huì)話密鑰。然后,密鑰庫25用密鑰1對(duì)會(huì)話 密鑰進(jìn)行加密并將其與會(huì)話標(biāo)識(shí)符一起發(fā)送到網(wǎng)守21。然后,源網(wǎng)守 21使用密鑰1解密會(huì)話密鑰,并且使用會(huì)話密鑰加密送往網(wǎng)守23的 通信。網(wǎng)守23接收分組,并且判斷是否需要對(duì)其解密。如果需要解 密,則網(wǎng)守23向密鑰庫25發(fā)送對(duì)會(huì)話密鑰的請求。密鑰庫25從會(huì) 話標(biāo)識(shí)符判斷其是否具有對(duì)應(yīng)的會(huì)話密鑰,以及其是否具有網(wǎng)守23 的分發(fā)密鑰2。如果具有,則密鑰庫25利用密鑰2對(duì)會(huì)話密鑰進(jìn)行加 密,并且將其發(fā)送到網(wǎng)守23。然后,網(wǎng)守23使用其的分發(fā)密鑰2對(duì) 會(huì)話密鑰進(jìn)行解密,并且利用解密后的會(huì)話密鑰對(duì)來自網(wǎng)守21的通 信進(jìn)行解密。
圖6示出網(wǎng)守類圖。網(wǎng)守應(yīng)用可以包含一個(gè)或多個(gè)管道,每個(gè)管 道包含進(jìn)出分組傳送器,所述進(jìn)出分組傳送器負(fù)責(zé)基于它們的分組處 理器中的規(guī)則管理器的規(guī)則來過濾和加密這些分組,通過密鑰管理器 根據(jù)需要取回密鑰。圖7示出密鑰庫類圖。密鑰庫應(yīng)用具有一個(gè)主循 環(huán),其聽取到來的密鑰請求,并且用密鑰響應(yīng)來滿足這些請求。
當(dāng)寫分組時(shí),除非如以下那樣以高級(jí)才莫式初始化libnet,否則函 數(shù)一般不可用
Iibnethandle=libnet_init(LIBNET—LINK—ADV,
conveyerinfo.destinationdevice, libneterror);
12在上文代碼中可看出,LIBNET一LINK—ADV的定義值被用于在 數(shù)據(jù)鏈路層上以高級(jí)模式初始化libnet句柄。
并且當(dāng)讀分組時(shí),被讀回的分組的類型通過編譯的"網(wǎng)絡(luò)過濾器,, 樣式的表達(dá)確定。
pcap—lookupnet(conveyerinfo.sourcedevice, &net, &mask,
pcaperror》
pcap—compile(pcaphandle, &compiledfilter, conveyerinfo.filterexpression, 0, net); pcap—setfilter(pcaphandle, &compiledfilter);
在以上代碼中可看出,打開了一個(gè)想要從其讀取、編譯、并且分 配要使用的濾波器的裝置的句柄。在這里將系統(tǒng)與IP表防火墻規(guī)則 整合在一起。例如可以忽略端口 21和20上的任何流量,以阻止普通 的ftp服務(wù)。
在PacketProcessor類中,實(shí)際的白噪聲頭部被附加到"包裝,,的
分組的末尾。"包裝"意味著原始分組已被重新封裝,準(zhǔn)備被加密。此
封裝是為了使用隧道,這是因?yàn)榉庋b的分組可通過加密而被破壞,而
不會(huì)使分組在路由選擇方面無用。 // create a UDP headers
*((unsigned short" (packet iphdr + packet.iphdrlength)) -
htons (TUNNEL—PORT) , 〃 src 'prt
★((unsigned short*)(packet.iphdr + packet.iphdrlength +
2:) - htons (TUNNEL—PORT)// dst prt
*((unsigned short*)(packet iphdr + packet.iphdrlength +
4)) - htons(UDP一HEADER一SI2E + da仁alengthl); 〃 lngth
udpChecksum(packet .p)
*((unsigned short" (packet2.iphdr + packet2.iphdrlength)〉 =htons(TUNNEL—PORT); // src prt
★((unsigned short" (packet2 . iphdir + packet2 iphdrlength + 2)) - htons(TUNNEL—PORT); // dst prt
★((unsigned short*) (packet 2 .iphdr + packet2 . iphdirlength +■ 4:') - htons (UDP一HEADER一SIZE + datalength2) , // lngth udpChecksum(packet2 .p)
上述代碼示出定制的UDP頭部在何處被創(chuàng)建以用于新的封裝分
13組。存在對(duì)用于短數(shù)據(jù)類型的主機(jī)字節(jié)序到網(wǎng)絡(luò)字節(jié)序的改變函數(shù)
"htons"的調(diào)用,用于將整個(gè)信息分組逐比特地化為頭部。
圖8示出封裝的分組的實(shí)際構(gòu)成。一旦分組被封裝成具有白噪聲 頭部的新分組,則嵌入的分組可被用適當(dāng)?shù)臅?huì)話密鑰加密。
選擇UDP分組來封裝加密的流量有兩方面的原因。UDP是僅有 的在協(xié)議中包括數(shù)據(jù)大小從而允許附加額外的頭部的普通協(xié)議。由于 這是隧道協(xié)議,因此如果需要數(shù)據(jù)的任何重傳輸,則客戶端可以對(duì)其 進(jìn)行請求,并且不需要隧道跟蹤丟失的數(shù)據(jù)。
圖9所示的白噪聲頭部包含將使用加密的信息,以及關(guān)于隧道何 時(shí)由于超過了 MTU(最大傳輸單元)而需要對(duì)數(shù)據(jù)分組進(jìn)行分段的 關(guān)于分段的某些信息。第一序列是發(fā)起系統(tǒng)的序列,第二序列是目的 地系統(tǒng)序列,而偏移是曾用于對(duì)此特別的分組進(jìn)行加密的白噪聲密碼 流中的偏移。被分段的比特指示這是否是分段的隧道分組,1比特分 段號(hào)指示這是第一還是第二分段,30比特被保留用于驗(yàn)證填充,并且 32比特用于分段id,所述分段id用于將這些分段與其他分段區(qū)分開。 分段具有重疊的分段id的幾率為232分之一,并且這會(huì)損壞重裝。在 封裝的分組中,包含256比特的此頭部加上額外的以太網(wǎng)、IP和協(xié)議 頭部構(gòu)成總隧道系統(tǒng)的開銷。此開銷是每個(gè)分組的開銷,因此如果送 出許多小的分組,則百分比開銷比較大,然而如果使用來自文件傳輸 的大的分組,則開銷非常低。
在網(wǎng)守應(yīng)用的以下輸出中,示出了隧道分組分段。在被添加白噪
聲頭部之后過大而不能被傳輸?shù)姆纸M被分割成兩個(gè)分段。每個(gè)分段保
持原始IP頭部以便確保該分組被正確遞送,并且在白噪聲頭部中具
有分段信息。
GateKeeper: - init (〉 Pipe: sinit () ,' 1
Conveyer:initread() ether src not 00:00:00:21:a0:la and ether src not 0004 :E2 :D7 :32 : 9C Conveyer::ini仁write()KeyManager initializing
Conveyer:initread(〉 ether src 00:00 - 00:21:a0:la Conveyer*: : initwrite () KeyManager initializing
incomingconveyer init (); 1
outgoingconveyer init () 1 GateKe印er: :run() Pipe : :run(〉
Outgoing: Fragmentation=TRUE copying ip and ethernet headers
setting new sizes
splitting up packet into fragments adding OxA to wnhdr adding 0x8 to wnhdr
encrypting data sections of the two fragments fragment checksums done creating fragments
display fragmentl:
0004e2d7329d0000
0021a0la08004500
03174040004011
OS39CO380108CO38
01042619261902e3
0000004d00610074
0074006500720073
002e006d00700033
0074000000000000
00008e7991CbC5
01006s8e7991cbC5
0100daC35e2fd5C5
0100daC35e2fd5C5
0100000000000000
0000001000000000
0010000000160000
0000000000100047
1500340037004e004f
0056007e00560000
0000000000000067
0063006f006e0066
0064002d0072006f
006f0074007c0000
000000000080e230
947533C50180e230
94"7533C50180e230
947533C50180e230
3475C501000000
0000000000000010
0300000000100000
00lc000000000000
0010004b00420035
004300340031007e
004a000000000000
0000006b00650079
00720069006e0067
002d007700320037
006c006d00730000
0088000000000000
0080cf21bl37d4C5
0180796feldcd4c5
0180Cf21bl37d4c5
0180cf21bl37d4c5
01d0346400000000
0000001000000000
0020020000230000
0000000000180041
003200320043004e
0046007e0059002e
0045005800450061
006f006500330070
0061007400630068
002d00310030007400Sf003100300031
002e006500780065
0060000000000000
008031284231d5c5
0180e35bef4ad5C5
01803l284231d5c5
018031284231d5c5
0100000000000000
0000001000000000
0010000000020000
0000000000000000
0000000000000000
0000000000000000
000000000000002e
007c000000000000
0080705c5f2fd5c5
0180705c5f2fd5c5
0180705c5f2fd5c5
0180705c5f2fd5c5
0100000000000000
0000001000000000
0010000000lc0000
000000000010004b
0031005300360051
0039007e00310000
000000000000006b
0065007900720069
006e0067002d0077
0057005900450073
0069000000700000
0000000000003d53
242fd5C501003d5a
242fd5c50180d3f2
242fd5C50180d3f2
242fd5C501000000
0000000000000010<image>image see original document page 18</image>0064002d0072006f
006f0074007c0000
000000000080e2a0
9475a3C50180e230
9475C50180e230
9475a3C50180e230
947533C501000000
0000000000000010
0000000000100000
00lc000000000000
0010004b00420035
004300340031007e
0043000000000000
0000006b00650079
00720063006e0067
002d00770032■0037
036c006d00730000
0 388000000000000
0080cf21bl37d4c5
0180796feldcd4c5
0180cf21bl37d4c5
0180cf21bl37C5
01d0346400000000
0000001000000000
00200200002a0000
0000000000180041
003200320043004e
0046007e0059002e
0045005800450061
006f006500330070
0061007400630068
002d003100300074
006f003100300031
002e006500780065
0060000000000000
008031284231d5c50180e35bef43d5CS
018031284231d5C5
018031284231d5C5
0100000000000000
0000001000000000
0010000000020000
0000000000000000
0000000000000000
0000000000000000
000000000000002e
007c000000000000
0080705C5f2fd5c5
0180705C5f2fd5c5
0180705c5f2fd5c5
0180705C5f2fd5c5
0100000000000000
0000001000000000
0010000000lc0000
000000000010004b
0031005a00360051
0039007e00310000
000000000000006b
0065007900720069
006e0067002d0077
0057005900450073
0069000000700000
0000000000003d53
242fd5C501003d53
242fd5C50180d3f2
242fd5c50180d3f2
242fd5C501000000
0000000000000010
0000000000120000
0012000000000000
0010005f00390046
005400530043007e<formula>formula see original document page 21</formula>failed to open file for i:eading 0x409fd238retrieve key from fault
creating request: 1:2
checking response to 12
sizeof unsigned long long: 8
key was found on fault responsesize: 50
key found had UID: S9
key found had offset: 10
key found had scpcrc: 10
key found had length: 18
copying key
done copying key
key on vault
save key仁o drive path:
/tmp/Keys/0000000000000001/0000000000000002,key
可以看出,網(wǎng)守接收分組,意識(shí)到其在本地存儲(chǔ)器或硬盤高速緩 存中不具有密鑰,因此其從密鑰庫請求該密鑰,并將其保存到本地高 速緩存中。
在下面的輸出畫面中,示出了規(guī)則系統(tǒng)。顯示了到來的分組的協(xié)
議(顯示為其數(shù)值代碼),并且還示出了關(guān)于ACCEPT(接受)/DROP (放棄)/ENCRYPT (加密)的規(guī)則
GateKeeper: : init () Pipe: :init () 1 Conveyer , init read () ether ether src not 00:04:E2:D7 Conveyer::initwrite() KeyManager initializing Conveyer:initread() ether Conveyer:ini仁write () KeyManager initializing incotningconveyer, init () outgoingcorweyer.init() GateKeeper- :rim(》, Pipe : :run (〉 $ <LPP>PMIHPDS</IjPP>
src not 00:00:00:21:a0:la and 32:9C
src 00:00:00:21:a0:la
Incoming: 6 ACCEPT —這是被標(biāo)記為ACCEPT (接受)的到來的6/TCP分組$ APP^PMIHPDS《/LPP^ + + + + + + + + + + + + + + + + + 14-0.'20
000e14le8e0000
00211308004500
oo34df40004006
d75ec0380108C038
01648023008bab6f
9eb75523bb338010
05b463be00000101
0800047df70015
29 43
OutgoingData ACCEPT —這是被標(biāo)記為ACCEPT (接受)的離開的分組 $ <LiPP>PMIHPDS</IjPP>
ff ff ff ff ff ff 00 00 <~在此這個(gè)分組是廣播分組,因此可能被過濾
0021£L0la08060001
0800060400010000
0021a0COs80108
000000000000CO38
0104000000000000
0000000000000000
00000000
===============以下的分組已被標(biāo)記為ACCEPT_ENCRYPT
OutgoingData ACCEPT—ENCRYPT <LPP>PMIHPDS</IiPP>
Fragmentation-FALSE CopylP&EHeader: ChangeProtocol
ChangeSizelnlPHeader CreateUDPHeader CreateTunnelHeader
getserial()19216818
c0a80108
getSerial: c0a80108 getserial()19216814 c0a80104
getSerial: c0a80104
Getting key: 2:1 <~在此,該密鑰必須被從密鑰庫取回
23failed to open file for reading 0x41400a08retr丄eve key fi:om fault
creating request: 2:1
$ <:lpp>pmihpds</:lpp;
0004e2d7329c00Oe
a614le8e08060001
08000604000200Oe
3614le8eCOa80164
0004e2d7329cCO38
0165000000000000
0000000000000000
00000000
Incoming:11 ACCEPT
checking response to 12
sizeof unsigned long long: 8
key was found on fault responsesize- 58
key found had UID: 23
key found had offset: 10
key found had scpcrc: 7318349394477056
key found had length: 825229312
copying key
前述的調(diào)試輸出語句默認(rèn)地被無效,但是仍然存在于代碼中以供 開發(fā)者查看。出于性能原因,這些輸出語句在最終系統(tǒng)中被抑制。
在緊跟實(shí)際分組的數(shù)據(jù)段之后放置白噪聲隧道頭部,并且對(duì)整個(gè) 數(shù)據(jù)段進(jìn)行加密、使數(shù)據(jù)頭部保持不變以便傳播是無法工作的,這是
因?yàn)門CP協(xié)議在其協(xié)議頭部中沒有指示數(shù)據(jù)凈荷長度的字段。這意 味著無法檢測分組末尾是否存在另一頭部,或者在另一端的應(yīng)用是否 可忽略所附的頭部。相反,本系統(tǒng)將整個(gè)分組(不論協(xié)議如何)封裝 成新的定制的UDP分組,這是因?yàn)閁DP協(xié)議的確具有規(guī)定凈荷帶有 多少數(shù)據(jù)的字段,因而允許可檢測的附加的頭部。僅使用讀取、處理 和寫入被全部一次進(jìn)行的"傳送器"線程就將ping的時(shí)間降低為不易 察覺的(在LAN上通常為0ms到1ms)。線程模型將CPU使用率降 低到5~7%。而且,為了避免所有網(wǎng)絡(luò)流量經(jīng)過隧道,Berkeley網(wǎng)絡(luò)過濾器被應(yīng)用于對(duì)分組的讀取,其過濾掉外部網(wǎng)卡上的客戶端系統(tǒng)的
MAC地址。
關(guān)于密鑰庫,為了避免不同處理器的數(shù)據(jù)類型大小的差異引起的 問題(例如64位AMD CPU與32位Intel CPU。在C語言中在64 位機(jī)器上聲明無符號(hào)長整型創(chuàng)建64比特?cái)?shù);在32位機(jī)器上相同數(shù)據(jù) 類型聲明被編譯為32比特值。當(dāng)這兩個(gè)機(jī)器試圖通信時(shí)會(huì)引起一些 問題。)聲明無符號(hào)長長整型;這樣不論平臺(tái)如何均強(qiáng)制為64比特 數(shù)據(jù)類型。
安裝過程
通過完全安裝選項(xiàng),為使用Fedora Core 4的Linux機(jī)器安裝了 原型系統(tǒng)。很多默認(rèn)的Linux配置出于安全原因不允許常規(guī)的用戶直 接訪問數(shù)據(jù)鏈路層。這些應(yīng)用需要被運(yùn)行作為根的(root)或虛擬的 (pseudo)。
原型系統(tǒng)的要求如下
最少5臺(tái)計(jì)算機(jī)
-1臺(tái)計(jì)算機(jī)用作密鑰庫(帶有Linux)
-2臺(tái)計(jì)算機(jī)用作網(wǎng)守(在測試中使用64位AMD體系結(jié)構(gòu))
-配置有Linux (在測試設(shè)置中使用Fedora Core 4 )
-安裝了 Libnet庫(libnet.tar.gz )
-安裝了 Libpcap庫(libpcap-0.9.3.tar.gz )
誦安裝了 QT庫(作為qt誦xll-opensource畫desktop-4.0.0.tar.gz 被包括在提交中)
-2個(gè)網(wǎng)卡 -2臺(tái)計(jì)算機(jī)透明地使用該隧道
-這些系統(tǒng)可以;故配置任何操作系統(tǒng),并且使用任何應(yīng)用。
-配置為在局域網(wǎng)上工作
-在測試設(shè)置中,網(wǎng)絡(luò)MTU被設(shè)定為1300字節(jié) 國使用DRTCP021.exe在Windows機(jī)器上設(shè)置MTU,或者在linux中進(jìn)行man ifconfig以設(shè)定MTU。
Linux機(jī)器在使用ifconfig設(shè)定MTU之后不需要重啟。 在網(wǎng)守機(jī)器上安裝了所有必要的庫和編譯器之后,所包括的"編
譯"文件被設(shè)定為可執(zhí)行的(chmod+x ./compile ),并且執(zhí)行編譯腳
本。這將編譯所包括的源代碼,并且向人員通知系統(tǒng)所需要的任何丟
失的包。
在密鑰庫機(jī)器上安裝了所有必要的編譯器并且設(shè)置"/tem/Keys" 文件夾之后,人員將"編譯"文件設(shè)定為可執(zhí)行的(chmod +x ./compile ),并且執(zhí)行編譯腳本,以對(duì)密鑰庫正在運(yùn)行于其上的平 臺(tái)進(jìn)行編譯。此腳本還將告知人員任何其他需要安裝的。
配置過程
網(wǎng)守系統(tǒng)的所有配置都需要在網(wǎng)守源文件夾中的"Include.h"文 件中完成。
以下部分需要被修改以反映正在被密鑰庫服務(wù)器使用的IP地址 和端口 。
〃密鑰庫服務(wù)器的ip
#define KEY—VAULT—IP "192.168.1.100" 〃將服務(wù)器IP
置于此!
#define KEY—VAULT—PORT 1357 〃將配置KV的端口置 于此!(并且確保你的防火墻允許UDP分組在這個(gè)端口上外出和進(jìn)
入)
以下部分需要被修改以反映將使用網(wǎng)守的這兩個(gè)系統(tǒng)的而并不 是網(wǎng)守自身的實(shí)際MAC地址和IP。然而,實(shí)際網(wǎng)守的MAC的確需 要被包括在Berkely分組過濾語法中,其作為INCOMINGFILTER 定義中的第二MAC地址。<formula>formula see original document page 27</formula>實(shí)施中涉及的問題
在實(shí)施與密鑰庫系統(tǒng)相結(jié)合的安全隧穿系統(tǒng)時(shí)存在一些問題。該 系統(tǒng)不僅創(chuàng)建安全的點(diǎn)對(duì)點(diǎn)通信層,而且還提供用于向系統(tǒng)動(dòng)態(tài)添加 新網(wǎng)守而不必在可以開始通信之前人工地將密鑰復(fù)制給每個(gè)其他客
戶端的方式。同時(shí)其滿足驗(yàn)證要求。SSH (作為替換方案的一種安全 隧道系統(tǒng))的問題例如在于,其對(duì)于中間人攻擊是脆弱的。分發(fā)密鑰 本質(zhì)上破壞MITM攻擊的可能性;因?yàn)闆Q不發(fā)生未加密的密鑰交換, 黑客決沒有截取或欺騙獲取密鑰的機(jī)會(huì)。
白噪聲流密碼由于多方面的原因而在本發(fā)明中尤其有用。其的密 碼加密效果強(qiáng)。其是具有魯棒性的與比特?zé)o關(guān)的加密。白噪聲流密碼 提供多數(shù)其他加密方法所不具有的獨(dú)特性質(zhì),即一旦數(shù)據(jù)被加密,各 比特就完全彼此無關(guān)。這在處理通信時(shí)是非常有用的,因?yàn)楫?dāng)傳輸大 量信息時(shí)單個(gè)比特將常常被損壞,有時(shí)無法重傳輸該信息,因此當(dāng)所
使用的加密方法由于一個(gè)比特被損壞而失敗時(shí),數(shù)據(jù)丟失或者由于必 需重傳輸數(shù)據(jù)而導(dǎo)致巨大的性能沖擊。白噪聲通過比特?zé)o關(guān)而克服了 此問題。如果在以白噪聲加密時(shí)一個(gè)比特被損壞,所得的解密后的數(shù) 據(jù)仍正好是就好像其先前未被加密似的那樣。
白噪聲預(yù)先分發(fā)且預(yù)先驗(yàn)證的私鑰被用作AES會(huì)話密鑰發(fā)生 器,從而通過將其有效地移動(dòng)到客戶端,消除了用于會(huì)話密鑰生成的 基于PKI的可信第三方,并且消除了這部分的服務(wù)器開銷。因?yàn)槠涓?度隨機(jī)本質(zhì)和格外長的流,白噪聲對(duì)于此用途是理想的。其他隨機(jī)數(shù) 發(fā)生器(RNG)也可被使用,但是不那么高效。密鑰生成還可以在服 務(wù)器處發(fā)生,但是不必要地增加服務(wù)器開銷。
對(duì)于密鑰生成,分發(fā)密鑰(并非會(huì)話密鑰)優(yōu)選地均通過在密鑰 生成中使用序列號(hào)、MAC#、 NAM、或者其他唯一標(biāo)識(shí)符作為種子來 生產(chǎn)用戶/裝置特定的密鑰而被生產(chǎn)。這驗(yàn)證了一個(gè)裝置。只有該單個(gè) 裝置具有正確的通用標(biāo)識(shí)符,以能夠利用應(yīng)用密鑰(與應(yīng)用相關(guān)的密 鑰,其從不被發(fā)送,并且在該應(yīng)用內(nèi)被保護(hù)和被機(jī)器編譯)對(duì)裝置/ 人員特定的分發(fā)密鑰進(jìn)行解密。這有助于避免盜版和欺騙。因而為了分發(fā)密鑰,服務(wù)器將首先將序列號(hào)讀取實(shí)用程序作為固件補(bǔ)丁發(fā)送給
新的設(shè)備。所述新的設(shè)備將MAC弁、NAM或UID發(fā)送給服務(wù)器。接 著,服務(wù)器由該序列號(hào)生成唯一密鑰和唯一起始偏移,利用該UID、 偏移和密鑰信息更新自身,利用應(yīng)用密鑰對(duì)私鑰進(jìn)行加密,并且將具 有加密的私鑰和安全應(yīng)用的包發(fā)送給新的裝置。
以下是系統(tǒng)的各種附加特征。分組驗(yàn)證填充可以被添加到定制的 白噪聲頭部中。這可用來防止出現(xiàn)這樣的可能性,即服務(wù)器的小的可 預(yù)測拒絕響應(yīng)可能被黑客阻塞并且截取,以便顛倒地改變白噪聲流的 小的部分。此驗(yàn)證填充包含白噪聲流的與白噪聲實(shí)驗(yàn)室的CRC校驗(yàn) 碼(其消除100%可預(yù)測的分組的可能性)相互作用的另一片段。
可以提供IP分段完成(IP Fragmentation Completion )。當(dāng)前, 網(wǎng)守隧道分組分段使得分段的分組有近似1%的損壞。如果要保持 100%的透明性,則這應(yīng)該在系統(tǒng)中被校正。此分段對(duì)于將分組保持 在1500字節(jié)的以太網(wǎng)的最大傳輸大小下是必要的。如上文在配置部 分指出的,MTU應(yīng)該被設(shè)定為1300字節(jié),以便確保隧道的分段決不 發(fā)生。
隧道內(nèi)部的MAC地址和IP地址可以用分解開的分組中的隧道 分組的MAC和IP代替。這對(duì)于確保與因特網(wǎng)上的子網(wǎng)的兼容性是必 要的,因此系統(tǒng)將不僅在LAN上工作,或者工作在暴露的因特網(wǎng)連 接上,而沒有進(jìn)行網(wǎng)絡(luò)地址轉(zhuǎn)換。MAC到IP地址的綁定可被添加以 作為故障保護(hù)以雙重檢驗(yàn)真實(shí)性并監(jiān)視攻擊企圖。
實(shí)施密鑰庫協(xié)議以處理密鑰分段將允許系統(tǒng)處理大于216的最大 密鑰大小。也可以包括網(wǎng)守注冊和更新管理。這還可被用于將IP地 址動(dòng)態(tài)添加到安全系統(tǒng)列表中,使得不需要人工創(chuàng)建規(guī)則。可為系統(tǒng) 管理員添加監(jiān)視攻擊企圖或偏移同步問題的日志記錄設(shè)施,以識(shí)別惡 意活動(dòng)。
可以添加偏移重疊檢驗(yàn)以查看偏移是否被使用兩次。可以比較由 偏移代表的實(shí)際數(shù)據(jù)或者偏移本身。填充決不應(yīng)被使用多于一次,否 則其遭受統(tǒng)計(jì)分析攻擊。
29在不久的將來可受益于PKI體系結(jié)構(gòu)的一些系統(tǒng)除了隧道之外, 還可包括電子郵件服務(wù)器/客戶端,以及在野外建立安全呼叫的蜂窩電 話。由于系統(tǒng)依賴于Berkeley分組過濾類型的表達(dá)以確定所讀取的分 組的類型,此系統(tǒng)可以容易地與防火墻特征整合。
禁止未加密的流量是網(wǎng)守系統(tǒng)中的一個(gè)選項(xiàng);然而這對(duì)于大多數(shù) 環(huán)境是不實(shí)際的,因?yàn)槿藗冃枰獙㈦娮余]件發(fā)送到公司之外以及上網(wǎng) 沖浪。在一些情形中,如在醫(yī)院和軍隊(duì)、以及法人研究機(jī)構(gòu)中,對(duì)安 全性的需要可能大得以至于網(wǎng)守將放棄所有未加密的流量。
圖10示出這樣的方法,其中白噪聲預(yù)先分發(fā)并且預(yù)先驗(yàn)證的私 鑰被用作AES會(huì)話密鑰發(fā)生器,從而通過將其有效地移動(dòng)到客戶端, 消除了用于會(huì)話密鑰生成的基于PKI的可信第三方,并且消除了這部 分的服務(wù)器開銷。因?yàn)槠涓叨入S機(jī)本質(zhì)和格外長的流,因此白噪聲對(duì) 于此用途是有用的。還可采用其他隨機(jī)數(shù)發(fā)生器。密鑰生成還可以在 服務(wù)器處發(fā)生,但是不必要地增加服務(wù)器開銷。
首先,系統(tǒng)管理員將USB閃存棒(或其他介質(zhì))上的唯一私用 身份管理AES-WN (白噪聲)密鑰對(duì)分發(fā)給雇員。作為替換方案,在 制造時(shí),裝置可以具有與在制造過程中燒制在裝置中的唯一裝置標(biāo)識(shí) 符相關(guān)聯(lián)的唯一私鑰。
用戶通過兩個(gè)因素驗(yàn)證分發(fā)密鑰的持有以及具有魯棒性 的.NET 口令。這兩個(gè)因素是他們所具有的和他們所知曉的。用戶(發(fā) 送方)通過將其的分發(fā)私用AES-WN密鑰對(duì)置入U(xiǎn)SB驅(qū)動(dòng)器中而開 始。[在這種情況下分發(fā)密鑰在閃存、智能卡上等。然后,他輸入其 口令,并且被驗(yàn)證。此過程消除了對(duì)于第三方驗(yàn)證的需要。
為了發(fā)送安全文件,白噪聲("WN")分發(fā)密鑰用作隨機(jī)數(shù)發(fā)生 器,并且產(chǎn)生16字節(jié)(128比特)或32字節(jié)(256比特)的會(huì)話密 鑰以及初始化向量。會(huì)話密鑰可以是任意大小。此會(huì)話密鑰生成在客 戶端完成/由客戶端完成,并且這樣消除了會(huì)話密鑰的任何外部可信第 三方。會(huì)話密鑰生成也可以在服務(wù)器處完成,但是由于生成和安全發(fā) 送回客戶端而增大開銷。然后,此會(huì)話密鑰利用標(biāo)準(zhǔn)化的AES加密算法技術(shù)加密文件。這種方式的加密過程使得系統(tǒng)與AES相容。
如上所指出的,分發(fā)密鑰可通過使用如客戶端的MAC、序列號(hào)、 或NAM的通用標(biāo)識(shí)符作為種子而對(duì)于特定客戶端特定地生成,以使 這些分發(fā)密鑰是用戶/裝置特定的,并且防止盜版和欺騙。為了提高密 鑰安全性,當(dāng)應(yīng)用被啟動(dòng)時(shí),應(yīng)用密鑰使用裝置上的唯一序列號(hào)解密 私鑰。如果序列號(hào)是正確的,則應(yīng)用將能夠解密并使用私鑰。被盜版 或復(fù)制的密鑰將被復(fù)制到不具有該唯一序列號(hào)的另 一介質(zhì),因此應(yīng)用 密鑰將不能解密盜版的私鑰。于是,利用該密鑰加密的文件不能#1盜 版者打開或使用。如果密鑰被報(bào)告為失竊,則其可立即被無效。
在已加密該文件之后,會(huì)話密鑰自身被AES-WN分發(fā)閃存私鑰 上包含的發(fā)送方的預(yù)先分發(fā)的AES密鑰加密(與初始化向量等一起)。 接著,AES加密的-AES會(huì)話密鑰被利用WN分發(fā)驗(yàn)證密鑰再次加密, 并且被嵌入到加密文件的頭部中。封裝AES加密的-AES會(huì)話密鑰的 WN用作身份管理驗(yàn)證符,并且通過添加此較強(qiáng)的驗(yàn)證來增強(qiáng)會(huì)話密 鑰的保護(hù)。預(yù)先分發(fā)、預(yù)先驗(yàn)證的AES密鑰還可進(jìn)行第二層驗(yàn)證加 密。
此文件經(jīng)由包含所有AES-WN分發(fā)密鑰對(duì)的副本的SFI服務(wù)器/ 密鑰庫被發(fā)送到接收方。在服務(wù)器處,發(fā)送方WN私鑰的服務(wù)器的副 本解密被加密的頭部會(huì)話密鑰,除去WN驗(yàn)證加密的封裝層。服務(wù)器 將會(huì)話密鑰從在發(fā)送方的AES密鑰中被加密轉(zhuǎn)換加密 (trans-encrypt)為在接收方的AES密鑰中被加密。然后,此被轉(zhuǎn)換 加密的會(huì)話密鑰被用接收方的分發(fā)WN密鑰加密,再次封裝加密的會(huì) 話密鑰,并且成為驗(yàn)證層。其被嵌入在頭部中。該文件被發(fā)送到接收 方。
接收方通過具有匹配的分發(fā)WN密鑰并且通過知曉將其激活的 口令而被驗(yàn)證。然后,接收方能夠解密該封裝驗(yàn)證層。這留下了 AES 加密的-AES會(huì)話密鑰。其通過接收方的分發(fā)AES私鑰被解密。然后, 驗(yàn)證且解密后的會(huì)話密鑰被用于解密文檔或文件。
如圖10所示的動(dòng)態(tài)分發(fā)密鑰身份管理和數(shù)據(jù)保護(hù)系統(tǒng)的驗(yàn)證服務(wù)器和密鑰庫具有用于系統(tǒng)上的每個(gè)人員/裝置的所有物理分發(fā)的密
鑰和密鑰對(duì)的副本。密鑰對(duì)可以是WN-WN、 WN-AES、或AES-AES, 或者任何其他加密密鑰對(duì)。服務(wù)器可以具有會(huì)話密鑰生成能力,用于 為物理分發(fā)或?yàn)閯?dòng)態(tài)分發(fā)密鑰環(huán)境中的加密分發(fā)創(chuàng)建新的密鑰對(duì);或 者,預(yù)先制造的密鑰對(duì)可以被人工插入,以可由驗(yàn)證和密鑰庫服務(wù)器 使用以便實(shí)現(xiàn)額外的安全性,并且降低服務(wù)器的處理勞動(dòng)。在動(dòng)態(tài)分 發(fā)密鑰環(huán)境中,新的密鑰被加密并被遞送到在已被分發(fā)的密鑰中加密 的新節(jié)點(diǎn)。這消除了使用如Diffie-Hellman的不對(duì)稱握手技術(shù)進(jìn)行的 會(huì)話密鑰分發(fā)。此外,此模型消除了對(duì)用于創(chuàng)建和發(fā)放會(huì)話密鑰的可 信第三方(外部源)的需要。在需要時(shí),會(huì)話密鑰生成優(yōu)選地由客戶 端完成,從而使得其不作為增加服務(wù)器開銷的來源。會(huì)話密鑰生成還 可以由服務(wù)器完成,或者在服務(wù)器外部由系統(tǒng)管理員完成。
AES會(huì)話密鑰生成理想地通過優(yōu)選使用白噪聲預(yù)先分發(fā)、預(yù)先 驗(yàn)證的密鑰作為具有魯棒性的、快速的、低開銷的隨機(jī)數(shù)發(fā)生器以生 成AES密鑰,來在客戶端完成。可以使用其他隨機(jī)數(shù)發(fā)生器和數(shù)學(xué) 庫。動(dòng)態(tài)分發(fā)密鑰體系結(jié)構(gòu)基于其所具有的(裝置、閃存等上的預(yù)分 發(fā)私鑰)以及其所知曉的(遵乂人用于具有魯纟奉性的和安全的口令的微 軟".Net2,,標(biāo)準(zhǔn)的具有魯棒性的口令)驗(yàn)證被預(yù)先證明資格的用戶。這 消除了當(dāng)前對(duì)電子地建立身份所需的第三方證書授權(quán)中心的依賴性。
在動(dòng)態(tài)分發(fā)密鑰體系結(jié)構(gòu)中,服務(wù)器可使用其的將通過服務(wù)器的 安全流量從以發(fā)送方的密鑰被加密轉(zhuǎn)換加密到以接收方的密鑰被加 密的能力。由于白噪聲的速度,能夠轉(zhuǎn)錄整個(gè)傳輸(文件、會(huì)話密鑰 和向量)而對(duì)性能沒有負(fù)面影響。為了進(jìn)一步最小化在單獨(dú)使用(尤 其是)AES密鑰、或者AES-WN密鑰對(duì)、或者WN-WN密鑰對(duì)時(shí)的 服務(wù)器的計(jì)算開銷,優(yōu)選的替換方案是僅轉(zhuǎn)換加密被雙重加密的會(huì)話 密鑰自身。
會(huì)話密鑰的轉(zhuǎn)換加密過程如下。創(chuàng)建AES會(huì)話密鑰(優(yōu)選在客 戶端)。此會(huì)話密鑰用于利用標(biāo)準(zhǔn)AES算法加密文件。此被創(chuàng)建的 會(huì)話密鑰利用客戶端的預(yù)先分發(fā)的AES私鑰被加密。然后,利用預(yù)先分發(fā)的AES或WN驗(yàn)證密鑰(分發(fā)密鑰對(duì)中的另 一個(gè)密鑰)將AES 加密的會(huì)話密鑰雙重加密,從而有效地封裝和雙重加密會(huì)話密鑰,并 且增加保護(hù)的有效安全性和比特強(qiáng)度的量級(jí)。在服務(wù)器處,轉(zhuǎn)換加密 過程通過能夠利用發(fā)送方的分發(fā)驗(yàn)證密鑰的副本來解碼驗(yàn)證層,然后 用發(fā)送方的分發(fā)AES私鑰的副本對(duì)AES會(huì)話密鑰進(jìn)行解密,然后利 用接收方的預(yù)先分發(fā)的AES密鑰的副本對(duì)該對(duì)話密鑰重新加密,最 后利用接收方的預(yù)先分發(fā)的驗(yàn)證密鑰的副本對(duì)上述全部進(jìn)行加密,以 驗(yàn)證發(fā)送方。然后,被雙重加密的會(huì)話密鑰被嵌入到文件頭部中,并 且該文件被轉(zhuǎn)發(fā)給接收方。
雖然這是一個(gè)四步驟的轉(zhuǎn)換加密過程,但是服務(wù)器處理最小,因 為只有AES (或WN)會(huì)話密鑰被轉(zhuǎn)換加密。例如,128比特AES會(huì) 話密鑰的長度是16個(gè)字符或字節(jié)。整個(gè)轉(zhuǎn)換加密過程僅是操作總共 (16字節(jié)x4步驟)64字節(jié)。這對(duì)于強(qiáng)的AES密鑰甚至是可忽略的。 這通過以最小的服務(wù)器處理實(shí)現(xiàn)會(huì)話密鑰的強(qiáng)保護(hù)(決不以電子方式 在未被加密的情況下傳輸)確保具有魯棒性的安全性。
此過程改進(jìn)了在下面這樣的情境下的身份管理和數(shù)據(jù)保護(hù),即其 中政府或企業(yè)由于即使現(xiàn)有AES標(biāo)準(zhǔn)已被證明是無效的并且安全性 有問題仍必需使用現(xiàn)有AES標(biāo)準(zhǔn)而受到煩擾。這使得可立即與現(xiàn)有 標(biāo)準(zhǔn)相容,同時(shí)有利于向更強(qiáng)的加密和驗(yàn)證算法以及技術(shù)逐漸過渡。
雙私鑰系統(tǒng)
還可以使用雙令牌系統(tǒng)或雙私鑰系統(tǒng)。每個(gè)端點(diǎn)^f吏用適當(dāng)?shù)姆椒?(RNG、具有魯棒性的口令短語、使用子密鑰調(diào)度等)創(chuàng)建其自己的 私鑰。不存在密鑰傳輸,僅有初始的起始密鑰歷史(令牌)??蛻舳?和端點(diǎn)都創(chuàng)建其自己的密鑰。由于僅有先前的歷史(令牌)、偏移以 及密鑰結(jié)構(gòu),因此減少了存儲(chǔ)量。為了開始該過程,需要使用安全的 通道如SSL。這阻止了中間人攻擊。第一計(jì)算機(jī)A將其第一令牌(從 僅有它們知曉的隨機(jī)偏移開始)與共享秘密進(jìn)行異或(XOR),并且 發(fā)送到B。 B將其第一令牌(從僅有它們知曉的隨機(jī)偏移開始)與共享秘密進(jìn)行異或(XOR),并且發(fā)送到A。每個(gè)端點(diǎn)已驗(yàn)證了另一個(gè) 端點(diǎn)。每個(gè)端點(diǎn)具有另一個(gè)端點(diǎn)的起始密鑰歷史。每個(gè)端點(diǎn)產(chǎn)生了其 自己的其他各方都不知曉的初始偏移(附加的秘密)。每個(gè)端點(diǎn)產(chǎn)生 了其自己的私鑰(它們的秘密),它們從未將該私鑰共享或發(fā)送過該 私鑰。A使用其自己的發(fā)送方令牌歷史THs[從其自己的私鑰和秘密偏 移生成l創(chuàng)建令牌,并且將其與接收方令牌歷史THr在最近一次的會(huì) 話接收的實(shí)際數(shù)據(jù)塊進(jìn)行異或(XOR)。每個(gè)端點(diǎn)具有在先前會(huì)話 中發(fā)送的、其他端點(diǎn)的最近一次的令牌歷史(實(shí)際歷史數(shù)據(jù)塊);每 個(gè)端點(diǎn)具有其自己的偏移和從未被發(fā)送的秘密私鑰。 發(fā)送方s 4妄》1欠方r
Ps =發(fā)送方的私鑰 Pr =接收方的私鑰
THs-發(fā)送方令牌歷史 TH^接收方令牌歷史
發(fā)送方令牌歷史THs總是由其秘密偏移和私鑰生成。接收方令 牌歷史THr總是在先前會(huì)話中從發(fā)送方接收的實(shí)際數(shù)據(jù)塊(令牌)。
發(fā)送方THr XOR THs =此會(huì)話令牌 接收方利用其生成的THr解碼 接收方已驗(yàn)證了發(fā)送方。
接收方利用THs,然后為下一次保留該THs。 如果需要,反之(雙重)。
因而,在偏移和實(shí)際令牌歷史(數(shù)據(jù)塊)之間是動(dòng)態(tài)的。在私鑰 從不來回傳輸?shù)那闆r下進(jìn)行驗(yàn)證。每個(gè)端點(diǎn)不需要存儲(chǔ)其自己的令牌 歷史(實(shí)際上優(yōu)選地不存儲(chǔ)),因?yàn)樗鼈兛梢酝ㄟ^使密鑰退回一個(gè)會(huì) 話容量(會(huì)話TH分量的長度),為它們的私鑰和當(dāng)前偏移而再次生 成最近一次的令牌歷史。如果有人獲取令牌歷史(實(shí)際數(shù)據(jù)塊),他 們就可以確定發(fā)送方私鑰或偏移。如果有人獲取偏移,他們就可以確 定令牌歷史(數(shù)據(jù)塊,因?yàn)樗麄儾痪哂兴借€)。
34不間斷身份驗(yàn)證部分
本發(fā)明通過以下操作來管理用戶身份l)通過參照在與同一用 戶的上一次會(huì)話期間到達(dá)的密鑰中的最終點(diǎn),初始確保訪問系統(tǒng)的個(gè) 體是其所聲稱的個(gè)體。系統(tǒng)在白噪聲流密碼中存儲(chǔ)該用戶的先前會(huì)話 停止的點(diǎn),并且在該用戶的下 一 次會(huì)話開始時(shí)比較流密碼的起始點(diǎn); 2)貫穿整個(gè)會(huì)話核實(shí)用戶身份;3)確保不存在復(fù)制密鑰;以及4) 如果檢測到入侵者,則拒絕兩個(gè)用戶的訪問以保衛(wèi)該網(wǎng)絡(luò)。報(bào)告密鑰 丟失或失竊導(dǎo)致立即拒絕訪問。
該過程提供有意義且大不相同的驗(yàn)證和檢測特征。在此,關(guān)鍵是 隨著內(nèi)容被消費(fèi),WN密鑰也被消費(fèi)。因此,兩個(gè)端點(diǎn)之間的相互作 用的一個(gè)方面是對(duì)WN密鑰的索引。這個(gè)值不太可能被第三方知曉。 即使WN密鑰被竊或者是與WNL算法的知識(shí)一起被危及安全的對(duì)應(yīng) 的密鑰結(jié)構(gòu),如果沒有對(duì)應(yīng)于合法通信方之間的授權(quán)使用歷史的索引 值,則不間斷地使用WN密鑰以實(shí)現(xiàn)對(duì)所保護(hù)的數(shù)據(jù)的未授權(quán)訪問將 是不可能的。此持續(xù)的驗(yàn)證和檢測特征被稱為動(dòng)態(tài)身份核實(shí)和驗(yàn)證 [DIVA]。這位DIVA (英文意恰巧為"歌唱家")只為正確的聽眾演唱。 不僅WN密鑰的不合法用戶將被拒絕,而且合法用戶也將立刻且自動(dòng) 地受益于知曉攻擊和企圖的未授權(quán)使用WN密鑰不需要明顯地被撤 銷;它將簡單地變?yōu)閷?duì)于其合法擁有者是不可用的。這也可以利用產(chǎn) 生長的確定性隨機(jī)(或偽隨機(jī))數(shù)據(jù)流的其他非白噪聲算法實(shí)現(xiàn),或 者通過調(diào)用這些輸出的迭代或串行化而實(shí)現(xiàn)。
在被稱為動(dòng)態(tài)身份核實(shí)和驗(yàn)證的不間斷實(shí)時(shí)持續(xù)驗(yàn)證的過程中, 在非密碼意義上使用密鑰流的未使用的部分。密鑰的隨機(jī)數(shù)據(jù)塊(或 隨機(jī)數(shù)發(fā)生器)及其偏移在會(huì)話期間被周期性地發(fā)送給服務(wù)器,并且 與在服務(wù)器處生成的同一字符串進(jìn)行比較,以便證實(shí)它們是相同的且 同步的。此隨機(jī)塊(未用于加密)可被保持在存儲(chǔ)器中并且被立即比 較,或者寫回到如USB或具有寫回能力的卡之類的介質(zhì)以用于在將 來進(jìn)行比較。此片段從未被使用并且是隨機(jī)的,因此黑客根本無法猜測或預(yù)料該流的此部分。僅用于在服務(wù)器和客戶端之間的比較的密鑰 流的未使用的段可以是連續(xù)的(在加密后使用的密鑰的下一段)、向 前跳轉(zhuǎn)的隨機(jī)位置、或者根據(jù)應(yīng)用于密鑰流的該未使用的部分的函數(shù) 而被抽出的數(shù)據(jù)樣本。白噪聲是確定性的,這意味著其雖然是被識(shí)別 的最隨機(jī)的數(shù)據(jù)源,但是如果兩個(gè)端點(diǎn)具有相同的密鑰結(jié)構(gòu)和偏移, 則這兩個(gè)端點(diǎn)可以再次產(chǎn)生相同的隨才幾流。
對(duì)于基于物理的可移動(dòng)密鑰如USB閃存驅(qū)動(dòng)器、存儲(chǔ)卡以及棒、 智能卡等的驗(yàn)證,目前沒有可用于通過客戶端計(jì)算機(jī)從服務(wù)器對(duì)外部 USB裝置和組件進(jìn)行枚舉和不間斷存在檢測,以確定其存在的標(biāo)準(zhǔn)或 有效協(xié)議。可靠的存在確定對(duì)于防止欺騙和其他安全性破壞技術(shù)是關(guān) 鍵的。對(duì)于初始和不間斷客戶端驗(yàn)證,能夠檢驗(yàn)如MAC號(hào)和序列號(hào) (以及任何其他唯一標(biāo)識(shí)符)的標(biāo)識(shí)符是重要的。這是多因素驗(yàn)證中 的一個(gè)因素(所具有的和所知曉的)。
優(yōu)選的不間斷USB裝置/設(shè)備驗(yàn)證技術(shù)的 一個(gè)示例是偏移重疊檢 驗(yàn)。在此情境下,其是正在被相互比較的偏移。示例
客戶端側(cè)
1) 偏移械 沒定為100
2) 將大小為200的數(shù)據(jù)A進(jìn)行加密,并且將偏移增加200
3) 發(fā)送該數(shù)據(jù)
4 )偏移現(xiàn)在^皮設(shè)定為300
5)將大小為300的數(shù)據(jù)B進(jìn)行加密,并且將偏移增加300 6 )偏移現(xiàn)在械z沒定為600
服務(wù)器側(cè)
1) 由于網(wǎng)絡(luò)擁塞,數(shù)據(jù)B在數(shù)據(jù)A之前到達(dá)
2) 服務(wù)器識(shí)別出偏移在前面,但是由于此流從未被使用,所以 這是可以接受的
3) 數(shù)據(jù)A到達(dá),由于使用的偏移低于至今為止所用的最高偏移, 所以服務(wù)器識(shí)別出可能存在問題4)服務(wù)器檢驗(yàn)重疊100 + 200-300, 300 + 300 = 600,沒有重
疊!
在一個(gè)的確發(fā)生重疊的示例中,大小為100的數(shù)據(jù)A在偏移100 處被加密,然后大小為100的數(shù)據(jù)B在偏移150處被加密。100到200 在偏移從150到200與150到250重疊(50個(gè)字節(jié)重疊)將用信號(hào)指 示有人正在企圖篡改系統(tǒng)。
可有效使用的修改的或作為替換的USB存在技術(shù)包括將密鑰流 的各個(gè)比特一直發(fā)送到服務(wù)器,以在服務(wù)器處驗(yàn)證和證實(shí)偏移與客戶 端的相同密鑰對(duì)的比特和偏移同步并且相同。也可以使用MAC號(hào)、 序列號(hào)和其他唯一標(biāo)識(shí)符。可以編程為只要發(fā)生動(dòng)作就進(jìn)行該操作。 偏移可以被增大,以便反映和繞過用于不間斷會(huì)話驗(yàn)證的比特,使得 密鑰流的這些比特決不被重復(fù)和使用。
類似的過程可以用于信用卡。差別在于,實(shí)際上傳遞隨機(jī)數(shù)據(jù)段, 并且服務(wù)器和客戶端(智能卡)兩者實(shí)際上被用一千字節(jié)的數(shù)據(jù)段更 新。在成功比較相同的數(shù)據(jù)塊之后,該過程通過從密鑰流的下一未使 用的片段復(fù)制回新鮮數(shù)據(jù)段,為下一交易或連續(xù)驗(yàn)證進(jìn)行設(shè)置。此差 別就像硬幣的兩面-一面僅檢驗(yàn)被保存的偏移,另一面實(shí)際上檢驗(yàn)由 那些偏移例如偏移1222285加上下一個(gè)lk代表的數(shù)據(jù)。然后,加1 以便為用于核實(shí)的下一個(gè)隨機(jī)數(shù)據(jù)段設(shè)置下一個(gè)偏移。只要需要時(shí),
便可調(diào)用此操作。
數(shù)據(jù)庫具有用戶的人口統(tǒng)計(jì)信息,諸如賬號(hào)、偏移值、以及指向
白噪聲的密鑰參考。例如,用戶用他的智能卡進(jìn)行購買。智能卡具有 唯一賬號(hào),其也被存儲(chǔ)在數(shù)據(jù)庫中。在這個(gè)帳號(hào)上有若干信用卡,例 如Visa、萬事達(dá)和美國運(yùn)通。對(duì)于智能卡上的每個(gè)信用卡,有與其相 對(duì)應(yīng)的lk隨機(jī)數(shù)據(jù)段。
交易被如下執(zhí)行。在步驟l中,刷智能卡。在步驟2中,用戶被 要求輸入其口令。在步驟3中,如果口令有效,則智能卡號(hào)引出數(shù)據(jù) 庫中的用戶的全部信息。該信息包括人口統(tǒng)計(jì)信息、偏移值、以及密鑰參考。同時(shí),lk數(shù)據(jù)段被從智能卡上傳到服務(wù)器上的某個(gè)地方。在 從數(shù)據(jù)庫中被引出之后,偏移值和密鑰參考被加載到白噪聲,以便生
成1024字節(jié)的隨機(jī)數(shù)據(jù)。(步驟5) —旦lk的隨機(jī)數(shù)據(jù)被生成,它 們就被存儲(chǔ)在服務(wù)器上。(步驟6)然后,在步驟6中由白噪聲生成 的lk數(shù)據(jù)以及在步驟3中從智能卡上傳的lk數(shù)據(jù)被進(jìn)行比較。(步 驟7)如果它們匹配,則交易開始。否則,交易被拒絕。(步驟8) 在完成交易之后,偏移值增加1024字節(jié)。數(shù)據(jù)庫被用新的偏移值更 新。并且,信用卡上的收支需要被更新。(步驟IO)同時(shí),新的偏移 值和密鑰文件被送回白噪聲,以生成新的隨機(jī)數(shù)據(jù)段。從由新的偏移 指向的位置開始,拾取新的1024字節(jié)隨機(jī)數(shù)據(jù)。(步驟11)然后, 新的lk數(shù)據(jù)塊被送回USB芯片,并且改寫舊的lk數(shù)據(jù)塊。(步驟 12)現(xiàn)在準(zhǔn)備好進(jìn)行下一次交易。
動(dòng)態(tài)分發(fā)密鑰系統(tǒng)優(yōu)選使用具有魯棒性的口令(所知曉的)。用 戶忘記或丟失其口令并不罕見,對(duì)于此身份管理范例的不間斷使用來 說取回口令是必需的,以便用戶可以繼續(xù)被驗(yàn)證并且能夠取回加密的
信息或文件。存在兩種主要的用于恢復(fù)口令同時(shí)保持用戶匿名的技 術(shù)。1)在系統(tǒng)初始化和使用時(shí),用戶沒有使用個(gè)人信息,而是使用 作為用戶的秘密的若干一般問題和回答來注冊其密鑰。然后,如果需 要,則服務(wù)器可以在將來重新驗(yàn)證并且安全地重新分發(fā)此口令。2) 用戶利用唯一分發(fā)密鑰、應(yīng)用密鑰和一般口令訪問安全應(yīng)用和服務(wù)。 用戶改變其口令。接著,他們的新口令被利用應(yīng)用密鑰/私鑰進(jìn)行加密, 并且安全地存儲(chǔ)在用戶的裝置/計(jì)算機(jī)或者可移除裝置中。在忘記口令 的情況下,加密后的口令可以被發(fā)送到服務(wù)器,并且用戶被重新驗(yàn)證, 服務(wù)器可以重新發(fā)放用于該用戶的、與他們的物理分發(fā)私鑰相關(guān)聯(lián)的 另一默認(rèn)口令。其將以加密狀態(tài)被發(fā)送給用戶。
密鑰創(chuàng)建的擾動(dòng)方法
在創(chuàng)建保護(hù)數(shù)據(jù)和管理身份的安全系統(tǒng)時(shí),密鑰創(chuàng)建、存儲(chǔ)和分 發(fā)總是重要的需要考慮的事項(xiàng)。白噪聲密鑰是多功能的。其一個(gè)方面是,它們是非常高效的確定性流隨機(jī)數(shù)發(fā)生器。僅利用內(nèi)部密鑰結(jié)構(gòu) 的知識(shí)以及偏移,兩個(gè)端點(diǎn)就可重新創(chuàng)建相同的流段(令牌)。在分 發(fā)密鑰系統(tǒng)中,每個(gè)端點(diǎn)具有預(yù)先分發(fā)的密鑰。不傳輸密鑰信息而僅 傳輸偏移,每個(gè)端點(diǎn)可重新創(chuàng)建從未被創(chuàng)建或傳輸?shù)南嗤拿荑€段 (令牌)。如此,這些驗(yàn)證密鑰段不能被闖入者猜測或破解。取得驗(yàn) 證令牌并不是能夠破解實(shí)際密鑰的足夠的剽竊,在該密鑰中這些令牌 僅僅是微不足道的與比特?zé)o關(guān)的段。
由于在服務(wù)器和客戶端裝置兩者的密鑰存儲(chǔ)空間、計(jì)算開銷、以 及覆蓋區(qū)的大小都被最小化,因此白噪聲密鑰是實(shí)現(xiàn)此的優(yōu)選方法。 對(duì)于網(wǎng)絡(luò)上的每個(gè)人員或裝置,少量的內(nèi)部密鑰信息和偏移生成龐大 的高度隨機(jī)的密鑰流,并且最小化對(duì)長的密鑰的存儲(chǔ)要求。密鑰分發(fā)
以如下幾種方式之一發(fā)生
-密鑰被物理地給予客戶端/服務(wù)器
—利用裝置通用識(shí)別號(hào)如MAC^、序列號(hào)、NAM(蜂窩電話) 將分發(fā)密鑰制造(燒制或銘刻)在裝置上,以使密鑰與具體裝置相關(guān) 聯(lián)以便實(shí)現(xiàn)密鑰私密性
—對(duì)于可容易擴(kuò)展的安全網(wǎng)絡(luò)或身份管理方案,分發(fā)密鑰與具
體裝置相關(guān)聯(lián),并且在應(yīng)用密鑰中被加密地電子返回到裝置或人員,
-所有端點(diǎn)所具有的一般應(yīng)用密鑰調(diào)度通過會(huì)話密鑰的安全交 換被"擾動(dòng),,以創(chuàng)建唯一的用戶/裝置特定的密鑰,其中所述會(huì)話密鑰被 用于算法密鑰調(diào)度,以創(chuàng)建端點(diǎn)使用的唯一的確定性密鑰。此提取技 術(shù)意味著由端點(diǎn)使用的密鑰決不被發(fā)送。算法密鑰調(diào)度是攙有隨機(jī)比 特的一連串的子密鑰結(jié)構(gòu)。
密鑰生成的擾動(dòng)方法的一個(gè)示例如下
密鑰生成技術(shù)
密鑰K是通過安全方法傳輸?shù)臅?huì)話密鑰。子密鑰SK^…SKn是 已被預(yù)先分發(fā)給端點(diǎn)的算法密鑰調(diào)度。每個(gè)端點(diǎn)和服務(wù)器具有相同的 算法密鑰調(diào)度,其包括攙有隨機(jī)化的比特的各種長度的n個(gè)子密鑰。密鑰調(diào)度可以隨應(yīng)用的不同而被修改。不同密鑰調(diào)度的幾乎無窮盡的 陣列可以被用于在不同應(yīng)用之間添加更高級(jí)別的可變性。服務(wù)器通過
安全過程(SSL、 Diffie-Helman等)向端點(diǎn)A發(fā)送會(huì)話密鑰K。偏移 與密鑰創(chuàng)建無關(guān)。對(duì)于加密使用,偏移由應(yīng)用管理以防止密鑰段被重 新使用。對(duì)于DIVA的身份管理、檢測和使用,通過過程或公式從分 發(fā)密鑰K值確定偏移。例如,將128比特(16字節(jié))密鑰K分為8 個(gè)2字節(jié)的片段并且對(duì)這些片段進(jìn)行異或,以創(chuàng)建被壓縮/減小的偏移 值。
i) 從偏移P開始,將會(huì)話密鑰K和子密鑰1 (SKJ的相應(yīng)比特 進(jìn)行異或,直到該子密鑰被完全處理
ii) 在SK^皮擾動(dòng)之后,向右偏移,并且從P-1開始,以相同方 式處理SK2,直到完成
iii) 在SK2被擾動(dòng)之后,向右偏移,并且從P-2開始,以相同方
式處理SK;p直到完成
iv) 重復(fù)上述處理,直到所有的SKn密鑰都以這種方式被擾動(dòng) 已通過擾動(dòng)子密鑰結(jié)構(gòu)調(diào)度從被傳輸?shù)臅?huì)話密鑰K創(chuàng)建唯一白
噪聲密鑰。通過將(在垂直方向上)從不同的偏移開始的SK^到SKn 的相應(yīng)比特進(jìn)行異或,創(chuàng)建將被使用的密鑰流。參照圖12 了解密鑰 生成過程。此過程獲得的性能結(jié)果是能夠創(chuàng)建龐大、高度隨機(jī)的密鑰 流而同時(shí)最小化裝置或端點(diǎn)上所要求的覆蓋區(qū)/存儲(chǔ)空間。其還將需要 被傳輸?shù)拿荑€信息K的量最小化為如今所使用的較小大小的密鑰長 度。
以這種方式,子密鑰已被擾動(dòng)以創(chuàng)建不能被猜測也不能被破解的 密鑰,同時(shí)使白噪聲密鑰與其他密碼或密鑰選項(xiàng)的覆蓋區(qū)大小相同或 相似。每個(gè)實(shí)施可以具有唯一的密鑰調(diào)度。然后,密鑰調(diào)度已被擾動(dòng) 為唯一的白噪聲實(shí)施,并且準(zhǔn)備好使用。這已經(jīng)實(shí)現(xiàn)了若干種效果。 中間人可以具有分發(fā)密鑰調(diào)度,但是決無法知曉繼而生成唯一端點(diǎn)密 鑰的偏移或者會(huì)話密鑰。此技術(shù)還簡化了制造和存儲(chǔ)問題(例如在 SCADA環(huán)境中),并且仍能夠生成唯一密鑰。通用標(biāo)識(shí)符擾動(dòng)密鑰創(chuàng)建方法 (具有以及不具有口令)
將存在這樣的情境,其中終端用戶將在使用基于軟件狗(doiigle ) 的密鑰(外部外圍裝置如USB閃存或類似的RSA驗(yàn)證軟件狗)與不 要求用戶/端點(diǎn)具有額外物理裝置之間找到平衡。在這種情境下,裝置 /端點(diǎn)上的密鑰調(diào)度可以被擾動(dòng)以創(chuàng)建唯一密鑰,通過使用裝置/端點(diǎn) 特定的標(biāo)識(shí)符如MAC或NAM號(hào)輸出唯一密鑰流。該號(hào)碼:帔讀取, 并且在需要時(shí)通過使該號(hào)碼通過單向函數(shù)而對(duì)其進(jìn)行修改,并且此結(jié) 果被用于以上面說明的方式擾動(dòng)裝置/端點(diǎn)密鑰調(diào)度,以創(chuàng)建具有附加 抽象層的裝置特定的密鑰。此外,在存在人們相互作用的裝置或端點(diǎn) 處,此技術(shù)也可部署使用口令(私鑰僅被用戶知道)和通用標(biāo)識(shí)符號(hào), 以便然后擾動(dòng)密鑰調(diào)度。應(yīng)注意,端點(diǎn)和服務(wù)器必須使用安全密鑰交 換方法,以將這些密鑰分發(fā)給其他端點(diǎn)并且相互分發(fā)這些密鑰以便進(jìn) 行通信。應(yīng)注意,盡管如果沒有使用具有魯棒性的口令,口令的使用 可能是最弱的安全鏈接,但是通過使用DIVA及其連續(xù)驗(yàn)證和檢測能 力,任何安全性擔(dān)憂都被減輕。
防止中間人攻擊(混合以及其他方式)
上述技術(shù)通過使用傳統(tǒng)PKI或其他安全分發(fā)機(jī)構(gòu),以安全地傳 輸中間人無法知曉或無法知情的偏移或密鑰信息,來防止中間人攻 擊。動(dòng)態(tài)身份核實(shí)和驗(yàn)證也可防止中間人攻擊,而不需要交換這種密 鑰和/或偏移,或者不需要使用PKI/SSL/Diffie-Helman來傳輸密鑰或 偏移信息。這是因?yàn)椴徽撝虚g人捕獲怎樣的信息,他也不具有用戶或 裝置的正確的物理密鑰。如果MiM具有物理的偷竊的密鑰,則被危 及安全的端點(diǎn)不具有登錄該系統(tǒng)的密鑰(因此這并非中間人攻擊)。 如果密鑰物理丟失,則失竊/丟失被報(bào)告,并且系統(tǒng)管理員禁止該賬號(hào)。 如果唯一密鑰信息被復(fù)制到不同的裝置,則由于需要正確的通用標(biāo)識(shí) 符來解密和使用該密鑰,因此該密鑰將不起作用。仍然假設(shè)MiM閣入者可以登錄該系統(tǒng),由于具有不同偏移的(不同步的)兩個(gè)相同的
密鑰將被檢測到并且被禁止,所以DIVA將識(shí)別出并處理這種情況的 出現(xiàn)。
中間人攻擊假定端點(diǎn)A和B同時(shí)在該系統(tǒng)上,并且闖入者C捕 獲被傳輸?shù)男畔⒉⑶沂蛊涓淖兎较?,從而C對(duì)于端點(diǎn)A偽裝其是B, 并且對(duì)于端點(diǎn)B偽裝其是A。在其中只有端點(diǎn)、或客戶端和代理服務(wù) 器具有DIVA密鑰的單方面DIVA部署中,闖入者C可以繞過A和B (在系統(tǒng)外部)以入侵網(wǎng)站或服務(wù)器,并且直接竊取登錄信息、密鑰、 以及其他安全性度量。接著,他們可以作為不同的人/裝置登錄進(jìn)入站 點(diǎn)。這是一種不同類型的安全漏洞,其需要通過諸如防火墻、入侵檢 測、加密用戶信息的存儲(chǔ)等其他手段處理,或者對(duì)于服務(wù)器/站點(diǎn)自身, 需要利用DIVA并在服務(wù)器/站點(diǎn)和端點(diǎn)/客戶端之間創(chuàng)建雙向驗(yàn)證關(guān) 系來處理。這種攻擊途徑不是中間人攻擊,但是盡管如此,仍可被 DIVA識(shí)別并處理。
在上述情景中,DIVA用戶能夠拒絕(否定)站點(diǎn)上的購買或活 動(dòng),這是因?yàn)樵谄銬IVA密鑰上或在監(jiān)視這種活動(dòng)的代理服務(wù)器上沒 有針對(duì)這種情況的登錄的活動(dòng)。破壞仍可識(shí)別,并且建立該客戶端的 拒絕或否定能力。
動(dòng)態(tài)身份核實(shí)和授權(quán)[DIVA
動(dòng)態(tài)身份核實(shí)和授權(quán)以及其起到的不同功能的基本特征是生成 和比較從未被創(chuàng)建或傳輸?shù)牧钆?密鑰段)的能力。這些和其他類似 的DIVA技術(shù)對(duì)于身份核實(shí)、歷史日志記錄和拒絕或不可否定、基于 因特網(wǎng)的安全支付拓樸結(jié)構(gòu)以及安全站點(diǎn)訪問、SCADA拓樸結(jié)構(gòu)等 (但不限于這些)是理想的。
DIVA包含以下的能力
A.狀態(tài)雙向和單向驗(yàn)證
雙向驗(yàn)證意味著每個(gè)端點(diǎn)可以請求和發(fā)送驗(yàn)證數(shù)據(jù)段或偏移。這 意味著每個(gè)端點(diǎn)具有密鑰生成能力。單向驗(yàn)證意味著只有一個(gè)端點(diǎn)
42(服務(wù)器/站點(diǎn))具有密鑰生成能力。然后,服務(wù)器將后續(xù)的尚未被使 用的密鑰流數(shù)據(jù)段寫回端點(diǎn)(并且安全地或以其他方式遞送此數(shù)據(jù) 塊)。在下一次會(huì)話中,服務(wù)器/站點(diǎn)比較端點(diǎn)處的實(shí)際數(shù)據(jù)與它們可 使用端點(diǎn)的密鑰結(jié)構(gòu)和當(dāng)前偏移而生成的數(shù)據(jù)。
目前, 一旦登錄時(shí)就發(fā)生網(wǎng)絡(luò)用戶的驗(yàn)證。當(dāng)闖入者入侵到"安
全"網(wǎng)絡(luò)中時(shí),闖入者可以自由地到處漫步而不被注意。利用DIVA, 密鑰流在整個(gè)會(huì)話中被輪詢,以連續(xù)地識(shí)別和核實(shí)正確的用戶位于網(wǎng) 絡(luò)上??梢越Y(jié)合會(huì)話密鑰的傳輸、時(shí)間戳的使用等,以增加初始網(wǎng)絡(luò) 訪問(登錄)的安全性,然后DIVA由此繼續(xù)驗(yàn)證。
B. 狀態(tài)檢測
在端點(diǎn)和服務(wù)器之間,密鑰流的偏移必須保持同步。如果闃入者 設(shè)法竊取密鑰或者獲得網(wǎng)絡(luò)訪問,則服務(wù)器、合法端點(diǎn)、以及閣入者 之間的偏移變?yōu)椴煌健V淮嬖趦煞N后果l)合法擁有者首先使用 其密鑰/卡,并且隨機(jī)密鑰數(shù)據(jù)段(或偏移)在合法卡上被更新。于是, 竊賊使用竊取的密鑰/卡,但是由于lk數(shù)據(jù)段(或偏移)在失竊的密 鑰/信用卡與服務(wù)器之間并不匹配,因此這不會(huì)繼續(xù)進(jìn)行下去。帳戶立
即被禁止。2)竊賊首先成功使用竊取的密鑰/卡。當(dāng)下一次卡持有者 使用其卡時(shí),交易被拒絕,這是因?yàn)槭Ц`的卡已被新的偏移或數(shù)據(jù)段
更新,服務(wù)器數(shù)據(jù)庫上的偏移而不是合法卡上的數(shù)據(jù)段或偏移已被更 新。盜竊已被識(shí)別出。帳戶立即被禁止。由于前次交易,因此知曉盜 竊發(fā)生在何處。
C. 自動(dòng)撤銷
固有的入侵檢測僅僅繼續(xù)進(jìn)行,以監(jiān)視偏移和密鑰段(令牌)總 是保持同步。這是偏移號(hào)或隨機(jī)數(shù)據(jù)段的簡單比較。沒有任何人的干 預(yù),檢測出立即失去同步的偏移,然后帳戶被凍結(jié),并且該密鑰被拒 絕網(wǎng)絡(luò)訪問。不要求轉(zhuǎn)到外部各方、撤銷列表等。系統(tǒng)管理員可以補(bǔ) 救或處理任何情形,而不用擔(dān)憂持續(xù)的或不間斷的不法行為。
43D.授權(quán)/DRM
通過以與驗(yàn)證相同的方式使用密鑰流的不同部分來實(shí)現(xiàn)許可和使用權(quán)限的分配和監(jiān)視。
雖然上文已討論了多個(gè)示例性的方面和實(shí)施例,但是本領(lǐng)域技術(shù)人員可以認(rèn)識(shí)到其的一些修改、置換、增加和其子組合。因此,本發(fā)明將包括落入本發(fā)明真實(shí)精神和范圍內(nèi)的所有這樣的修改、置換、增加和其子組合。通過改變密鑰創(chuàng)建和存儲(chǔ)、驗(yàn)證、檢測和撤回的不同
組成部分在客戶端、服務(wù)器、人員、裝置或代理服務(wù)器之間的出現(xiàn)位置,可實(shí)現(xiàn)多種顯而易見的拓樸結(jié)構(gòu)配置。單個(gè)組成部分可以被用于附加的安全抽象層的其他網(wǎng)絡(luò)拓樸結(jié)構(gòu)中。
權(quán)利要求
1. 一種對(duì)第一源計(jì)算機(jī)和第二目的地計(jì)算機(jī)之間的通信進(jìn)行加密的方法,其中所述源和目的地計(jì)算機(jī)各自分別具有第一和第二私用分發(fā)密鑰,所述第一和第二私用分發(fā)密鑰中的每一個(gè)與第一和第二唯一私鑰標(biāo)識(shí)符關(guān)聯(lián),其中密鑰存儲(chǔ)服務(wù)器具有所述第一和第二私用分發(fā)密鑰,所述第一和第二私用分發(fā)密鑰中的每一個(gè)與所述第一和第二唯一私鑰標(biāo)識(shí)符相關(guān)聯(lián),所述方法包括i)所述源計(jì)算機(jī)向所述密鑰存儲(chǔ)服務(wù)器發(fā)送對(duì)會(huì)話密鑰的請求;ii)所述密鑰存儲(chǔ)服務(wù)器識(shí)別所述源計(jì)算機(jī),并且找到其關(guān)聯(lián)的私用分發(fā)密鑰;iii)所述密鑰存儲(chǔ)服務(wù)器為由唯一會(huì)話標(biāo)識(shí)符標(biāo)識(shí)的所關(guān)心的會(huì)話生成唯一會(huì)話密鑰;iv)所述密鑰存儲(chǔ)服務(wù)器用所述源計(jì)算機(jī)私用分發(fā)密鑰對(duì)會(huì)話密鑰進(jìn)行加密,并將其與會(huì)話標(biāo)識(shí)符一起發(fā)送到所述源計(jì)算機(jī);v)所述源計(jì)算機(jī)使用所述源計(jì)算機(jī)私用分發(fā)密鑰對(duì)所述會(huì)話密鑰進(jìn)行解密,并且使用所述會(huì)話密鑰對(duì)所述通信進(jìn)行加密,所述通信與所述會(huì)話標(biāo)識(shí)符一起被發(fā)送到目的地計(jì)算機(jī);vi)所述目的地計(jì)算機(jī)接收所述加密的通信和會(huì)話標(biāo)識(shí)符,并且向所述密鑰存儲(chǔ)服務(wù)器發(fā)送對(duì)與所述會(huì)話標(biāo)識(shí)符相關(guān)聯(lián)的會(huì)話密鑰的請求;vii)所述密鑰存儲(chǔ)服務(wù)器從所述會(huì)話標(biāo)識(shí)符確定其是否具有相應(yīng)的會(huì)話密鑰,以及其是否具有所述目的地計(jì)算機(jī)的私用分發(fā)密鑰;viii)如果所述密鑰存儲(chǔ)服務(wù)器從所述會(huì)話標(biāo)識(shí)符確定其具有相應(yīng)的會(huì)話密鑰,并且具有所述目的地計(jì)算機(jī)的私用分發(fā)密鑰,則所述密鑰存儲(chǔ)服務(wù)器用所述目的地計(jì)算機(jī)的私用分發(fā)密鑰對(duì)所述會(huì)話密鑰進(jìn)行加密,并且將其發(fā)送到所述目的地計(jì)算機(jī);ix)所述目的地計(jì)算機(jī)然后使用其私用分發(fā)密鑰對(duì)所述會(huì)話密鑰進(jìn)行解密,并且使用所述解密后的會(huì)話密鑰對(duì)所述通信進(jìn)行解密。
2. 如權(quán)利要求l所述的方法,其中所述會(huì)話密鑰被利用驗(yàn)證密 鑰封裝。
3. 如權(quán)利要求l所述的方法,其中所述驗(yàn)證密鑰是白噪聲。
4. 如權(quán)利要求l所述的方法,其中硬件特定的標(biāo)識(shí)符被用作種 子和偏移以生成裝置特定的密鑰。
5. 如權(quán)利要求l所述的方法,其中所述私用分發(fā)密鑰是白噪聲 產(chǎn)生的密鑰。
6. 如權(quán)利要求l所述的方法,其中為了分發(fā)私鑰,所述服務(wù)器 從新裝置接收裝置特定的標(biāo)識(shí)符,從所述裝置特定的標(biāo)識(shí)符生成唯一 密鑰以及唯一起始偏移,利用所述唯一密鑰加密私鑰,并且將所加密 后的私鑰發(fā)送到所述新裝置。
7. 如權(quán)利要求5所述的方法,其中白噪聲分發(fā)私鑰被用作AES 會(huì)話密鑰發(fā)生器。
8. 如權(quán)利要求6所述的方法,當(dāng)加密應(yīng)用被所述新裝置啟動(dòng)時(shí), 應(yīng)用密鑰使用所述裝置特定的標(biāo)識(shí)符來解密該私鑰。
9. 如權(quán)利要求1所述的方法,其中數(shù)據(jù)被以流式方式以目的地 計(jì)算機(jī)的密鑰被加密。
10. 如權(quán)利要求1所述的方法,其中使用預(yù)先分發(fā)的AES私鑰 加密會(huì)話密鑰,然后利用預(yù)先分發(fā)的AES或WN驗(yàn)證密鑰對(duì)所述AES 加密的會(huì)話密鑰進(jìn)行雙重加密,以雙重加密該會(huì)話密鑰。
11. 如權(quán)利要求l所述的方法,其中通過比較在最后的偏移之前 的密鑰段來比較仍必須被創(chuàng)建的流的密鑰段,以驗(yàn)證用戶。
12. 如權(quán)利要求12所述的方法,其中當(dāng)如果進(jìn)行了密鑰復(fù)制, 在合法密鑰和失竊密鑰之間偏移不匹配時(shí),檢測到黑客攻擊。
13. 如權(quán)利要求13所述的方法,其中當(dāng)檢測到黑客攻擊時(shí),用 戶帳戶被撤銷。
14. 如權(quán)利要求l所述的方法,其中所述分發(fā)密鑰被用作隨機(jī)數(shù) 發(fā)生器,以生成另外的分發(fā)密鑰或會(huì)話密鑰。
15. 如權(quán)利要求l所述的方法,其中分發(fā)密鑰被用來擾動(dòng)端點(diǎn)處的預(yù)先分發(fā)的密鑰調(diào)度,以便創(chuàng)建唯一的新密鑰。
16. —種用于對(duì)第一源計(jì)算機(jī)和第二目的地計(jì)算機(jī)之間的通信進(jìn) 行加密的系統(tǒng),其中所述源和目的地計(jì)算機(jī)各自分別具有第一和第二 私用分發(fā)密鑰,所述第一和第二私用分發(fā)密鑰中的每一個(gè)與第一和第 二唯一私鑰標(biāo)識(shí)符關(guān)聯(lián),所述系統(tǒng)還包括i) 密鑰存儲(chǔ)服務(wù)器,具有所述第一和第二私用分發(fā)密鑰,所述 第一和第二私用分發(fā)密鑰中的每一個(gè)與所述笫一和第二唯一私鑰標(biāo)識(shí)符相關(guān)聯(lián);ii) 用于向所述密鑰存儲(chǔ)服務(wù)器發(fā)送對(duì)會(huì)話密鑰的請求的與所述 源計(jì)算機(jī)相關(guān)聯(lián)的裝置;m)用于識(shí)別所述源計(jì)算機(jī)并且找到其關(guān)聯(lián)的私用分發(fā)密鑰的與所述密鑰存儲(chǔ)服務(wù)器相關(guān)聯(lián)的裝置;iv )用于為由唯一會(huì)話標(biāo)識(shí)符標(biāo)識(shí)的所關(guān)心的會(huì)話生成唯一會(huì)話 密鑰的與所述密鑰存儲(chǔ)服務(wù)器相關(guān)聯(lián)的裝置;V)用于用所述源計(jì)算機(jī)私用分發(fā)密鑰對(duì)會(huì)話密鑰進(jìn)行加密,并 將其與會(huì)話標(biāo)識(shí)符一起發(fā)送到所述源計(jì)算機(jī)的與所述密鑰存儲(chǔ)服務(wù) 器相關(guān)聯(lián)的裝置;vi) 用于使用所述源計(jì)算機(jī)私用分發(fā)密鑰對(duì)所述會(huì)話密鑰進(jìn)行解 密,并且使用所述會(huì)話密鑰對(duì)所述通信進(jìn)行加密的與所述源計(jì)算機(jī)相 關(guān)聯(lián)的裝置,所述通信與所述會(huì)話標(biāo)識(shí)符一起被發(fā)送到目的地計(jì)算 機(jī);vii) 用于接收所述加密的通信和會(huì)話標(biāo)識(shí)符,并且向所述密鑰存 儲(chǔ)服務(wù)器發(fā)送對(duì)與所述會(huì)話標(biāo)識(shí)符相關(guān)聯(lián)的會(huì)話密鑰的請求的與所 述目的地計(jì)算機(jī)相關(guān)聯(lián)的裝置;viii) 用于從所述會(huì)話標(biāo)識(shí)符確定其是否具有相應(yīng)的會(huì)話密鑰, 以及其是否具有所述目的地計(jì)算機(jī)的私用分發(fā)密鑰,并且如果所述密 鑰存儲(chǔ)服務(wù)器從所述會(huì)話標(biāo)識(shí)符確定其具有相應(yīng)的會(huì)話密鑰,并且具 有所述目的地計(jì)算機(jī)的私用分發(fā)密鑰,則所述密鑰存儲(chǔ)服務(wù)器用所述 目的地計(jì)算機(jī)的私用分發(fā)密鑰對(duì)所述會(huì)話密鑰進(jìn)行加密,并且將其發(fā)送到所述目的地計(jì)算機(jī)的與所述密鑰存儲(chǔ)服務(wù)器相關(guān)聯(lián)的裝置;ix)用于然后使用其私用分發(fā)密鑰對(duì)所述會(huì)話密鑰進(jìn)行解密,并 且使用所述解密后的會(huì)話密鑰對(duì)所述通信進(jìn)行解密的與所述目的地 計(jì)算機(jī)相關(guān)聯(lián)的裝置。
全文摘要
本發(fā)明提供了一種分發(fā)密鑰加密系統(tǒng)和方法,其中密鑰存儲(chǔ)服務(wù)器通過使用唯一分發(fā)私鑰對(duì)會(huì)話密鑰進(jìn)行加密來將該會(huì)話密鑰提供給源和目的地計(jì)算機(jī),該唯一分發(fā)私鑰通過唯一私鑰標(biāo)識(shí)符與相應(yīng)源和目的地計(jì)算機(jī)相關(guān)聯(lián)。然后,目的地計(jì)算機(jī)利用其的分發(fā)私鑰解密被加密的會(huì)話密鑰,然后利用解密的會(huì)話密鑰來解密該通信。
文檔編號(hào)H04L9/14GK101479984SQ200780023813
公開日2009年7月8日 申請日期2007年4月25日 優(yōu)先權(quán)日2006年4月25日
發(fā)明者安德烈·J.·布里森, 斯蒂芬·L.·博倫 申請人:斯蒂芬·L.·博倫;安德烈·J.·布里森