專利名稱:安全網(wǎng)絡(luò)包圍區(qū)的發(fā)現(xiàn)的制作方法
安全網(wǎng)絡(luò)包圍區(qū)的發(fā)現(xiàn)
背景技術(shù):
安全性對于計(jì)算機(jī)系統(tǒng)已經(jīng)變得日益重要。企業(yè)保持許多類型的信息,比如財(cái)務(wù)信息、機(jī)密商業(yè)信息或者關(guān)于客戶和雇員的個(gè)人信息。由于許多重要的商業(yè)原因,該信息通常通過企業(yè)計(jì)算機(jī)系統(tǒng)、至少對于某些個(gè)人而言是可獲得的。但是該信息如果被未授權(quán)方訪問和誤用則可能導(dǎo)致對企業(yè)、其雇員或客戶的極大危害。為了保護(hù)企業(yè)計(jì)算系統(tǒng)中的信息,已經(jīng)提出了許多安全性技術(shù),一個(gè)這樣的方法是稱為IPsec的安全網(wǎng)絡(luò)通信協(xié)議。在IPsec中,要通信的兩個(gè)主機(jī)設(shè)備形成“安全關(guān)聯(lián)”。該安全關(guān)聯(lián)基于使用密鑰交換協(xié)議在主機(jī)之間交換的一個(gè)或多個(gè)密鑰。然后,取決于期望的安全性級別,兩個(gè)主機(jī)可以使用該密鑰來加密或驗(yàn)證在它們之間傳送的消息。在聯(lián)網(wǎng)的設(shè)置中使用IPsec的缺點(diǎn)是,加密和解密或者簽名和驗(yàn)證消息所需的加密處理可能非期望地加載主機(jī)設(shè)備的中央處理器。為了降低處理器負(fù)荷,已經(jīng)開發(fā)了網(wǎng)絡(luò)接口芯片集來卸載這些加密功能(function)。這樣的芯片集可以為每個(gè)活動(dòng)的安全關(guān)聯(lián)存儲密鑰,對于該每個(gè)活動(dòng)的安全關(guān)聯(lián)而言,包含網(wǎng)絡(luò)接口的計(jì)算機(jī)是主機(jī)。在使用具體的安全關(guān)聯(lián)將信息傳遞到網(wǎng)絡(luò)接口用于通信時(shí),芯片集可以使用適當(dāng)?shù)拿荑€來加密或簽名該信息。同樣,在接收到與安全關(guān)聯(lián)相關(guān)聯(lián)的分組時(shí),芯片集可以驗(yàn)證或解密該分組中的信息,并將這種處理的結(jié)果傳遞到網(wǎng)絡(luò)堆棧用于進(jìn)一步處理。盡管這種處理在某些場景中可能是有用的,但是現(xiàn)有的芯片集在它們可以同時(shí)保持的活動(dòng)的安全關(guān)聯(lián)的數(shù)量方面受到限制。例如,大企業(yè)中的服務(wù)器可能保持了 10000個(gè)安全關(guān)聯(lián)的量級,但是芯片集可能能夠保持僅支持1000個(gè)安全關(guān)聯(lián)的量級的信息。為了擴(kuò)大網(wǎng)絡(luò)接口的芯片集可以支持的安全關(guān)聯(lián)的數(shù)量,已經(jīng)提出了形成網(wǎng)絡(luò)“包圍區(qū)(enclave)”。根據(jù)此提議,每個(gè)包圍區(qū)可以具有它自己的密鑰,該密鑰用于以可預(yù)測方式產(chǎn)生涉及該包圍區(qū)中的各設(shè)備的安全關(guān)聯(lián)的密鑰。包圍區(qū)密鑰用于以可預(yù)測方式產(chǎn)生該包圍區(qū)內(nèi)的各服務(wù)器的密鑰。根據(jù)這些密鑰,服務(wù)器然后可以在安全關(guān)聯(lián)形成時(shí)產(chǎn)生安全關(guān)聯(lián)的密鑰。當(dāng)設(shè)備發(fā)送使用安全關(guān)聯(lián)密鑰簽名或加密的分組時(shí),該設(shè)備將標(biāo)識如何導(dǎo)出該密鑰的信息附于該分組。訪問該分組的其他設(shè)備可以在運(yùn)行中(on the fly)產(chǎn)生用于該分組的加密處理的適當(dāng)密鑰。因?yàn)橛糜诙鄠€(gè)安全關(guān)聯(lián)的任意一個(gè)的安全關(guān)聯(lián)密鑰可以根據(jù)包圍區(qū)密鑰產(chǎn)生,因此芯片集有權(quán)訪問大量安全關(guān)聯(lián)而無需大量存儲器。用于自動(dòng)密鑰產(chǎn)生的該方法可以由作為安全關(guān)聯(lián)的主機(jī)的設(shè)備或者在分組經(jīng)過主機(jī)之間時(shí)處理分組的中間設(shè)備使用,只要該中間設(shè)備有權(quán)訪問適當(dāng)?shù)陌鼑鷧^(qū)密鑰即可。
發(fā)明內(nèi)容
為了實(shí)施安全的網(wǎng)絡(luò)包圍區(qū),期望允許擔(dān)當(dāng)用于連接的主機(jī)的設(shè)備標(biāo)識與主機(jī)設(shè)備相關(guān)聯(lián)的包圍區(qū)。主機(jī)設(shè)備之間網(wǎng)絡(luò)路徑上的中間設(shè)備可用于幫助一個(gè)或多個(gè)主機(jī)設(shè)備標(biāo)識它們自身的包圍區(qū)或者另一主機(jī)設(shè)備的包圍區(qū)。中間者可以通過將信息插入至在各主機(jī)設(shè)備之間交換的分組來進(jìn)行這種標(biāo)識?!矫妫景l(fā)明涉及一種操作計(jì)算機(jī)系統(tǒng)以提供安全通信的方法。所述計(jì)算機(jī)系統(tǒng)包含通過網(wǎng)絡(luò)互連并被組織到各包圍區(qū)的多個(gè)主機(jī)設(shè)備。根據(jù)此方法,在主機(jī)設(shè)備處,經(jīng)由網(wǎng)絡(luò)接收分組。主機(jī)設(shè)備分析分組,以標(biāo)識分組中一個(gè)或多個(gè)標(biāo)記的鏈,每個(gè)標(biāo)記指示包圍區(qū)。主機(jī)然后可以基于一個(gè)或多個(gè)標(biāo)記的鏈,確定主機(jī)設(shè)備所位于的包圍區(qū)。另一方面,本發(fā)明涉及一種操作計(jì)算機(jī)系統(tǒng)以提供安全通信的方法。所述計(jì)算機(jī)系統(tǒng)包含通過網(wǎng)絡(luò)互連并被組織到各包圍區(qū)的多個(gè)主機(jī)設(shè)備。所述方法包含在網(wǎng)絡(luò)包圍區(qū)中配置的中間設(shè)備處,經(jīng)由網(wǎng)絡(luò)接收分組。在中間設(shè)備中,分析分組以確定分組是否含有請求中間設(shè)備將標(biāo)記置于被尋址到主機(jī)的分組中的值。當(dāng)分組含有請求中間設(shè)備將標(biāo)記置于被尋址到主機(jī)的分組中的值時(shí),中間者將指示包圍區(qū)的標(biāo)記附著至被尋址到主機(jī)的至少一個(gè)分組中的字段。所指示的包圍區(qū)可以是中間者或主機(jī)的包圍區(qū)。另一方面,本發(fā)明一種涉及操作計(jì)算機(jī)系統(tǒng)以提供安全通信的方法。所述計(jì)算機(jī)系統(tǒng)包含通過網(wǎng)絡(luò)互連并被組織到各包圍區(qū)的多個(gè)主機(jī)設(shè)備。作為方法的一部分,將第一分組從第一主機(jī)設(shè)備發(fā)送到第二設(shè)備。在第一主機(jī)和第二主機(jī)之間的網(wǎng)絡(luò)路徑中耦接的一個(gè)或多個(gè)中間設(shè)備處,檢測第一分組,并且記錄第一主機(jī)的指示。將第二分組從第二主機(jī)發(fā)
送到第一主機(jī)。在一個(gè)或多個(gè)中間設(shè)備的每一個(gè)處,基于所記錄的第一主機(jī)的指示來標(biāo)識第二分組,并且將中間設(shè)備的包圍區(qū)的指示符添加到第二分組。在第一主機(jī)處,基于所述一個(gè)或多個(gè)中間設(shè)備中的中間者所添加的指示符,確定第一主機(jī)的包圍區(qū)。以上是由所附權(quán)利要求定義的本發(fā)明的非限制性概括。
不旨在按比例繪出附圖。在附圖中,在各個(gè)附圖中圖示的每個(gè)相同或近似相同的組件由相似的附圖標(biāo)記表示。為了清楚的目的,不是每個(gè)組件都會在每個(gè)圖中標(biāo)出。在附圖中
圖IA是包含多個(gè)安全包圍區(qū)的企業(yè)計(jì)算系統(tǒng)的略 圖IB是可以形成根據(jù)本發(fā)明的一些實(shí)施例的企業(yè)計(jì)算系統(tǒng)的一部分的安全包圍區(qū)的展開 圖2A是根據(jù)本發(fā)明的一些實(shí)施例的分級密鑰產(chǎn)生的示意性圖示;
圖2B是根據(jù)本發(fā)明的一些實(shí)施例的產(chǎn)生成對的包圍區(qū)密鑰的過程的流程 圖3是根據(jù)本發(fā)明的一些實(shí)施例的包圍區(qū)發(fā)現(xiàn)和通信協(xié)議的示意性圖示;
圖4A和4B在標(biāo)為A和B的點(diǎn)處連接時(shí)是操作安全包圍區(qū)中的服務(wù)器的過程的流程
圖5是根據(jù)本發(fā)明的一些實(shí)施例的操作安全包圍區(qū)中的客戶端的過程的流程 圖6是圖示根據(jù)本發(fā)明的一些實(shí)施例的操作中間設(shè)備的過程的流程 圖7是涉及中間設(shè)備和服務(wù)器之間的交互的過程的流程圖,在該交互過程期間中間設(shè)備直接從服務(wù)器接收密鑰;
圖8是涉及中間設(shè)備和服務(wù)器之間的交互的過程的流程圖,在該交互過程期間中間設(shè)備觸發(fā)安全關(guān)聯(lián)的密鑰更新(rekeying);
圖9A是根據(jù)本發(fā)明的一些實(shí)施例的服務(wù)器的簡化示意圖;以及圖9B是根據(jù)本發(fā)明的一些實(shí)施例可能存在于中間設(shè)備的網(wǎng)絡(luò)接口硬件中的存儲器結(jié)構(gòu)的略圖。
具體實(shí)施例方式本發(fā)明人已經(jīng)認(rèn)識到并領(lǐng)會可以通過改進(jìn)的密鑰管理方法來改進(jìn)安全包圍區(qū)以及支持安全包圍區(qū)的加密功能的硬件卸載??梢援a(chǎn)生并分發(fā)密鑰以允許容易的網(wǎng)絡(luò)訪問。然而,密鑰管理系統(tǒng)應(yīng)該實(shí)現(xiàn)限制每個(gè)設(shè)備接收的訪問。分級密鑰管理方法可以用于支持為不同組設(shè)備之間的通信提供不同級別的訪問的密鑰的產(chǎn)生。分級密鑰管理方法還實(shí)現(xiàn)了用于遍布企業(yè)計(jì)算機(jī)系統(tǒng)的密鑰分發(fā)的簡單機(jī)制,使得安全包圍區(qū)中的設(shè)備可以適當(dāng)?shù)靥幚砭W(wǎng)絡(luò)業(yè)務(wù)。 在一些實(shí)施例中,總的組織密鑰形成密鑰層級的頂級。根據(jù)此組織密鑰,可以產(chǎn)生用于由該組織操作的聯(lián)網(wǎng)計(jì)算機(jī)系統(tǒng)中的每對包圍區(qū)(包括與其自身配對為一對的每個(gè)包圍區(qū))的成對的包圍區(qū)密鑰。每個(gè)成對的包圍區(qū)密鑰可以在產(chǎn)生層級的下一較低級別處的密鑰時(shí)使用。在此所述的示例實(shí)施例中,在安全關(guān)聯(lián)的相對端的主機(jī)設(shè)備可以稱為“服務(wù)器”和“客戶端”。服務(wù)器產(chǎn)生用于與客戶端形成的每個(gè)安全關(guān)聯(lián)的安全關(guān)聯(lián)密鑰。為了產(chǎn)生此安全關(guān)聯(lián)密鑰,服務(wù)器可以具有服務(wù)器密鑰,該密鑰可以從該服務(wù)器的包圍區(qū)以及客戶端所位于的包圍區(qū)的成對密鑰導(dǎo)出。在所述的實(shí)施例中,無論層級的任何級別處的密鑰都被當(dāng)作安全信息。用于從層級的較高級別處的密鑰產(chǎn)生層級的較低級別處的密鑰的密鑰導(dǎo)出信息不需要被當(dāng)作安全信息。密鑰導(dǎo)出信息可以在通過網(wǎng)絡(luò)發(fā)送的消息中按不安全或相對不安全的方式傳送。結(jié)果,許多網(wǎng)絡(luò)設(shè)備有權(quán)訪問該密鑰導(dǎo)出信息。有權(quán)訪問用于產(chǎn)生具體的安全關(guān)聯(lián)密鑰的層級中的任意級別處的密鑰的設(shè)備因此可以得到對密鑰導(dǎo)出信息的訪問并產(chǎn)生安全關(guān)聯(lián)密鑰。為了減少每個(gè)設(shè)備必須保留的安全關(guān)聯(lián)密鑰的數(shù)量,較高級別的密鑰和密鑰導(dǎo)出信息可以用于動(dòng)態(tài)產(chǎn)生層級中的較低級別處的密鑰。例如,可以為包圍區(qū)內(nèi)的服務(wù)器供應(yīng)所有成對的服務(wù)器密鑰,對于所述所有成對的服務(wù)器密鑰,該包圍區(qū)是相關(guān)聯(lián)對中的一個(gè)包圍區(qū)。當(dāng)與其將形成安全關(guān)聯(lián)的客戶端的包圍區(qū)被標(biāo)識時(shí),可以從這些密鑰之一產(chǎn)生具體的安全關(guān)聯(lián)密鑰。密鑰供應(yīng)也可以動(dòng)態(tài)發(fā)生。例如,設(shè)備可以從密鑰服務(wù)器下載密鑰,響應(yīng)于使用密鑰來對分組執(zhí)行加密功能的要求,動(dòng)態(tài)供應(yīng)可以實(shí)時(shí)發(fā)生??商娲兀梢栽谛枰肮?yīng)一些或所有密鑰。當(dāng)在使用之前供應(yīng)時(shí),密鑰不時(shí)地可以重新供應(yīng)或重新產(chǎn)生。重新供應(yīng)可以諸如每天地周期性地執(zhí)行,或者可以響應(yīng)于諸如設(shè)備進(jìn)入或離開包圍區(qū)之類的事件而執(zhí)行。無論何時(shí)供應(yīng)密鑰,可以遍布以頂級組織密鑰開始的組織而分發(fā)密鑰。無論是現(xiàn)在本領(lǐng)域中已知的還是以后開發(fā)的適當(dāng)?shù)陌踩胧┒伎梢杂糜谙拗茖蛹壍牟煌墑e處的密鑰僅分發(fā)給被授權(quán)訪問用從該密鑰直接或間接導(dǎo)出的密鑰加密的信息的那些設(shè)備??梢园慈魏芜m當(dāng)?shù)姆绞酱_定授權(quán)的設(shè)備。在一些實(shí)施例中,網(wǎng)絡(luò)管理員可以通過創(chuàng)建訪問控制列表、為某些設(shè)備供應(yīng)證書或其他驗(yàn)證標(biāo)記來確立授權(quán)的設(shè)備。在一些實(shí)施例中,可以使用已經(jīng)置于企業(yè)計(jì)算機(jī)系統(tǒng)中的安全性系統(tǒng)來確立授權(quán)的設(shè)備。例如,許多企業(yè)計(jì)算機(jī)系統(tǒng)利用Active Directory 網(wǎng)絡(luò)管理系統(tǒng)來驗(yàn)證設(shè)備。這樣的系統(tǒng)可以用于控制哪些設(shè)備得到對哪些密鑰的訪問以及用于提供向那些設(shè)備傳送密鑰的安全機(jī)制。無論如何限制密鑰的分發(fā),通過適當(dāng)?shù)叵拗圃趯蛹壍牟煌墑e處的密鑰的分發(fā),訪問的級別可以被設(shè)置為使得每個(gè)設(shè)備僅具有所需的訪問級別。例如,一些設(shè)備可以僅有權(quán)訪問具體服務(wù)器和具體客戶端之間的分組。其他設(shè)備可以有權(quán)訪問在具體服務(wù)器和任何包圍區(qū)中的任何設(shè)備之間的通信。另外的其他設(shè)備可以有權(quán)訪問在一個(gè)包圍區(qū)內(nèi)的任意設(shè)備和任意包圍區(qū)中的任意設(shè)備之間傳送的分組。另外的其他設(shè)備可以被給予對通過計(jì)算機(jī)系統(tǒng)發(fā)送的任意分組的訪問權(quán)。但是,應(yīng)該認(rèn)識到,不是層級的所有級別都需要存在于所有實(shí)施例中。例如,在一些實(shí)施例中,不是提供單個(gè)頂級組織密鑰,可以為從其可以產(chǎn)生成對的包圍區(qū)密鑰的每個(gè)包圍區(qū)初始地提供包圍區(qū)密鑰??商娲兀梢杂晒芾韱T直接向設(shè)備供應(yīng)成對的包圍區(qū)密鑰。作為另一例子,盡管描述了服務(wù)器密鑰,但是可以為服務(wù)器提供對成對的包圍區(qū)密鑰的訪問,其可以用于直接產(chǎn)生安全關(guān)聯(lián)密鑰而不需要產(chǎn)生服務(wù)器密鑰的中間步驟。同樣,可以在一些實(shí)施例中采用另外級別的分級密鑰。例如計(jì)算機(jī)系統(tǒng)可以被劃分成任意數(shù)量的級別
的子包圍區(qū),每個(gè)子包圍區(qū)具有它自己的密鑰以及與其他子包圍區(qū)的成對的密鑰。分級密鑰管理方法的一種使用是允許中間設(shè)備訪問實(shí)時(shí)產(chǎn)生安全關(guān)聯(lián)密鑰所需的包圍區(qū)密鑰。通過為位于兩個(gè)包圍區(qū)之間的網(wǎng)絡(luò)中的中間設(shè)備提供與那些包圍區(qū)相關(guān)聯(lián)的成對的包圍區(qū)密鑰,該中間設(shè)備可以被授權(quán)監(jiān)視在那兩個(gè)包圍區(qū)之間的網(wǎng)絡(luò)業(yè)務(wù)??梢砸蚨鄠€(gè)原因中的任意一個(gè)而供應(yīng)中間設(shè)備來訪問這樣的消息。例如,中間設(shè)備可以執(zhí)行反惡意(anti-malware)軟件,該軟件在一旦被提供了對消息內(nèi)容的訪問時(shí)確保消息不被病毒感染。中間設(shè)備可以基于消息內(nèi)容執(zhí)行任何其他適當(dāng)?shù)谋O(jiān)視功能。中間設(shè)備還可以執(zhí)行其他功能,比如操縱消息或者采取在此所述的控制動(dòng)作。無論中間設(shè)備的具體功能如何,其都可以捕捉在通過網(wǎng)絡(luò)發(fā)送的消息中的密鑰導(dǎo)出信息。然后密鑰導(dǎo)出信息與供應(yīng)給中間設(shè)備的密鑰的組合可以用于導(dǎo)出用于經(jīng)過中間設(shè)備的網(wǎng)絡(luò)業(yè)務(wù)的安全關(guān)聯(lián)的密鑰。分級密鑰還有助于對于網(wǎng)絡(luò)分組的加密處理的硬件卸載以支持這些功能。無論是在安全關(guān)聯(lián)的主機(jī)中還是在監(jiān)視使用安全關(guān)聯(lián)發(fā)送的網(wǎng)絡(luò)業(yè)務(wù)的中間設(shè)備中,網(wǎng)絡(luò)接口硬件都可以動(dòng)態(tài)地產(chǎn)生安全關(guān)聯(lián)密鑰,作為卸載處理的部分。結(jié)果,即使對于被給予了相對高級別的訪問權(quán)的設(shè)備,在硬件中必須保持的密鑰的數(shù)量也是可管理的。但是,在一些場景中,計(jì)算機(jī)系統(tǒng)可能包括支持這樣的密鑰導(dǎo)出的中間設(shè)備以及不支持這樣的密鑰導(dǎo)出的一些設(shè)備。密鑰管理系統(tǒng)可以為中間設(shè)備提供在其不能基于對其可獲得的信息產(chǎn)生密鑰時(shí)獲得其訪問安全關(guān)聯(lián)密鑰所需的信息的機(jī)制。例如,可以執(zhí)行直接密鑰交換。中間設(shè)備可以用信號通知擔(dān)當(dāng)服務(wù)器的主機(jī)其不支持安全包圍區(qū),這可以觸發(fā)該服務(wù)器進(jìn)入與該中間設(shè)備的直接密鑰交換。如果參與安全關(guān)聯(lián)的任一主機(jī)不支持在安全關(guān)聯(lián)之下發(fā)送的分組中包括密鑰導(dǎo)出信息,可以執(zhí)行類似的密鑰交換。如上所述,密鑰管理基于設(shè)備與包圍區(qū)相關(guān)聯(lián)。在一些實(shí)施例中,包圍區(qū)是靜態(tài)的并被預(yù)先定義。在這樣的實(shí)施例中,設(shè)備可以基于網(wǎng)絡(luò)拓?fù)浠蛘咂渌蛩乇环峙涞桨鼑鷧^(qū)。然后可以為設(shè)備供應(yīng)它們所屬的包圍區(qū)的指示。但是,在其他實(shí)例中,網(wǎng)絡(luò)可以被重新配置或者可以支持移動(dòng)設(shè)備。在這些實(shí)施例中,可能不能將具體設(shè)備預(yù)先分配到包圍區(qū)。此外,在一些實(shí)例中,將所有設(shè)備分配到包圍區(qū)可能是困難的或者難于負(fù)擔(dān)的。從而,在一些實(shí)施例中,密鑰管理系統(tǒng)可以包括允許設(shè)備發(fā)現(xiàn)其包圍區(qū)的包圍區(qū)發(fā)現(xiàn)協(xié)議??梢允褂萌魏芜m當(dāng)?shù)陌鼑鷧^(qū)發(fā)現(xiàn)協(xié)議。作為一個(gè)例子,網(wǎng)絡(luò)設(shè)備的子集可以被分配到包圍區(qū),并且可以將其包圍區(qū)狀態(tài)傳送給其他設(shè)備,使得其他設(shè)備可以基于與已經(jīng)被分配到包圍區(qū)的設(shè)備的連接來推斷其自己的包圍區(qū)成員資格。在一些實(shí)施例中,可能作為在其他網(wǎng)絡(luò)設(shè)備之間路由分組中涉及的中間者的設(shè)備可以被分配到包圍區(qū)。這種設(shè)備的子集可以足夠小并且這些設(shè)備的地點(diǎn)可以足夠少地改變,使得為每個(gè)這樣的設(shè)備供應(yīng)該設(shè)備所位于的包圍區(qū)的指示需要相當(dāng)小的負(fù)擔(dān)。當(dāng)分組在形成安全關(guān)聯(lián)的兩個(gè)主機(jī)之間傳遞時(shí),每個(gè)這樣的中間設(shè)備可以向該分組添加標(biāo)記,指示包圍區(qū)。接收這樣的分組的主機(jī)可以使用該標(biāo)記來確定其自己的包圍區(qū)。在一些實(shí)施例中,所述標(biāo)記可以指示任一或兩個(gè)主機(jī)的包圍區(qū)。這樣的信息可以由中間設(shè)備例如從包含系統(tǒng)中的主機(jī)的包圍區(qū)分配的對該中間設(shè)備可訪問的數(shù)據(jù)庫獲得。在其他實(shí)施例中,所述標(biāo)記可以包含允許主機(jī)推斷其包圍區(qū)的信息。例如,每個(gè)中間設(shè)備可以附上標(biāo)識其自己的包圍區(qū)的信息。該中間設(shè)備可以依次添加標(biāo)記,創(chuàng)建排序的標(biāo)記鏈。接收這樣的分組的任意主機(jī)可以分析該標(biāo)記鏈以確定在該鏈的開始和結(jié)尾處的包圍區(qū),這可以指示形成安全關(guān)聯(lián)的主機(jī)的包圍區(qū)。根據(jù)此信息,主機(jī)可以確定其自己的包圍區(qū)。單個(gè)分組可以足夠主機(jī)確定其自己的包圍區(qū),盡管在某些情況下,在網(wǎng)絡(luò)內(nèi)路由的分組的可變性可能產(chǎn)生在相同兩個(gè)主機(jī)之間傳送的不同分組中的不同標(biāo)記鏈。如果存在不一致,則設(shè)備可以從多個(gè)分組獲得信息并基于最頻繁指示的包圍區(qū)或者使用用于分辨不確定性的任何適當(dāng)?shù)姆椒▉順?biāo)識其自己的包圍區(qū)。包圍區(qū)標(biāo)記鏈類似地可以由服務(wù)器用來確定客戶端所位于的包圍區(qū)。該信息例如可以用在選擇適當(dāng)?shù)某蓪γ荑€以產(chǎn)生服務(wù)器密鑰的過程中,該服務(wù)器密鑰又將用于產(chǎn)生安全關(guān)聯(lián)密鑰。任何適當(dāng)?shù)脑O(shè)備可以將標(biāo)識包圍區(qū)的標(biāo)記置于分組上。在一些實(shí)施例中,諸如路由器和網(wǎng)關(guān)之類的中間設(shè)備可以被配置為放置這樣的標(biāo)記,盡管可以使用任何適當(dāng)?shù)脑O(shè)備來放置包圍區(qū)標(biāo)記??梢栽谌魏芜m當(dāng)?shù)挠?jì)算機(jī)系統(tǒng)中采用根據(jù)本發(fā)明的實(shí)施例的密鑰管理系統(tǒng)。作為例子,密鑰管理系統(tǒng)可以被并入比如可以在大公司中找到的企業(yè)計(jì)算機(jī)系統(tǒng)100 (圖1A)中。計(jì)算機(jī)系統(tǒng)100包含所示的劃分成包圍區(qū)110A、110B、110C和IlOD的多個(gè)計(jì)算機(jī)設(shè)備。網(wǎng)絡(luò)設(shè)備可以按任何適當(dāng)?shù)姆绞椒纸M成包圍區(qū)。在所示的實(shí)施例中,包圍區(qū)通?;诰W(wǎng)絡(luò)拓?fù)湫纬?,使得可以通過路由器或其他網(wǎng)關(guān)設(shè)備訪問的設(shè)備通常被分組在相同的包圍區(qū)中。但是,可以使用用于將設(shè)備劃分成包圍區(qū)的任何適當(dāng)?shù)臉?biāo)準(zhǔn)。圖IA是計(jì)算機(jī)系統(tǒng)的簡化圖示。在此,示出了三種類型的設(shè)備服務(wù)器、客戶端和多端口設(shè)備。圖示了諸如服務(wù)器120A、120B和120C的服務(wù)器。服務(wù)器可以是具有相對大量的諸如處理功率或者計(jì)算機(jī)存儲介質(zhì)之類的計(jì)算機(jī)資源的計(jì)算設(shè)備。這些設(shè)備可以是相對固定的,被安裝在架子或其他固定結(jié)構(gòu)中。這樣的設(shè)備可以擔(dān)當(dāng)文件服務(wù)器、打印服務(wù)器、數(shù)據(jù)庫服務(wù)器、網(wǎng)絡(luò)服務(wù)器或執(zhí)行企業(yè)內(nèi)的其他功能。但是,服務(wù)器可以是向另一設(shè)備供應(yīng)信息的任何計(jì)算設(shè)備。因而,本發(fā)明不受服務(wù)器的處理能力的特性的限制。臺式計(jì)算機(jī)、膝上型計(jì)算機(jī)甚至小型電子設(shè)備有時(shí)可以擔(dān)當(dāng)服務(wù)器。圖IA還圖示了在計(jì)算機(jī)系統(tǒng)100內(nèi)存在多個(gè)客戶端設(shè)備。為了簡化,圖示了三個(gè)客戶端設(shè)備130、132和134。在此例子中,客戶端設(shè)備被圖示為臺式計(jì)算機(jī)。但是,客戶端設(shè)備可以是從服務(wù)器接收信息的任意設(shè)備。因此,除了臺式計(jì)算機(jī)之外,客戶端設(shè)備可以是膝上型計(jì)算機(jī)或者其他便攜計(jì)算設(shè)備。取決于設(shè)備執(zhí)行的具體操作,具有相對大量的處理資源的設(shè)備也可以是客戶端。除了服務(wù)器和客戶端之外,計(jì)算機(jī)系統(tǒng)100可以包括一個(gè)或多個(gè)多端口設(shè)備,比如多端口設(shè)備136。通常,網(wǎng)絡(luò)內(nèi)的多端口設(shè)備執(zhí) 行有助于被尋址到具體設(shè)備的分組到達(dá)其預(yù)期的目的地的路由、切換或其他業(yè)務(wù)處理功能。多端口設(shè)備的例子包括路由器和開關(guān)以及負(fù)載平衡器、WAN優(yōu)化器以及入侵檢測/防御系統(tǒng)。除了多端口設(shè)備136之外,計(jì)算機(jī)系統(tǒng)100示出為包含擔(dān)當(dāng)包圍區(qū)之間的中間設(shè)備的多端口設(shè)備。在圖IA中,示出了中間設(shè)備140A、140B、140C和140D。這些中間設(shè)備的每個(gè)可以擔(dān)當(dāng)網(wǎng)關(guān),到或者來自包圍區(qū)內(nèi)的設(shè)備的消息可以通過該網(wǎng)關(guān)傳遞。例如,中間設(shè)備140A可以擔(dān)當(dāng)?shù)桨鼑鷧^(qū)IlOA內(nèi)的設(shè)備的網(wǎng)關(guān)。中間設(shè)備140B可以擔(dān)當(dāng)?shù)交蛘邅碜园鼑鷧^(qū)IlOB內(nèi)的設(shè)備的消息可以通過其傳遞的網(wǎng)關(guān)。類似地,中間設(shè)備140C可以擔(dān)當(dāng)用于包圍區(qū)IlOC內(nèi)的設(shè)備的網(wǎng)關(guān)并且中間設(shè)備140D可以擔(dān)當(dāng)用于包圍區(qū)IlOD中的設(shè)備的網(wǎng)關(guān)。但是,不要求中間設(shè)備是到包圍區(qū)的網(wǎng)關(guān)。中間設(shè)備可以按它們可以從一個(gè)到另一個(gè)包圍區(qū)地轉(zhuǎn)發(fā)消息的方式在網(wǎng)絡(luò)中連接。例如,中間設(shè)備140C可以接收在包圍區(qū)110AU10BU10C或IlOD的任意一個(gè)中產(chǎn)生的消息,并基于消息中的目的地地址將該消息路由到任何其他的包圍區(qū)。應(yīng)該認(rèn)識到,圖IA是其中可以采用本發(fā)明的企業(yè)計(jì)算機(jī)系統(tǒng)的僅一種可能的實(shí)現(xiàn)方式的簡化略圖。為了簡化僅在圖IA中圖示了四個(gè)包圍區(qū)??梢源嬖谌我膺m當(dāng)數(shù)量的包圍區(qū),并且遠(yuǎn)多于四個(gè)的包圍區(qū)可以存在于大企業(yè)的計(jì)算機(jī)系統(tǒng)中。無論包圍區(qū)的數(shù)量如何,可以按任何適當(dāng)?shù)姆绞蕉x包圍區(qū)。在一些實(shí)施例中,包圍區(qū)可以由網(wǎng)絡(luò)管理員定義。包圍區(qū)可以基于網(wǎng)絡(luò)拓?fù)涠x,使得由至少一個(gè)中間設(shè)備將每個(gè)包圍區(qū)與其他包圍區(qū)分離。另外,包圍區(qū)可以定義為使得僅在共同的管理控制下的設(shè)備被分組在相同的包圍區(qū)中。以此方式,可以適用類似的訪問控制的設(shè)備可以在相同的包圍區(qū)中,使得該包圍區(qū)中的設(shè)備可以共享包圍區(qū)密鑰而不包括信息的安全性。圖IA圖示了可以按每個(gè)包圍區(qū)中不同數(shù)量和類型的設(shè)備來形成包圍區(qū)。為了支持分級密鑰產(chǎn)生和分發(fā)系統(tǒng),包圍區(qū)內(nèi)的某些設(shè)備可以具有與密鑰產(chǎn)生或分發(fā)相關(guān)聯(lián)的具體功能。圖IB示出了包圍區(qū)的放大圖。圖IB圖示了包圍區(qū)可以使其與執(zhí)行與分級密鑰產(chǎn)生和分發(fā)相關(guān)聯(lián)的具體功能的服務(wù)器相關(guān)聯(lián)。如圖IB所示,包圍區(qū)150包括諸如服務(wù)器170A和170B之類的服務(wù)器。在工作時(shí),服務(wù)器170A和170B可以形成與客戶端設(shè)備的安全關(guān)聯(lián),兩者在包圍區(qū)150內(nèi)和包圍區(qū)150可以通過網(wǎng)絡(luò)耦接到的其他包圍區(qū)內(nèi)。在圖IB中,圖示客戶端設(shè)備180、182和184在包圍區(qū)150內(nèi),并且服務(wù)器170A和170B可以形成與這些客戶端設(shè)備的安全關(guān)聯(lián),盡管在圖IB中未明確圖示其他包圍區(qū)中的客戶端設(shè)備,但是服務(wù)器170A和170B也可以通過中間設(shè)備192與其他包圍區(qū)中的客戶端設(shè)備通信。
可以使用一種或多種加密技術(shù)來保證服務(wù)器和客戶端之間的通信的安全。這樣的加密技術(shù)可以用于加密或者提供用于驗(yàn)證信息的機(jī)制。無論包括加密技術(shù)的目的如何,可以使用本領(lǐng)域中已知的諸如加密密鑰之類的加密參數(shù)來執(zhí)行加密功能。當(dāng)用于加密時(shí),根據(jù)加密功能,加密密鑰與要加密的信息相組合??梢杂删哂性摷用苊荑€的各方從加密的信息中恢復(fù)原始信息,但是加密功能的復(fù)雜性使得實(shí)際上不可能不用密鑰而從加密的信息確定原始信息。相反,驗(yàn)證可能涉及其中信息與密鑰一起被組合以產(chǎn)生簽名的加密功能。在此情況下,該加密功能很復(fù)雜,使得實(shí)際上不用加密密鑰不能產(chǎn)生簽名。為了驗(yàn)證已經(jīng)通過網(wǎng)絡(luò)傳送的信息,可以在接收信息并與在傳輸時(shí)與信息相關(guān)聯(lián)的簽名相比較時(shí)對該信息再次執(zhí)行加密功能。如果該信息已經(jīng)改變,則產(chǎn)生的簽名將不匹配,從而允許已經(jīng)更改的信息容易被標(biāo)識。 在此所述的例子中,描述了與加密有關(guān)的加密功能。但是,本發(fā)明不要求遍布計(jì)算機(jī)系統(tǒng)分發(fā)的密鑰用于加密??商娲鼗蛘吡硗?,密鑰可以用于驗(yàn)證。在一些實(shí)施例中,可以為加密和驗(yàn)證提供單獨(dú)密鑰。從而,盡管在此所述的例子討論了用于在兩個(gè)設(shè)備之間形成的每個(gè)安全關(guān)聯(lián)的單個(gè)密鑰,但是可以存在形成每個(gè)安全關(guān)聯(lián)的一部分的任意數(shù)量的密鑰。例如,可以產(chǎn)生加密密鑰和驗(yàn)證密鑰。可以根據(jù)在此所述的技術(shù)產(chǎn)生并分發(fā)每個(gè)這樣的密鑰。此外,由于除了加密和驗(yàn)證數(shù)據(jù)之外的原因,可以采用加密密鑰作為加密功能的部分。因而,應(yīng)該認(rèn)識到,本發(fā)明不限于任意數(shù)量或類型的密鑰或者利用這些密鑰執(zhí)行的加密功能。無論加密密鑰的數(shù)量和使用如何,包圍區(qū)150中的每個(gè)服務(wù)器可以形成與一個(gè)或多個(gè)客戶端設(shè)備的安全關(guān)聯(lián)。每個(gè)安全關(guān)聯(lián)的是通過在安全關(guān)聯(lián)的每個(gè)主機(jī)設(shè)備之間共享安全性參數(shù)、包括一個(gè)或多個(gè)加密密鑰來創(chuàng)建的。安全性參數(shù)用于對使用安全關(guān)聯(lián)傳送的信息執(zhí)行加密功能??梢詫⒃撔畔⒆鳛榉纸M經(jīng)過網(wǎng)絡(luò)來傳遞。作為一個(gè)例子,分組可以包含使用為安全關(guān)聯(lián)產(chǎn)生的安全性參數(shù)加密的信息。安全性參數(shù)可以包括阻止未被授權(quán)方訪問該信息的任何信息。在這里提供的例子中,有時(shí)稱為安全關(guān)聯(lián)密鑰的會話密鑰被用作安全性參數(shù)的例子。該安全關(guān)聯(lián)密鑰用于加密從安全關(guān)聯(lián)的一個(gè)主機(jī)發(fā)送到其他主機(jī)的信息。為了簡化,在此例子中,使用相同的安全關(guān)聯(lián)密鑰來加密在主機(jī)之間的任一方向上傳遞的信息。但是,應(yīng)該認(rèn)識到,安全性參數(shù)可以包括用于在每個(gè)主機(jī)處發(fā)送和接收信息的多個(gè)密鑰??梢园慈魏芜m當(dāng)?shù)姆绞皆趦蓚€(gè)主機(jī)之間共享安全性參數(shù),包括使用本領(lǐng)域中已知的技術(shù)。作為一個(gè)例子,已經(jīng)開發(fā)了 IPsec通信協(xié)議來允許安全通信。IPsec支持在主機(jī)之間傳遞的分組的加密和/或驗(yàn)證。除了定義使用安全性信息保護(hù)的分組的格式之外,IPsec包括用于主機(jī)之間的初始交互的協(xié)議,通過該初始交互,主機(jī)可以獲得要用作安全關(guān)聯(lián)的部分的安全性參數(shù)的公共集合。這種協(xié)議的例子是因特網(wǎng)密鑰交換協(xié)議(IKE)以及AuthIP協(xié)議。根據(jù)這些協(xié)議,服務(wù)器可以產(chǎn)生安全關(guān)聯(lián)密鑰并將其發(fā)送到客戶端。隨后,客戶端和服務(wù)器可以使用該密鑰用于加密在它們之間傳遞的消息。在示例實(shí)施例中,安全關(guān)聯(lián)密鑰處于密鑰層級的最低級。在諸如服務(wù)器170A和170B之類的每個(gè)服務(wù)器形成新的安全關(guān)聯(lián)時(shí),服務(wù)器產(chǎn)生安全關(guān)聯(lián)密鑰。每個(gè)服務(wù)器根據(jù)服務(wù)器密鑰產(chǎn)生安全關(guān)聯(lián)密鑰。在此,諸如服務(wù)器170A和170B之類的每個(gè)服務(wù)器可以包含服務(wù)器密鑰集。服務(wù)器密鑰可以是成對的密鑰,使得每個(gè)服務(wù)器密鑰可以與不同的包圍區(qū)對相關(guān)聯(lián)。從而,當(dāng)服務(wù)器產(chǎn)生安全關(guān)聯(lián)密鑰時(shí),其首先確定客戶端所位于的包圍區(qū),并為包含該客戶端包圍區(qū)和該服務(wù)器自己的包圍區(qū)的包圍區(qū)對選擇適當(dāng)?shù)姆?wù)器密鑰。每個(gè)服務(wù)器可以從包圍區(qū)密鑰服務(wù)器160接收其服務(wù)器密鑰。包圍區(qū)密鑰服務(wù)器160可以被配置為對包圍區(qū)150內(nèi)的被授權(quán)接收服務(wù)器密鑰的每個(gè)服務(wù)器產(chǎn)生這樣的服務(wù)器密鑰。包圍區(qū)密鑰服務(wù)器160可以使用任何適當(dāng)?shù)臋C(jī)制來標(biāo)識被授權(quán)的服務(wù)器并向那些被授權(quán)的服務(wù)器傳送密鑰。例如,IPsec協(xié)議可以用于一旦服務(wù)器170A和170B驗(yàn)證了它們自己時(shí)就將密鑰從包圍區(qū)密鑰服務(wù)器160安全地傳送到諸如服務(wù)器170A和170B的服務(wù)器。在所圖示的實(shí)施例中,包圍區(qū)密鑰 服務(wù)器160根據(jù)成對的包圍區(qū)密鑰集產(chǎn)生用于諸如服務(wù)器170A和170B之類的服務(wù)器的密鑰。在所圖示的實(shí)施例中,包圍區(qū)密鑰服務(wù)器160可以基于從組織密鑰服務(wù)器148接收的信息來產(chǎn)生成對的包圍區(qū)密鑰,該組織密鑰服務(wù)器148可以保持組織密鑰。組織密鑰服務(wù)器148可以類似地向其他包圍區(qū)中的包圍區(qū)密鑰服務(wù)器提供成對的包圍區(qū)密鑰。圖2A以示意性形式圖示密鑰的分級產(chǎn)生。在此例子中,該層級的頂級是組織密鑰220。組織密鑰210可以被存儲在組織密鑰服務(wù)器148中(圖1A),或者其可以被提供在預(yù)期使用圖2B所示的密鑰層級有權(quán)訪問計(jì)算機(jī)系統(tǒng)中的所有級別的信息的任意設(shè)備中。無論哪些設(shè)備接收組織密鑰,可以按任何適當(dāng)?shù)姆绞较蜻@些設(shè)備提供組織密鑰210。例如它可以由網(wǎng)絡(luò)管理員提供或者按任何適當(dāng)?shù)姆绞皆谠O(shè)備內(nèi)產(chǎn)生。無論如何提供組織密鑰210,其都可以用于產(chǎn)生多個(gè)包圍區(qū)成對的密鑰,圖示了其中的成對的密鑰224A、224B、224C和224D。在圖2A所示的實(shí)施例中,每個(gè)包圍區(qū)成對的密鑰基于對組織密鑰210與包圍區(qū)對導(dǎo)出輸入222的組合執(zhí)行的偽隨機(jī)功能220而產(chǎn)生??梢栽诮M織密鑰服務(wù)器148 (圖1B)內(nèi)執(zhí)行該功能。以此方式,可以在組織密鑰服務(wù)器148內(nèi)的安全環(huán)境中或者在要被給予最高級別的網(wǎng)絡(luò)訪問權(quán)的任何其他設(shè)備中保持組織密鑰210,即使其至少間接地用于產(chǎn)生層級的所有級別處的密鑰。加密功能220可以是任何適當(dāng)?shù)膫坞S機(jī)功能。如本領(lǐng)域中已知的,偽隨機(jī)功能使得實(shí)際上如果在其計(jì)算中使用的密鑰足夠長并隨機(jī)(或偽隨機(jī)),則從輸入到輸出的函數(shù)看起來是隨機(jī)的。該特性的一個(gè)含義是不能從輸入-輸出對確定密鑰。從而,盡管被計(jì)算為該函數(shù)的輸出的包圍區(qū)成對的密鑰224A、224B、224C和224D可以被提供給在組織密鑰服務(wù)器148之外的設(shè)備,但是提供那些密鑰并不危害組織密鑰210的安全性。包圍區(qū)密鑰導(dǎo)出輸入222可以是對根據(jù)組織密鑰210產(chǎn)生包圍區(qū)成對的密鑰的設(shè)備可用的任何適當(dāng)?shù)男畔?。作為一個(gè)例子,包圍區(qū)對密鑰導(dǎo)出輸入222可以是包圍區(qū)的標(biāo)識符。例如,如果包圍區(qū)IlOA (圖1A)被標(biāo)識為包圍區(qū)(I)并且包圍區(qū)IlOB被標(biāo)識為包圍區(qū)(2),則可以使用密鑰導(dǎo)出輸入對(1,2)產(chǎn)生用于在包圍區(qū)IlOA和IlOB之間通信的包圍區(qū)成對密鑰。使用包圍區(qū)的標(biāo)識符作為包圍區(qū)成對的密鑰導(dǎo)出輸入222允許任何設(shè)備有權(quán)訪問組織密鑰210以產(chǎn)生相同的包圍區(qū)成對的密鑰集。例如,如果中間設(shè)備140C (圖1A)要被給予對于計(jì)算機(jī)系統(tǒng)100內(nèi)的所有消息業(yè)務(wù)的訪問權(quán),則中間設(shè)備140C可以被給予對組織密鑰210的訪問權(quán)。以此方式,中間設(shè)備140C可以按與組織密鑰服務(wù)器148相同的方式產(chǎn)生包圍區(qū)成對的密鑰224A……224D。在中間設(shè)備140C內(nèi)產(chǎn)生的包圍區(qū)成對的密鑰又可以用于產(chǎn)生密鑰層級的較低級別處的密鑰。該連續(xù)密鑰產(chǎn)生可以用于產(chǎn)生層級的任意級別處的密鑰,包括用于加密在作為安全關(guān)聯(lián)的部分的兩個(gè)主機(jī)之間傳送的分組的安全關(guān)聯(lián)密鑰。在所圖示的實(shí)施例中,可以為包圍區(qū)的每個(gè)唯一配對產(chǎn)生成對的包圍區(qū)密鑰EKiijo在此實(shí)施例中,與從第二包圍區(qū)中的服務(wù)器到第一包圍區(qū)中的客戶端的通信相同的成對的密鑰被用于從第一包圍區(qū)中的服務(wù)器到第二包圍區(qū)中的客戶端的通信。從而,成對的密鑰EKy與成對的密鑰EKy相同。但是,在一些實(shí)施例中,可以為每個(gè)排序的包圍區(qū)對產(chǎn)生不同的密鑰。圖2A圖示產(chǎn)生包圍區(qū)成對密鑰的全集。在一些實(shí)施例中,可以動(dòng)態(tài)地產(chǎn)生成對的密鑰,使得僅對具有正在進(jìn)行的通信的包圍區(qū)對產(chǎn)生成對的密鑰。無論何時(shí)產(chǎn)生以及產(chǎn)生多少包圍區(qū)成對的密鑰,成對的密鑰可以用于產(chǎn)生一個(gè)或多個(gè)服務(wù)器密鑰。如所示,使用偽隨機(jī)加密功能230根據(jù)成對的包圍區(qū)密鑰產(chǎn)生每個(gè)服務(wù)器密鑰。如偽隨機(jī)加密功能220那樣,偽隨機(jī)加密功能230以如下方式根據(jù)層級中較高級別處的密鑰產(chǎn)生服務(wù)器密鑰使得將輸入-輸出對與隨機(jī)產(chǎn)生的函數(shù)的輸入-輸出對相區(qū)分、特別是恢復(fù)在該函數(shù)中使用的較高級別密鑰來從輸入計(jì)算服務(wù)器密鑰輸出在計(jì)算上不實(shí)際。但是,基于服務(wù)器密鑰導(dǎo)出輸入232以可預(yù)測的方式產(chǎn)生每個(gè)服務(wù)器密鑰。結(jié)果,有權(quán)訪問包圍區(qū)成對的密鑰ΕΚ。的任何設(shè)備可以產(chǎn)生包圍區(qū)i中的服務(wù)器將使用來與包圍區(qū)j中的客戶端通信或者包圍區(qū)i中的服務(wù)器將使用來與包圍區(qū)j中的服務(wù)器通信的密鑰,假設(shè)該設(shè)備有權(quán)訪問服務(wù)器密鑰導(dǎo)出輸入。在所圖示的實(shí)施例中,服務(wù)器密鑰導(dǎo)出輸入可以簡單地是要為其產(chǎn)生密鑰的服務(wù)器的標(biāo)識符。因?yàn)檫@樣的標(biāo)識符可以容易地對其他設(shè)備而言可訪問,因此有權(quán)訪問包圍區(qū)成對的密鑰的設(shè)備可以重新創(chuàng)建服務(wù)器密鑰。例如,在圖IA的例子中,中間設(shè)備140A如果要被配置為監(jiān)視離開包圍區(qū)IlOA的網(wǎng)絡(luò)業(yè)務(wù),則其可以有權(quán)訪問包圍區(qū)成對的密鑰EKm……EK1^,這將足夠產(chǎn)生可能由包圍區(qū)IlOA內(nèi)的設(shè)備使用的任何服務(wù)器密鑰。圖2A圖示包圍區(qū)成對的密鑰EKy用于產(chǎn)生用于在包圍區(qū)i和j中的設(shè)備之間通信的密鑰。當(dāng)包圍區(qū)i中的服務(wù)器k需要在與包圍區(qū)j中的客戶端通信中使用的密鑰時(shí),使用服務(wù)器k的標(biāo)識符作為服務(wù)器密鑰導(dǎo)出輸入來產(chǎn)生服務(wù)器密鑰SKi,U。因此,可以產(chǎn)生多個(gè)服務(wù)器密鑰,圖示了其中的服務(wù)器密鑰234A、234B、234C和234D。在此例子中,這些服務(wù)器密鑰可以用于不同的服務(wù)器,盡管每個(gè)服務(wù)器可以具有多個(gè)服務(wù)器密鑰,這取決于與其通信的客戶端設(shè)備的位置。如其他密鑰那樣,服務(wù)器密鑰可以預(yù)先產(chǎn)生或者可以在設(shè)備之間的通信創(chuàng)建了對另一個(gè)服務(wù)器密鑰的需要時(shí)動(dòng)態(tài)地產(chǎn)生。根據(jù)服務(wù)器密鑰,可以產(chǎn)生諸如密鑰244A、244B、244C和244D之類的各個(gè)安全關(guān)聯(lián)密鑰。如其他密鑰那樣,可以使用取層級中的下一個(gè)較高級別處的密鑰作為輸入的單向加密功能來產(chǎn)生安全關(guān)聯(lián)密鑰。在此情況下,偽隨機(jī)加密功能240使用服務(wù)器密鑰并基于安全關(guān)聯(lián)(SA)密鑰導(dǎo)出輸入242產(chǎn)生安全關(guān)聯(lián)密鑰。當(dāng)包圍區(qū)i中的服務(wù)器k正與包圍區(qū)j中的客戶端通信時(shí),其對每個(gè)客戶端m產(chǎn)生不同的安全關(guān)聯(lián)密鑰。從而,唯一的安全關(guān)聯(lián)密鑰CKutm可以用于每個(gè)安全關(guān)聯(lián)。可以根據(jù)服務(wù)器密鑰SKuk和與安全關(guān)聯(lián)m相關(guān)聯(lián)的安全關(guān)聯(lián)密鑰導(dǎo)出輸入242產(chǎn)生安全關(guān)聯(lián)密鑰CKi,U』。安全關(guān)聯(lián)密鑰導(dǎo)出輸入242可以是任何適當(dāng)?shù)闹?。?yōu)選地,跨越在該服務(wù)器的活動(dòng)的安全關(guān)聯(lián),該值是唯一的,因此可以用作安全關(guān)聯(lián)的標(biāo)識符。在一些實(shí)施例中,安全關(guān)聯(lián)密鑰導(dǎo)出輸入可以是隨機(jī)產(chǎn)生的值。但是,該值可以基于時(shí)間戳或者任何其他適當(dāng)?shù)男畔⒃础榱嗽试S設(shè)備根據(jù)層級中較高級別處的密鑰產(chǎn)生安全關(guān)聯(lián)密鑰,可以使安全關(guān)聯(lián)密鑰導(dǎo)出輸入對那些設(shè)備而言是可用的。例如,如果中間設(shè)備140A (圖1A)要監(jiān)視從包圍區(qū)IlOA (圖1A)發(fā)送的業(yè)務(wù),則為中間設(shè)備140A提供用于產(chǎn)生用于涉及包圍區(qū)IlOA中的設(shè)備的所有安全關(guān)聯(lián)的安全關(guān)聯(lián)密鑰的安全關(guān)聯(lián)密鑰導(dǎo)出輸入??梢允褂萌魏芜m當(dāng)?shù)臋C(jī)制來使得安全關(guān)聯(lián)密鑰導(dǎo)出輸入可用。作為一個(gè)例子,安全關(guān)聯(lián)密鑰導(dǎo)出輸入可以被包括在使用從那些輸入產(chǎn)生的安全關(guān)聯(lián)密鑰加密的消息中。
在圖2A的實(shí)施例中,直接從組織密鑰210產(chǎn)生每個(gè)成對的包圍區(qū)密鑰。其他方法是可能的。在可替代實(shí)施例中,一些成對的包圍區(qū)密鑰可以間接從組織密鑰產(chǎn)生。圖2B圖示了其中基于包圍區(qū)密鑰服務(wù)器之間的交互從組織密鑰間接產(chǎn)生包圍區(qū)成對的密鑰的實(shí)施例。圖2B的過程開始于塊250。在塊250,產(chǎn)生包圍區(qū)密鑰。在塊250處產(chǎn)生的包圍區(qū)密鑰可以用于產(chǎn)生用于相同包圍區(qū)內(nèi)的設(shè)備之間的通信的密鑰。從而,當(dāng)i等于j時(shí),在塊250處產(chǎn)生的包圍區(qū)密鑰可以被認(rèn)為與包圍區(qū)成對的密鑰EKy相同。在塊250處產(chǎn)生的包圍區(qū)密鑰可以按任何適當(dāng)?shù)姆绞疆a(chǎn)生。作為一個(gè)例子,可以使用如圖2A所示的偽隨機(jī)加密功能根據(jù)組織密鑰210產(chǎn)生包圍區(qū)密鑰。但是,在一些實(shí)施例中,包圍區(qū)密鑰可以由網(wǎng)絡(luò)管理員直接提供在包圍區(qū)密鑰服務(wù)器中或者按任何其它適當(dāng)?shù)姆绞将@得。例如,它們可以隨機(jī)產(chǎn)生。一旦為每個(gè)包圍區(qū)產(chǎn)生了密鑰,處理就前進(jìn)到循環(huán)開始252。循環(huán)開始252是針對每個(gè)包圍區(qū)i重復(fù)的循環(huán)的開始。從循環(huán)開始252,過程前進(jìn)到循環(huán)開始254。循環(huán)254是針對每隔一個(gè)包圍區(qū)j重復(fù)的子循環(huán)的開始。處理前進(jìn)到?jīng)Q定塊256。在決定塊256,取決于包圍區(qū)對(i,j)是否需要成對的密鑰,所述過程出現(xiàn)分支。如果需要成對的包圍區(qū)密鑰,則過程分支到塊258。在塊258,為包圍區(qū)對(i,j)產(chǎn)生成對的包圍區(qū)密鑰。可以按任何適當(dāng)?shù)姆绞疆a(chǎn)生成對的密鑰。作為一個(gè)例子,可以在包圍區(qū)i中的包圍區(qū)密鑰服務(wù)器和包圍區(qū)j中的包圍區(qū)密鑰服務(wù)器之間執(zhí)行密鑰交換協(xié)議。該密鑰交換可以用于獨(dú)立地產(chǎn)生并共享成對的密鑰ΕΚ。。但是,使用任何適當(dāng)?shù)募用芄δ艿娜魏芜m當(dāng)?shù)臋C(jī)制可以用于產(chǎn)生成對的密鑰。一旦產(chǎn)生成對的密鑰,處理就前進(jìn)到?jīng)Q定塊260,其中如果存在更多的包圍區(qū)對要處理,則處理循環(huán)回到循環(huán)開始254。處理按此方式在涉及循環(huán)開始254、決定塊254、決定塊256、處理塊258和決定塊260的子循環(huán)中繼續(xù),直到處理了每個(gè)包圍區(qū)對。對于可能因?yàn)樵诎鼑鷧^(qū)對中的設(shè)備之間不發(fā)生通信而不需要密鑰對的包圍區(qū)對,處理通過從決定塊256分支到?jīng)Q定塊260而繞過塊258中的密鑰產(chǎn)生步驟。一旦對涉及在循環(huán)開始252處選擇的包圍區(qū)i的每對包圍區(qū)完成了開始于循環(huán)開始254的子循環(huán)中的處理,處理就將從決定塊260前進(jìn)到?jīng)Q定塊262。在決定塊262,處理將循環(huán)回到其中下一個(gè)包圍區(qū)將被選擇的循環(huán)開始252。將針對該下一個(gè)包圍區(qū)重復(fù)子循環(huán)254中的處理。處理將按此方式繼續(xù)循環(huán),直到針對在其之間可以發(fā)生通信的每對包圍區(qū)產(chǎn)生成對的包圍區(qū)密鑰。無論產(chǎn)生成對的包圍區(qū)密鑰的方式如何,它們都可以用于產(chǎn)生層級中的較低級別處的密鑰以最終形成計(jì)算機(jī)系統(tǒng)中的設(shè)備對之間的安全關(guān)聯(lián)。來自在形成具體安全關(guān)聯(lián)中使用的成對的密鑰集的具體成對的密鑰取決于對于該安全關(guān)聯(lián)的主機(jī)所位于的包圍區(qū)。這樣的方法涉及具有關(guān)于具體主機(jī)可能位于的包圍區(qū)的可用信息。在一些實(shí)施例中,可以為每個(gè)主機(jī)供應(yīng)其所位于的包圍區(qū)的指示。然后可以由主機(jī)向密鑰服務(wù)器或者產(chǎn)生由該主機(jī)使用的密鑰的其他設(shè)備提供包圍區(qū)標(biāo)識??商娲?,在一些實(shí)施例中,可以提供允許主機(jī)動(dòng)態(tài)地 發(fā)現(xiàn)其所位于的包圍區(qū)的機(jī)制。在一些實(shí)施例中,動(dòng)態(tài)包圍區(qū)發(fā)現(xiàn)過程還可以允許主機(jī)發(fā)現(xiàn)預(yù)期用作安全關(guān)聯(lián)的相對端點(diǎn)的另一主機(jī)所位于的包圍區(qū)。在一些實(shí)施例中,包圍區(qū)發(fā)現(xiàn)過程可以被并入用于形成安全關(guān)聯(lián)的協(xié)議中。圖3圖示了對形成安全關(guān)聯(lián)的已知協(xié)議的修改以允許至少一個(gè)主機(jī)確定一個(gè)主機(jī)或兩個(gè)主機(jī)所位于的包圍區(qū)。圖3圖示擔(dān)當(dāng)服務(wù)器340的第一主機(jī)和擔(dān)當(dāng)客戶端350的第二主機(jī)之間的通信。在所示的實(shí)施例中,服務(wù)器340產(chǎn)生用于根據(jù)安全關(guān)聯(lián)通信的密鑰。然后服務(wù)器340將該密鑰分發(fā)到客戶端350。在產(chǎn)生和分發(fā)密鑰之前,服務(wù)器340和客戶端350交換控制密鑰產(chǎn)生和分發(fā)過程的一個(gè)或多個(gè)控制分組。從而,圖3圖示了在作為產(chǎn)生和分發(fā)密鑰的部分的用于交換控制信息的過程308中的步驟。過程308可以是本領(lǐng)域中已知的用于形成安全關(guān)聯(lián)的過程或該過程的部分。例如,過程308可以表示根據(jù)因特網(wǎng)密鑰交換(IKE)協(xié)議或者AuthIP協(xié)議的分組交換。這些協(xié)議的每個(gè)涉及在服務(wù)器340和客戶端350之間交換控制分組。在圖3的例子中,過程308涉及由服務(wù)器340發(fā)送到客戶端350的控制分組310??蛻舳?50以發(fā)送到服務(wù)器340的控制分組320來響應(yīng)??梢愿鶕?jù)已知的協(xié)議或者按任何其他適當(dāng)?shù)姆绞絹砀袷交刂品纸M310和320。在圖3的例子中,控制分組310和320的每個(gè)包括多個(gè)字段。未由該協(xié)議指定的信息可以被插入到這些字段的一個(gè)或多個(gè)中以支持包圍區(qū)發(fā)現(xiàn)而不脫離該協(xié)議。例如,控制分組310被示出為具有字段312、314和316。在此,為了簡化示出了三個(gè)字段,但是控制分組可以具有比所示更多的字段。在此例子中,信息元素318被服務(wù)器340插入字段314中。信息元素318可以用作包圍區(qū)發(fā)現(xiàn)過程的部分。類似地,示出控制分組320具有字段322、324和326。在此例子中,支持包圍區(qū)發(fā)現(xiàn)的信息元素被插入到字段326中。在圖3的例子中,信息元素330、332和334被插入到字段326中。由處理控制分組320的中間設(shè)備在該控制分組320從客戶端350經(jīng)過網(wǎng)絡(luò)被路由到服務(wù)器340時(shí)插入這些信息元素的每個(gè)。在此示例中,信息元素330、332和334可以擔(dān)當(dāng)可用于包圍區(qū)發(fā)現(xiàn)過程的標(biāo)記。當(dāng)服務(wù)器340接收到分組320時(shí),其提取信息元素330,332和334以確定其包圍區(qū),并可選地確定客戶端350所位于的包圍區(qū)。在所示的實(shí)施例中,信息元素318用于用信號通知位于服務(wù)器340和客戶端350之間的網(wǎng)絡(luò)中的中間設(shè)備服務(wù)器340正根據(jù)包圍區(qū)發(fā)現(xiàn)過程尋求信息??梢园慈魏芜m當(dāng)方式將信息元素318并入控制分組310中。作為一個(gè)例子,信息元素318可以被添加在控制分組310的銷售商ID字段中,該字段可以是在某些已知的通信協(xié)議中所定義的字段。被插入到控制分組310的銷售商ID字段中的值可以是用信號通知期望包圍區(qū)發(fā)現(xiàn)過程的任何預(yù)定義的代碼。在控制分組310經(jīng)過服務(wù)器340和客戶端350之間的網(wǎng)絡(luò)時(shí),其首先經(jīng)過中間設(shè)備360。中間設(shè)備360可以按已知的方式處理控制分組310使得控制分組310朝向客戶端350繼續(xù)其路徑的路由器或其他多端口設(shè)備。除了這種已知的處理之外,中間設(shè)備360可以檢查字段314的內(nèi)容。在檢測到信息元素318具有指示服務(wù)器340正設(shè)法參與包圍區(qū)發(fā)現(xiàn)過程的值時(shí),中間設(shè)備360可以存儲服務(wù)器340正尋求包圍區(qū)發(fā)現(xiàn)信息的指示318’。中間設(shè)備360然后可以監(jiān)視網(wǎng)絡(luò)業(yè)務(wù)以檢測尋址到服務(wù)器340的分組??刂品纸M310可以從中間設(shè)備360傳 遞到另一中間設(shè)備,在此圖示為中間設(shè)備362。中間設(shè)備362可以類似地處理控制分組310,也存儲服務(wù)器340正尋求包圍區(qū)發(fā)現(xiàn)信息的指示318’。對于中間設(shè)備362,控制分組310可以在其到客戶端350的路途上傳遞到進(jìn)一步的中間設(shè)備。在此,示出了一個(gè)附加的中間設(shè)備(中間設(shè)備364)。如中間設(shè)備362和360那樣,中間設(shè)備364存儲服務(wù)器340正尋求包圍區(qū)發(fā)現(xiàn)信息的指示318’。客戶端350可以如本領(lǐng)域中已知那樣響應(yīng)于控制分組310。對控制分組310的響應(yīng)的一部分可以是產(chǎn)生隨后的控制分組,在此圖示為控制分組320。在控制分組320經(jīng)過網(wǎng)絡(luò)朝向服務(wù)器340傳送時(shí),其經(jīng)過處理了控制分組310的中間設(shè)備364、362和360。從而,這些中間設(shè)備的每個(gè)檢查導(dǎo)向服務(wù)器340的網(wǎng)絡(luò)分組,其中中間設(shè)備可以將包圍區(qū)發(fā)現(xiàn)信息插入該網(wǎng)絡(luò)分組。中間設(shè)備364因此將控制分組320標(biāo)識為包圍區(qū)發(fā)現(xiàn)信息要被插入到的控制分組。在所示的實(shí)施例中,控制分組320包括字段322、324和326。字段的具體數(shù)量和內(nèi)容可以由在建立安全關(guān)聯(lián)中使用的協(xié)議定義。但是,在所示的實(shí)施例中,字段326是可擴(kuò)展性字段,意味著協(xié)議不定義對字段326的內(nèi)容的要求。從而,中間設(shè)備可以將信息插入到字段326中而不更改在服務(wù)器340和客戶端350之間形成安全關(guān)聯(lián)所需的信息。中間設(shè)備364將服務(wù)器340可以使用來作為為客戶端350和/或服務(wù)器340確定包圍區(qū)的過程的部分的信息插入到字段326中。在所示的實(shí)施例中,中間設(shè)備364插入信息元素330。信息元素330指示中間設(shè)備364已經(jīng)被分配到的包圍區(qū)。因?yàn)橹虚g設(shè)備364是由客戶端350發(fā)送的分組遇到的第一個(gè)中間設(shè)備,同樣,中間設(shè)備364是網(wǎng)關(guān)或者關(guān)聯(lián)于與客戶端350相同的包圍區(qū)的其他多端口設(shè)備。因此,信息元素330可以被取作客戶端350所位于的包圍區(qū)的指示符。在控制分組320經(jīng)過網(wǎng)絡(luò)時(shí),其接下來被中間設(shè)備362處理。因?yàn)橹虚g設(shè)備362正監(jiān)視導(dǎo)向服務(wù)器340的分組,中間設(shè)備362類似地檢測控制分組320并插入標(biāo)識中間設(shè)備362所位于的包圍區(qū)的信息元素332。信息元素332按反映控制分組320的處理順序的方式被插入到字段326中。用于反映處理順序的一個(gè)簡單的機(jī)制是將信息元素332插入到在信息元素330之后的列表中。但是,可以使用用于保存排序的任何適當(dāng)?shù)慕Y(jié)構(gòu)。在控制分組320繼續(xù)經(jīng)過網(wǎng)絡(luò)時(shí),其接下來由中間設(shè)備360處理。如中間設(shè)備362和364那樣,中間設(shè)備360插入指示中間設(shè)備所位于的包圍區(qū)的信息元素334。同樣按保存處理順序的方式插入信息元素334,比如通過將其附于已經(jīng)在字段326中的信息的列表。從而,當(dāng)控制分組320到達(dá)服務(wù)器340時(shí),服務(wù)器340可以分析字段326的內(nèi)容以確定控制分組320在從客戶端350到服務(wù)器340的路徑上所經(jīng)過的包圍區(qū)。在該路徑的任一端的包圍區(qū)類似地是服務(wù)器340和客戶端350所位于的包圍區(qū)的指示符。由在字段326中的列表的任一端處的信息元素(在此是信息元素330和334)標(biāo)識的包圍區(qū)對可以用于選擇用來產(chǎn)生用于服務(wù)器340和客戶端350之間的安全關(guān)聯(lián)的安全關(guān)聯(lián)密鑰的成對的密鑰。在圖2A所示的實(shí)施例中,該信息可以用于選擇要在產(chǎn)生安全關(guān)聯(lián)密鑰時(shí)使用的具體服務(wù)器密鑰。應(yīng)該認(rèn)識到,圖3圖示了包圍區(qū)發(fā)現(xiàn)過程的一個(gè)例子,并且各變化是可能的。例如,在一些實(shí)施例中,經(jīng)過網(wǎng)絡(luò)的不同路徑可能導(dǎo)致控制分組經(jīng)過不同的中間設(shè)備。結(jié)果,服務(wù)器340可能不是在所有場景中都接收到其自己的包圍區(qū)的一致指示。在該場景中,月艮務(wù)器340可以保持在不同時(shí)間時(shí)接收的關(guān)于其指示的包圍區(qū)的信息。服務(wù)器340可以分析該信息以確定其包圍區(qū)位置。作為進(jìn)一步的變化,當(dāng)客戶端350獲悉其包圍區(qū)時(shí),其可以將該信息插入到字段326中,作為該列表中的第一信息元素,或者另外發(fā)信號通知其包圍區(qū)位置。在另一變化中,中間者可以連同其分配的包圍區(qū)一起插入額外的信息。例如,中間者可以包括標(biāo)識它們擁有其包圍區(qū)密鑰的其他包圍區(qū)的信息,使得服務(wù)器可以確定沿著該路徑的所有中間者是否都具有處理客戶端的所發(fā)現(xiàn)的包圍區(qū)和服務(wù)器的所發(fā)現(xiàn)的包圍區(qū)之間的業(yè)務(wù)所需的成對的密鑰。圖3圖示每個(gè)中間設(shè)備在接收到信息元素318之后將用于包圍區(qū)發(fā)現(xiàn)的信息元素插入到它們檢測到的導(dǎo)向服務(wù)器340的第一分組中。中間設(shè)備可以在與信息元素318的接收有關(guān)的任何適當(dāng)?shù)臅r(shí)間將信息元素插入到任何適當(dāng)數(shù)量的分組中。作為可替代方案,中間設(shè)備可以在接收到信息元素318之后將各信息元素插入到多個(gè)分組中或者達(dá)預(yù)定的時(shí)間量。作為另一變化的例子,中間設(shè)備可以插入用于包圍區(qū)發(fā)現(xiàn)的信息元素而沒有來自服務(wù)器的包圍區(qū)發(fā)現(xiàn)信息的需要的具體指示。在這樣的實(shí)施例中,中間設(shè)備可以將包圍區(qū)發(fā)現(xiàn)信息插入到所有分組中或者僅插入到某類型的分組中。例如,中間設(shè)備可以將用于包圍區(qū)發(fā)現(xiàn)的信息元素插入到在形成安全關(guān)聯(lián)中使用的所有控制分組中,而不管請求這種包圍區(qū)發(fā)現(xiàn)的信息元素是否在先前已被中間設(shè)備檢測到。無論包圍區(qū)發(fā)現(xiàn)信息被提供給服務(wù)器340的細(xì)節(jié)如何,一旦服務(wù)器340可以標(biāo)識其包圍區(qū)和客戶端350的包圍區(qū),其就可以產(chǎn)生一個(gè)或多個(gè)安全關(guān)聯(lián)密鑰并使用已知的協(xié)議或按任何其他適當(dāng)?shù)姆绞酵瓿尚纬膳c客戶端350的安全關(guān)聯(lián)的過程。其后,服務(wù)器340和客戶端350可以根據(jù)該安全關(guān)聯(lián)而通信。圖3圖示了在過程308之后,客戶端350和服務(wù)器340可以根據(jù)該安全關(guān)聯(lián)交換分組。作為例子圖示了分組370。分組370可以根據(jù)用于定義客戶端350和服務(wù)器340之間的安全關(guān)聯(lián)的協(xié)議被格式化。分組370可以包含多個(gè)字段,圖示了其中的字段372、374和376。每個(gè)字段可以包含不同類型的信息。例如,字段376可以包含已經(jīng)用安全關(guān)聯(lián)密鑰簽名或加密的數(shù)據(jù)。分組370內(nèi)的其他字段可以用于通過網(wǎng)絡(luò)路由分組370或者另外用在處理分組370中。分組370中的一個(gè)這樣的字段可以包含密鑰導(dǎo)出信息,用于產(chǎn)生用于客戶端350和服務(wù)器340之間的安全關(guān)聯(lián)的安全關(guān)聯(lián)密鑰。將密鑰導(dǎo)出信息并入分組370內(nèi)允許有權(quán)訪問用于導(dǎo)出安全關(guān)聯(lián)密鑰的密鑰層級中的任意級別處的密鑰的任何設(shè)備重新產(chǎn)生安全關(guān)聯(lián)密鑰并處理分組370。在圖2A圖示的密鑰層級中,這樣的密鑰導(dǎo)出信息可以包括客戶端350和服務(wù)器340所位于的包圍區(qū)對、產(chǎn)生了安全關(guān)聯(lián)密鑰的服務(wù)器的身份、以及用于產(chǎn)生安全關(guān)聯(lián)密鑰的密鑰導(dǎo)出輸入242。該信息可以按任何適當(dāng)?shù)姆绞讲⑷敕纸M370中。在圖3的例子中,該信息被記錄在分組370的字段374中。在所示的例子中,字段374包含服務(wù)器ID 380,其可以標(biāo)識產(chǎn)生了安全關(guān)聯(lián)密鑰的服務(wù)器。另外,字段374可以包含安全性參數(shù)索引(SPI),其可以包含或標(biāo)識其他密鑰導(dǎo)出輸入。SPI可以標(biāo)識用作密鑰導(dǎo)出輸入242 (圖2A)的隨機(jī)數(shù)和/或客戶端350和服務(wù)器340所位于的包圍區(qū)對。但是,應(yīng)該認(rèn)識到,圖3僅圖示了通過其可以使密鑰導(dǎo)出信息對處理分組370的設(shè)備而言可用的機(jī)制的一個(gè)例子。
如所示,密鑰導(dǎo)出信息字段374未被加密。不過,可以保持分組370的安全性,因?yàn)樽侄?74中的密鑰導(dǎo)出輸入僅對包含了從其產(chǎn)生了安全關(guān)聯(lián)密鑰的密鑰的設(shè)備有用。被授權(quán)獲得從其產(chǎn)生了安全關(guān)聯(lián)密鑰的密鑰的任何設(shè)備可以重新產(chǎn)生用于處理分組370的安全關(guān)聯(lián)密鑰。該過程可以由服務(wù)器340或者由諸如中間設(shè)備360、362和364之類的中間設(shè)備的任意一個(gè)執(zhí)行。在一些實(shí)施例中,產(chǎn)生安全關(guān)聯(lián)密鑰使得可以處理分組370的處理可以被卸載到網(wǎng)絡(luò)接口卡或者計(jì)算機(jī)設(shè)備的其他適當(dāng)?shù)慕M件中的硬件。該硬件如果有權(quán)訪問適當(dāng)?shù)拿荑€則可以在分組370被處理時(shí)在運(yùn)行中產(chǎn)生安全關(guān)聯(lián)密鑰,并然后使用所產(chǎn)生的密鑰來處理分組370中的信息。圖4A圖示了可以在諸如服務(wù)器340之類的服務(wù)器中執(zhí)行的過程400。但是,可以在諸如中間者360、362或364的任意一個(gè)之類的任意設(shè)備中執(zhí)行相當(dāng)?shù)倪^程。過程400開始于塊410。在塊410,服務(wù)器獲得用于該服務(wù)器所位于的包圍區(qū)的成對的密鑰??梢允褂萌缟辖Y(jié)合圖3所述的包圍區(qū)發(fā)現(xiàn)過程或者按任何其他適當(dāng)?shù)姆绞絹順?biāo)識服務(wù)器所位于的包圍區(qū)。在塊410處獲得的成對的密鑰可以是包圍區(qū)成對的密鑰,比如圖2A中所示的成對的密鑰224A……224D??商娲兀谄渲懈鶕?jù)包圍區(qū)成對的密鑰產(chǎn)生服務(wù)器成對的密鑰的實(shí)施例中,在塊410處獲得的成對的密鑰可以是服務(wù)器成對的密鑰,比如圖2A中的密鑰234A……234D。無論成對的密鑰的具體格式如何,它們都可以從任何適當(dāng)?shù)脑传@得,比如在包含要產(chǎn)生安全關(guān)聯(lián)密鑰的服務(wù)器的包圍區(qū)內(nèi)部或外部的密鑰服務(wù)器。在塊412處,成對的密鑰被存儲在服務(wù)器上。該密鑰可以被存儲在與服務(wù)器相關(guān)聯(lián)的任何適當(dāng)?shù)挠?jì)算機(jī)存儲介質(zhì)上。但是,在其中要執(zhí)行加密功能的硬件卸載的實(shí)施例中,成對的密鑰可以存儲在諸如網(wǎng)絡(luò)接口卡(NIC)之類的網(wǎng)絡(luò)接口硬件內(nèi)。然后過程前進(jìn)到循環(huán)開始420,這是服務(wù)器將進(jìn)入的針對每個(gè)安全關(guān)聯(lián)執(zhí)行的循環(huán)的開始。在開始于循環(huán)開始420的該循環(huán)內(nèi),服務(wù)器可以執(zhí)行適合于一個(gè)安全關(guān)聯(lián)的處理。該處理開始于塊422,其中服務(wù)器向?qū)⒆鳛榘踩P(guān)聯(lián)的第二主機(jī)的客戶端發(fā)送消息。這樣的消息可以是控制分組310 (圖3)的形式的。但是,可以使用任何適當(dāng)?shù)南⒏袷?,包括特別格式化用于從客戶端或者從消息路徑上的中間者得出其所駐留的包圍區(qū)的指示的消肩、O然后過程前進(jìn)到塊424,其中服務(wù)器接收來自客戶端的響應(yīng)。這樣的響應(yīng)可以是中間設(shè)備已經(jīng)將包圍區(qū)發(fā)現(xiàn)信息插入到其中的控制分組320 (圖3)格式的。但是,在塊424處接收的響應(yīng)可以是任何適當(dāng)?shù)母袷降模ㄓ煽蛻舳司唧w格式化用于傳達(dá)其包圍區(qū)的消
肩、O
無論在塊422處發(fā)送的消息和在塊424處接收的響應(yīng)的格式如何,服務(wù)器都可以在塊426和428處處理響應(yīng)以確定客戶端和服務(wù)器的適當(dāng)?shù)陌鼑鷧^(qū)對。在塊426處,從響應(yīng)中提取標(biāo)識服務(wù)器包圍區(qū)的信息,在塊428,從響應(yīng)中提取標(biāo)識客戶端包圍區(qū)的信息。在塊426和428處的處理可能涉及處理信息元素的列表,比如330、332和334 (圖3)。但是,可以按任何適當(dāng)?shù)姆绞綀?zhí)行塊426和428處的處理以確定客戶端和服務(wù)器的適當(dāng)?shù)陌鼑鷧^(qū)對。一旦標(biāo)識了適當(dāng)?shù)陌鼑鷧^(qū) 對,就在塊430處選擇成對的密鑰。在一些實(shí)施例中,選擇成對的密鑰可能需要訪問密鑰服務(wù)器。在其他實(shí)施例中,選擇成對的密鑰可能需要從先前下載到服務(wù)器的成對的密鑰集讀取。例如,選擇可以基于在塊410處獲得的密鑰。本領(lǐng)域技術(shù)人員將認(rèn)識到,圖4A是簡化的圖示,并且不需要完全按照該例子中的順序執(zhí)行過程400的步驟。作為可能的變化的一個(gè)例子,應(yīng)該理解,在塊430處選擇成對的密鑰可以形成在塊410處獲得成對的密鑰所需的處理的一部分。例如,如果存在可能可以使用的大量的成對的密鑰,則可以使用這樣的過程。在該場景中,可以在塊430處的處理標(biāo)識形成與其他包圍區(qū)中的客戶端的安全關(guān)聯(lián)所需的具體成對的密鑰時(shí)動(dòng)態(tài)并遞增地下載成對的密鑰。無論何時(shí)以及在哪里獲得所選的成對的密鑰,過程前進(jìn)到塊432。在塊432處,獲得用于產(chǎn)生安全關(guān)聯(lián)密鑰的密鑰導(dǎo)出輸入。在一些實(shí)施例中,密鑰導(dǎo)出輸入可以包括隨機(jī)數(shù),使得塊432處的處理可以包括該隨機(jī)數(shù)的產(chǎn)生??商娲鼗蛄硗獾?,密鑰導(dǎo)出輸入可以包括在塊426處檢測的服務(wù)器包圍區(qū)的標(biāo)識符以及在塊428處檢測的客戶端包圍區(qū)的標(biāo)識符。無論具體的導(dǎo)出輸入以及獲得其的源如何,處理可以繼續(xù)到塊434,其中導(dǎo)出安全關(guān)聯(lián)密鑰。塊434處的處理可能涉及在塊432處獲得的密鑰導(dǎo)出輸入中使用在塊430處選擇的成對的密鑰來執(zhí)行加密功能。但是,可以按任何適當(dāng)?shù)姆绞疆a(chǎn)生安全關(guān)聯(lián)密鑰。產(chǎn)生安全關(guān)聯(lián)密鑰可能需要服務(wù)器和客戶端之間的交互,使得客戶端和服務(wù)器兩者具有安全關(guān)聯(lián)密鑰的副本。安全關(guān)聯(lián)密鑰可以由服務(wù)器產(chǎn)生,然后按任何適當(dāng)?shù)姆绞絺鬏數(shù)娇蛻舳耍龇绞桨ㄈ绫绢I(lǐng)域中已知的密鑰交換協(xié)議。還可以使用在客戶端和服務(wù)器之間共享的其他信息在其兩者上產(chǎn)生密鑰。適當(dāng)?shù)拿荑€交換協(xié)議的例子是IKE和AuthIP。從而,圖4B示出了密鑰交換子過程436。應(yīng)該認(rèn)識到,圖4B示意性地指示發(fā)生通過其客戶端和服務(wù)器兩者共享密鑰的交互,并且那些交互可能需要在除圖4B所示之外的時(shí)間交換信息。無論安全關(guān)聯(lián)密鑰如何被傳送到客戶端,過程都還可以包括在塊438處將密鑰導(dǎo)出信息傳送到客戶端。盡管客戶端可能不使用密鑰導(dǎo)出信息用于對分組的加密處理,但是客戶端可以用一些或所有密鑰導(dǎo)出信息標(biāo)記通過安全關(guān)聯(lián)發(fā)送的分組。以此方式標(biāo)記分組允許設(shè)備、特別是不直接參與密鑰交換的中間設(shè)備重新產(chǎn)生安全關(guān)聯(lián)密鑰,使得它們可以處理通過安全關(guān)聯(lián)發(fā)送的分組。塊448圖示了在子過程436中的密鑰交換、包括在塊438處提供密鑰導(dǎo)出信息之后,在塊448,客戶端和服務(wù)器可以使用用一些或所有密鑰導(dǎo)出信息標(biāo)記的分組通過安全關(guān)聯(lián)來通信??梢栽谂c服務(wù)器相關(guān)聯(lián)的任何適當(dāng)?shù)挠布袌?zhí)行過程400。過程400的一些或所有可以由在服務(wù)器內(nèi)的一個(gè)或多個(gè)處理器上執(zhí)行的軟件來控制。此外,過程400的一些或所有步驟可以被卸載到與服務(wù)器相關(guān)聯(lián)的其他硬件。例如,與處理在塊440處傳送的分組相關(guān)聯(lián)的加密功能可以被卸載到該服務(wù)器的網(wǎng)絡(luò)接口內(nèi)的硬件。如上所述,分級分發(fā)系統(tǒng)允許被授權(quán)有權(quán)訪問密鑰的中間設(shè)備處理安全關(guān)聯(lián)中的分組。在一些計(jì)算機(jī)系統(tǒng)中,不是預(yù)期處理安全關(guān)聯(lián)中的分組的所有中間設(shè)備都可以支持這樣的分級密鑰產(chǎn)生。在那些實(shí)施例中,服務(wù)器可以支持與被授權(quán)中間者的直接密鑰交換??梢园慈魏芜m當(dāng)?shù)姆绞接|發(fā)直接密鑰交換。例如,中間者可以經(jīng)由類似于用于包圍區(qū)發(fā)現(xiàn)的信令機(jī)制而用信號通知終端主機(jī)它們對于直接密鑰交換的需要。
圖4B圖示了中間者在檢測到形成安全關(guān)聯(lián)的分組時(shí)可以在導(dǎo)向服務(wù)器的分組中提供信息,其中中間設(shè)備不具有用于該安全關(guān)聯(lián)的安全關(guān)聯(lián)密鑰。該信息可以擔(dān)當(dāng)服務(wù)器參與與中間設(shè)備的直接密鑰交換的請求。例如,圖3圖示了作為建立安全關(guān)聯(lián)的部分傳送的控制分組。例如中間設(shè)備可以在導(dǎo)向服務(wù)器340的控制分組320的字段中設(shè)置標(biāo)志。這樣的標(biāo)志可以用作服務(wù)器340參與與中間設(shè)備的直接密鑰交換協(xié)議的請求。圖4B圖示了當(dāng)服務(wù)器接收到這樣標(biāo)志的分組時(shí),處理可以從決定塊442分支到塊444。在塊444,服務(wù)器可以與中間者共享安全關(guān)聯(lián)密鑰。服務(wù)器可以按本領(lǐng)域中已知的任何適當(dāng)?shù)姆绞焦蚕碓撁荑€,包括通過使用密鑰交換協(xié)議。這樣的過程可以包括確認(rèn)中間設(shè)備被授權(quán)有權(quán)訪問通過安全關(guān)聯(lián)傳送的信息。在所示的實(shí)施例中,在塊442處檢測到的標(biāo)志可以被附到的分組是與建立安全關(guān)聯(lián)相關(guān)聯(lián)的控制分組。在一些場景中,在建立安全關(guān)聯(lián)之后,中間設(shè)備可以進(jìn)入或離開客戶端和服務(wù)器之間的路徑。例如由于網(wǎng)絡(luò)配置或者由于在網(wǎng)絡(luò)工作期間可能變化的負(fù)載或其他條件而改變分組路由的多端口設(shè)備中的有條件的處理的改變,可以發(fā)生網(wǎng)絡(luò)路徑中的這種改變。在其中被授權(quán)處理與安全關(guān)聯(lián)相關(guān)聯(lián)的分組的每個(gè)中間設(shè)備從分組獲得密鑰導(dǎo)出信息的實(shí)施例中,在形成安全關(guān)聯(lián)之后進(jìn)入路徑的任何新的中間者可以訪問分組達(dá)與形成該安全關(guān)聯(lián)時(shí)該路徑中的中間設(shè)備相同的程度。但是,不能如上所述使用分級密鑰執(zhí)行動(dòng)態(tài)密鑰產(chǎn)生的中間設(shè)備在安全關(guān)聯(lián)被形成之后新添加到路徑時(shí),不能作為安全關(guān)聯(lián)形成的部分而用信號通知服務(wù)器執(zhí)行與該中間設(shè)備的直接密鑰交換。從而,根據(jù)一些實(shí)施例的計(jì)算機(jī)系統(tǒng)可以并入用于不支持動(dòng)態(tài)密鑰產(chǎn)生的中間者的獲得適當(dāng)?shù)陌踩P(guān)聯(lián)密鑰的機(jī)制。在圖4B所示的例子中,這樣的中間設(shè)備可以對導(dǎo)向服務(wù)器的任意分組加標(biāo)志。這樣的標(biāo)志可以由服務(wù)器翻譯為對安全關(guān)聯(lián)更新密鑰(re-key)的請求。作為更新密鑰的部分,該中間設(shè)備可以請求直接從服務(wù)器更新密鑰,如結(jié)合決定塊442和444所述。從而,圖4B的過程包括決定塊450,其中如果服務(wù)器接收到用來自中間設(shè)備的執(zhí)行更新密鑰操作的請求加標(biāo)志的分組則處理進(jìn)行分支。如果接收到這樣的請求,則過程從決定塊450分支到?jīng)Q定塊452。在決定塊452處,取決于服務(wù)器確定插入標(biāo)記的中間設(shè)備是否是有效的中間設(shè)備,過程再次進(jìn)行分支??梢允褂糜糜诖_定有效的中間設(shè)備的任何適當(dāng)?shù)姆椒āW鳛橐粋€(gè)例子,服務(wù)器在接收到這樣標(biāo)記的分組時(shí)可以驗(yàn)證該分組的完整性以確定設(shè)置標(biāo)志的中間者處于由在參與安全關(guān)聯(lián)的服務(wù)器和客戶端之間流動(dòng)的認(rèn)證的分組經(jīng)過的路徑中。無論如何確定中間設(shè)備的有效性,如果中間設(shè)備無效,則過程分支到?jīng)Q定塊454。相反,如果請求來自有效的中間者,則過程循環(huán)回到循環(huán)開始420,其中重復(fù)建立安全關(guān)聯(lián)的過程??梢詫γ總€(gè)活動(dòng)的安全關(guān)聯(lián)執(zhí)行在塊422、424、426、428、430、432、434、436、438、440、442、444、450和452處的處理。從而,圖4B圖示了當(dāng)完成對于一個(gè)安全關(guān)聯(lián)的處理時(shí),所述過程可以從決定塊454循環(huán)回到循環(huán)開始420,其中可以對其他活動(dòng)的安全關(guān)聯(lián)重復(fù)該過程。應(yīng)該認(rèn)識到,盡管圖4A和4B圖示了連續(xù)的處理,但是僅為了圖示的簡化而連續(xù)地圖示該處理,并且可以同時(shí)或在任何其他適當(dāng)?shù)臅r(shí)間執(zhí)行對于多個(gè)安全關(guān)聯(lián)的處理。圖4A和4B圖示了對服務(wù)器執(zhí)行的處理,該服務(wù)器是安全關(guān)聯(lián)的一個(gè)主機(jī)。也對客戶端執(zhí)行處理,該客戶端可以是安全關(guān)聯(lián)的第二主機(jī)。圖5提供了可以對客戶端執(zhí)行的處理的例子。圖5的過程開始于塊510,其中發(fā)起與服務(wù)器的安全連接??梢酝ㄟ^對客戶端的處
理、通過對服務(wù)器的處理或者響應(yīng)于任何適當(dāng)?shù)氖录l(fā)起該連接。可以按任何適當(dāng)?shù)姆绞叫纬稍摪踩B接。形成安全連接可能需要將一個(gè)或多個(gè)控制消息從客戶端發(fā)送到服務(wù)器,如塊512處的處理所反映的。塊512處的處理可能需要發(fā)送諸如控制消息320 (圖3)之類的控制消息或者由客戶端發(fā)送和/或接收一個(gè)或多個(gè)控制消息。形成安全連接還可能需要執(zhí)行與服務(wù)器的密鑰交換協(xié)議。在塊520處,客戶端可以參與這樣的密鑰交換其結(jié)果是,客戶端從服務(wù)器獲得安全關(guān)聯(lián)密鑰。在一些實(shí)施例中,可能要求不對客戶端修改以便如上所述使用分級密鑰。從而,可以使用如本領(lǐng)域中已知的技術(shù)執(zhí)行塊510、512和520處的處理。但是,可以執(zhí)行任何適當(dāng)?shù)奶幚?。一旦形成了安全關(guān)聯(lián),處理就可以前進(jìn)到塊522,其中客戶端接收密鑰導(dǎo)出信息。如上所述,可以使用密鑰導(dǎo)出信息來標(biāo)記使用安全關(guān)聯(lián)發(fā)送的消息,使得接收那些分組的任何被授權(quán)的設(shè)備可以產(chǎn)生適當(dāng)?shù)陌踩P(guān)聯(lián)密鑰。在所示的實(shí)施例中,無論是由客戶端還是服務(wù)器發(fā)起,根據(jù)該安全關(guān)聯(lián)傳送的分組被用密鑰導(dǎo)出信息標(biāo)記。從而,在塊522處,客戶端接收并存儲該密鑰導(dǎo)出信息。在塊522處接收導(dǎo)出信息可能需要從包含該密鑰導(dǎo)出信息的服務(wù)器接收分組。但是,在塊522可以使用用于向客戶端提供密鑰導(dǎo)出信息的任何適當(dāng)?shù)臋C(jī)制。一旦客戶端具有安全關(guān)聯(lián)密鑰和密鑰導(dǎo)出信息兩者,其就可以開始使用該安全關(guān)聯(lián)傳送分組。在塊524處,使用安全關(guān)聯(lián)密鑰產(chǎn)生分組??梢允褂帽绢I(lǐng)域中已知的用于根據(jù)安全關(guān)聯(lián)來產(chǎn)生分組的技術(shù)來執(zhí)行塊524處的處理。在塊526,可以將在塊522處接收到的密鑰導(dǎo)出信息附于在塊524處產(chǎn)生的分組。在其中存在四個(gè)級別的密鑰層級的諸如圖2A所示的實(shí)施例中,密鑰導(dǎo)出信息可以包括來自所有級別的密鑰產(chǎn)生的密鑰導(dǎo)出信息。從而,在塊526處添加的信息可以包括包圍區(qū)對信息、服務(wù)器身份信息和由服務(wù)器用來產(chǎn)生安全關(guān)聯(lián)密鑰的值。但是,在塊526處添加的具體信息可以取決于密鑰層級中的級別數(shù)量以及用于產(chǎn)生層級的每個(gè)級別處的密鑰的具體導(dǎo)出信息。一旦分組被格式化,處理就前進(jìn)到塊528。在塊528處,客戶端將分組傳輸?shù)椒?wù)器。在塊530,客戶端可以接收來自服務(wù)器的分組。在塊532,客戶端可以使用在塊520中獲得的安全關(guān)聯(lián)密鑰來解密和/或驗(yàn)證接收的分組??梢允褂帽绢I(lǐng)域中已知的技術(shù)執(zhí)行塊528、530和532處的處理。但是,可以使用用于傳輸、接收和解密和/或驗(yàn)證分組的任何適當(dāng)?shù)臋C(jī)制。然后過程可以前進(jìn)到?jīng)Q定塊540,其中取決于是否要使用安全關(guān)聯(lián)發(fā)送或接收更多數(shù)據(jù),所述過程可以進(jìn)行分支。當(dāng)仍有更多數(shù)據(jù)要處理時(shí),過程循環(huán)回到塊524,其中客戶端可以使用安全關(guān)聯(lián)產(chǎn)生和/或接收進(jìn)一步的分組。當(dāng)沒有剩下進(jìn)一步的數(shù)據(jù)用于客戶端和服務(wù)器之間的通信時(shí),圖5的過程可以結(jié)束。圖6圖示可以由中間設(shè)備執(zhí)行的過程。如上所述,中間設(shè)備可以參與包圍區(qū)發(fā)現(xiàn)過程。另外,中間設(shè)備可以監(jiān)視和處理根據(jù)涉及其他設(shè)備的安全關(guān)聯(lián)傳輸?shù)姆纸M。
圖6圖示在塊610處中間設(shè)備可以監(jiān)視分組。在塊610處,中間設(shè)備可以檢測經(jīng)過網(wǎng)絡(luò)的分組??梢允褂帽绢I(lǐng)域中已知的電路和技術(shù)來執(zhí)行此監(jiān)視,盡管任何適當(dāng)?shù)姆椒梢杂糜跈z測經(jīng)過網(wǎng)絡(luò)傳輸?shù)姆纸M。當(dāng)中間設(shè)備檢測到分組時(shí),取決于該分組是否被標(biāo)記為發(fā)現(xiàn)分組,處理可以在決定塊612處分支。在圖3的實(shí)施例中,可以通過將信息元素318包括在諸如字段314的字段中來將分組標(biāo)記為發(fā)現(xiàn)分組。但是,可以使用任何適當(dāng)?shù)臋C(jī)制來指定發(fā)現(xiàn)分組。無論標(biāo)識發(fā)現(xiàn)分組的具體方式如何,當(dāng)發(fā)現(xiàn)了發(fā)現(xiàn)分組時(shí),處理可以從決定塊612分支到塊614。在塊614處,中間設(shè)備可以將其包圍區(qū)的指示附于一個(gè)或多個(gè)分組。在一些實(shí)施例中,包圍區(qū)信息被附于的分組可以與發(fā)現(xiàn)分組相同。在該場景中,可以由與產(chǎn)生該發(fā)現(xiàn)分組的主機(jī)相對的主機(jī)接收在塊614處的包圍區(qū)發(fā)現(xiàn)信息??商娲?,如圖3所示,可以將包圍區(qū)信息附于導(dǎo)向產(chǎn)生了該發(fā)現(xiàn)分組的主機(jī)的隨后的分組。無論對該發(fā)現(xiàn)分組的具體響應(yīng)如何,一旦該響應(yīng)完成,圖6的處理就可以結(jié)束。如果通過在塊610處的監(jiān)視檢測到的分組不包含發(fā)現(xiàn)分組,則所述過程可以從決定塊612分支到塊630。在塊630處,中間設(shè)備可以對該分組執(zhí)行加密功能,這可能需要基于所接收的分組中的密鑰導(dǎo)出信息以及對該中間設(shè)備可用的層級中的較高級別處的密鑰產(chǎn)生安全關(guān)聯(lián)密鑰。該中間設(shè)備所執(zhí)行的具體加密功能可以取決于中間設(shè)備的特性以及分組中的信息。無論所執(zhí)行的加密功能如何,一旦它們完成,圖6的過程就可以結(jié)束。如上所述,分級密鑰分發(fā)系統(tǒng)的一種使用是其有助于將可以監(jiān)視使用安全關(guān)聯(lián)傳送的分組的中間設(shè)備并入計(jì)算機(jī)系統(tǒng)中。存在可以由可以監(jiān)視通過安全關(guān)聯(lián)保護(hù)的網(wǎng)絡(luò)業(yè)務(wù)的中間設(shè)備執(zhí)行的多個(gè)網(wǎng)絡(luò)管理或保護(hù)功能。在一些實(shí)施例中,可以為中間設(shè)備供應(yīng)允許它們使用與網(wǎng)絡(luò)分組相關(guān)聯(lián)的密鑰導(dǎo)出信息產(chǎn)生安全關(guān)聯(lián)密鑰的密鑰??梢杂锰峁┌踩鼑鷧^(qū)卸載支持的網(wǎng)絡(luò)接口硬件實(shí)現(xiàn)這樣的設(shè)備。但是,在大企業(yè)中,不是所有的中間設(shè)備都可以具有這樣的網(wǎng)絡(luò)接口硬件,并且可能不另外支持使用密鑰產(chǎn)生信息產(chǎn)生安全關(guān)聯(lián)密鑰,或者可能無權(quán)訪問提供從其導(dǎo)出安全關(guān)聯(lián)密鑰的較高級別密鑰的密鑰服務(wù)器。從而,在一些實(shí)施例中,用在計(jì)算機(jī)系統(tǒng)中的協(xié)議可以提供將一個(gè)或多個(gè)安全關(guān)聯(lián)或者較高級別密鑰直接提供給中間設(shè)備的機(jī)制。圖7是服務(wù)器和中間設(shè)備之間的交互的例子,其中中間設(shè)備可以發(fā)信號通知服務(wù)器其需要安全關(guān)聯(lián)密鑰或者較高級別密鑰的直接傳送,并且服務(wù)器可以用該密鑰來響應(yīng)。圖7的過程開始于子過程700,在該子過程700期間,服務(wù)器創(chuàng)建與客戶端的安全關(guān)聯(lián),并且還通過直接密鑰交換將安全關(guān)聯(lián)密鑰提供給中間設(shè)備。子過程700開始于塊710,其中服務(wù)器用服務(wù)器支持與中間設(shè)備的直接密鑰交換的指示符來標(biāo)記用于建立安全關(guān)聯(lián)的控制分組的至少一個(gè)。在塊710處應(yīng)用的標(biāo)記可以是任何適當(dāng)?shù)男问?。例如,在圖3所示的消息交換中,盡管具有不同的值但是類似于信息元素318的信息元素可以被置于控制分組310中。在塊712處,服務(wù)器可以開始建立與客戶端的安全關(guān)聯(lián)的過程。建立安全關(guān)聯(lián)可以包括發(fā)送在塊710處產(chǎn)生的標(biāo)記的分組。作為建立安全關(guān)聯(lián)的部分在服務(wù)器和客戶端之間交換的分組將經(jīng)過中間設(shè)備。在塊720,中間設(shè)備監(jiān)視網(wǎng)絡(luò)業(yè)務(wù)并檢測與建立安全關(guān)聯(lián)相關(guān)聯(lián)的在服務(wù)器和客戶端之間傳送的分組。當(dāng)檢測到這樣的分組時(shí),處理可以前進(jìn)到?jīng)Q定塊722,其中取決于中間設(shè)備是否可以使用安全包圍區(qū)密鑰產(chǎn)生來產(chǎn)生用于處理該分組的密鑰,所述過程可以進(jìn)行分支。如果是,則子過程700可以完成,處理傳遞到用于中間設(shè)備的塊752和用于服務(wù)器的塊750。在塊750處,服務(wù)器可以使用與客戶端建立的安全關(guān)聯(lián)來產(chǎn)生網(wǎng)絡(luò)業(yè)務(wù)。作為安
全關(guān)聯(lián)的部分而發(fā)送的分組將在塊752處被中間設(shè)備檢測。因?yàn)橹虚g設(shè)備支持使用安全關(guān)聯(lián)密鑰的處理,所以中間設(shè)備可以產(chǎn)生對在塊750處產(chǎn)生的網(wǎng)絡(luò)業(yè)務(wù)執(zhí)行加密處理所需的安全關(guān)聯(lián)密鑰。從而,在塊752處,中間設(shè)備可以監(jiān)視并另外處理該網(wǎng)絡(luò)業(yè)務(wù)。相反,如果中間設(shè)備不能產(chǎn)生密鑰,則所述過程可以在決定塊722處分支到?jīng)Q定塊724。該中間設(shè)備可能由于多個(gè)原因的任意一個(gè)而不能產(chǎn)生密鑰。例如,該中間設(shè)備可能根本不支持安全包圍區(qū)密鑰產(chǎn)生??商娲?,該設(shè)備可能支持密鑰產(chǎn)生,但是可能缺少用于處理接收的分組的適當(dāng)級別處的密鑰。在所示的實(shí)施例中,無論中間設(shè)備為何不能產(chǎn)生密鑰,處理都分支到?jīng)Q定塊714。但是,其中取決于不能產(chǎn)生密鑰的原因而執(zhí)行不同的處理的其他實(shí)施例是可能的。在決定塊724處,所述過程可以再次進(jìn)行分支。在塊724處,取決于中間設(shè)備是否有權(quán)訪問由服務(wù)器建立的安全關(guān)聯(lián)密鑰,所述過程進(jìn)行分支??梢越?jīng)過一些帶外(out Ofband)過程或按任何其他適當(dāng)方式使得密鑰對于中間設(shè)備可用。無論如何使得那些密鑰可能對于中間設(shè)備可用,如果中間設(shè)備具有對作為安全關(guān)聯(lián)的部分在服務(wù)器和客戶端之間產(chǎn)生的網(wǎng)絡(luò)業(yè)務(wù)執(zhí)行加密處理所需的安全關(guān)聯(lián)密鑰,則所述過程可以從決定塊724分支到塊752和750,其中如上所述服務(wù)器和客戶端可以產(chǎn)生網(wǎng)絡(luò)業(yè)務(wù),這可以由中間設(shè)備監(jiān)視。但是,如果該中間設(shè)備不支持安全關(guān)聯(lián)密鑰的產(chǎn)生或者無權(quán)另外訪問安全關(guān)聯(lián)密鑰或者任何較高級別密鑰,則所述過程可以從決定塊724分支到塊726。在塊726處,中間設(shè)備發(fā)信號通知服務(wù)器其需要用于在塊712建立的安全關(guān)聯(lián)的安全關(guān)聯(lián)密鑰或較高級別密鑰。中間設(shè)備可以按任何適當(dāng)?shù)姆绞綄⒋诵枰眯盘柾ㄖ?wù)器。作為一個(gè)例子,中間設(shè)備可以用需要安全關(guān)聯(lián)密鑰的指示來標(biāo)記諸如控制分組320 (圖3)之類的控制分組??梢詫⑷魏芜m當(dāng)?shù)男畔⒃靥砑拥椒纸M以用信號通知服務(wù)器對安全關(guān)聯(lián)密鑰或較高級別密鑰的需要。當(dāng)服務(wù)器接收到由中間設(shè)備在726處標(biāo)記的分組時(shí),服務(wù)器可以在塊740發(fā)起密鑰交換過程。在塊740處,服務(wù)器執(zhí)行與中間設(shè)備的密鑰交換。用于密鑰交換的格式可以是與用于向客戶端提供安全關(guān)聯(lián)密鑰的相同的格式。但是,任何適當(dāng)?shù)膮f(xié)議可以用于塊740和742處的密鑰交換。密鑰交換消息還可以被包括在服務(wù)器和客戶端之間傳遞的控制分組中,很像是這樣包括了指示對直接密鑰交換的支持或需要的標(biāo)記。此外,密鑰交換可能涉及服務(wù)器聯(lián)系密鑰服務(wù)器以獲得適合于中間者的較高層密鑰,其被加密使得僅中間者(而不是服務(wù)器)可以對其解密?!┩瓿闪嗣荑€交換,過程就可以繼續(xù)到塊750和752,其中如上所述服務(wù)器和客戶端可以使用安全關(guān)聯(lián)產(chǎn)生網(wǎng)絡(luò)業(yè)務(wù),這可以由中間設(shè)備使用在塊742處獲得的安全關(guān)聯(lián)密鑰在塊752處監(jiān)視。因?yàn)榉?wù)器和中間設(shè)備支持根據(jù)圖7所示的協(xié)議的直接密鑰交換,圖7的過程是可能的。在服務(wù)器不支持直接密鑰交換的實(shí)施例中,將不用在塊710處提供的指示標(biāo)記在塊720處接收的分組。在該場景中,中間設(shè)備可以放棄請求直接密鑰交換,比如在塊726處所示。取而代之,中間設(shè)備可以采取一個(gè)或多個(gè)其他的動(dòng)作來嘗試按另一方式獲得安全關(guān)聯(lián)密鑰,或者可以記錄不能監(jiān)視安全關(guān)聯(lián)的網(wǎng)絡(luò)業(yè)務(wù)的錯(cuò)誤或其他指示。此外,應(yīng)該認(rèn)識到,圖7的過程依賴于在服 務(wù)器正建立與客戶端的安全關(guān)聯(lián)時(shí)交換的控制分組中的在服務(wù)器和中間設(shè)備之間傳送的信息。在一些場景中,在建立安全關(guān)聯(lián)時(shí),中間設(shè)備可能不在服務(wù)器和客戶端之間的路徑中。不過,中間設(shè)備可能能夠觸發(fā)直接密鑰交換。圖8圖示了可以在該場景中執(zhí)行的處理。圖8的處理開始于塊812,其中服務(wù)器已經(jīng)根據(jù)建立的安全關(guān)聯(lián)與客戶端通信。在塊820處,中間設(shè)備可以監(jiān)視在客戶端和服務(wù)器之間交換的分組。但是,因?yàn)橹虚g設(shè)備缺少用于該安全關(guān)聯(lián)的安全關(guān)聯(lián)密鑰,所以其不能對那些分組執(zhí)行加密功能。例如,它不能解密分組中的加密的信息或者在轉(zhuǎn)發(fā)驗(yàn)證的分組時(shí)按任何方式更改已經(jīng)被分配的分組。但是,作為塊820處的監(jiān)視的部分,中間設(shè)備可以標(biāo)識服務(wù)器已經(jīng)創(chuàng)建了安全關(guān)聯(lián)。在決定塊822處,取決于中間設(shè)備是否支持安全關(guān)聯(lián)密鑰的產(chǎn)生并已經(jīng)獲得所需的較高級別密鑰,所述過程可以進(jìn)行分支。如果是,則所述過程可以分支到塊850和852。在塊852處,作為與客戶端的安全關(guān)聯(lián)的部分,服務(wù)器產(chǎn)生網(wǎng)絡(luò)業(yè)務(wù)。在塊852處,中間設(shè)備可以監(jiān)視該網(wǎng)絡(luò)業(yè)務(wù),包括使用其已經(jīng)產(chǎn)生的安全關(guān)聯(lián)密鑰執(zhí)行加密功能。相反,如果中間設(shè)備不支持安全關(guān)聯(lián)密鑰的產(chǎn)生,則所述過程可以分支到?jīng)Q定塊824。在決定塊824,取決于中間設(shè)備是否已經(jīng)另外獲得了安全關(guān)聯(lián)密鑰,所述過程可以進(jìn)行分支。如果是,則所述過程分支到塊850和852,其中作為安全關(guān)聯(lián)的部分,客戶端和服務(wù)器產(chǎn)生網(wǎng)絡(luò)業(yè)務(wù),這由中間設(shè)備使用安全關(guān)聯(lián)密鑰監(jiān)視。如果中間設(shè)備不具有安全關(guān)聯(lián)密鑰并且不能產(chǎn)生它們,則所述過程從決定塊824分支到塊826。在塊826處,中間設(shè)備向服務(wù)器提供指示其不具有安全關(guān)聯(lián)密鑰的信號。該信號可以按任何適當(dāng)?shù)姆绞教峁?。例如,?dāng)根據(jù)IPsec傳送分組時(shí),塊826處的處理可能涉及在去往服務(wù)器的IPsec分組中設(shè)置標(biāo)志。在圖3的例子中,可以在諸如分組370之類的分組中設(shè)置標(biāo)志。在塊826處可以采用用于向服務(wù)器發(fā)信號通知的任何適當(dāng)?shù)臋C(jī)制。當(dāng)服務(wù)器檢測到來自中間設(shè)備的信號時(shí),服務(wù)器上的處理繼續(xù)到塊830。在塊830處,服務(wù)器檢驗(yàn)在塊826處標(biāo)記的分組由在服務(wù)器和客戶端之間的路徑中的被授權(quán)的中間設(shè)備標(biāo)記。任何適當(dāng)?shù)臋C(jī)制可以用于執(zhí)行該確定。例如,服務(wù)器可以檢驗(yàn)分組的完整性,由此得出結(jié)論其源自于客戶端,因此必須已經(jīng)由具有對客戶端和服務(wù)器之間的路徑上的分組的訪問的中間者標(biāo)記。當(dāng)在塊830處的處理確定中間設(shè)備是應(yīng)該獲得安全關(guān)聯(lián)密鑰的被授權(quán)的中間者時(shí),服務(wù)器可以發(fā)起與客戶端的安全關(guān)聯(lián)的密鑰更新操作。重復(fù)密鑰更新操作允許中間設(shè)備請求直接建鑰。從而,在塊830的檢驗(yàn)之后,可以執(zhí)行如上結(jié)合圖7所述的子過程700。當(dāng)然,如果不能驗(yàn)證中間者,則所述過程可能終止或者可以采取避免使未授權(quán)設(shè)備觸發(fā)密鑰更新的其他動(dòng)作。由于執(zhí)行子過程700,中間設(shè)備可以具有用于服務(wù)器和客戶端之間的安全關(guān)聯(lián)的安全關(guān)聯(lián)密鑰。從而,在塊850和852處,服務(wù)器和客戶端可以產(chǎn)生網(wǎng)絡(luò)業(yè)務(wù),這可以由中間設(shè)備監(jiān)視。因?yàn)橹虚g設(shè)備有權(quán)訪問安全關(guān)聯(lián)密鑰,所以該監(jiān)視可以包括執(zhí)行加密功能??梢允褂萌魏芜m當(dāng)?shù)挠布Y源在主機(jī)和中間設(shè)備內(nèi)執(zhí)行上述處理。但是,分級密鑰分發(fā)系統(tǒng)的一種使用是實(shí)現(xiàn)一些加密功能的硬件卸載處理。圖9A圖示了可以使用分級密鑰來支持硬件卸載處理的計(jì)算設(shè)備的架構(gòu)。在圖9A的例子中,設(shè)備910包括網(wǎng)絡(luò)接口硬件920。網(wǎng)絡(luò)接口硬件920可以是網(wǎng)絡(luò)接口卡或其他適當(dāng)?shù)挠布M件。網(wǎng)絡(luò)接口硬件920可以包含按任何適當(dāng)?shù)姆绞綄?shí)現(xiàn)的電路。例如,其可以包含一個(gè)或多個(gè)專用集成電路、可編程邏輯器件或被編程有微代碼用于執(zhí)
行與到網(wǎng)絡(luò)、示意性地圖示為網(wǎng)絡(luò)922的接口相關(guān)聯(lián)的功能的微處理器。網(wǎng)絡(luò)接口硬件920可以包括本領(lǐng)域中已知的用于執(zhí)行已知的網(wǎng)絡(luò)接口功能的硬件組件。另外,網(wǎng)絡(luò)接口硬件920可以包括可以基于存儲在網(wǎng)絡(luò)接口卡上的來自密鑰層級的較高級別的密鑰來產(chǎn)生安全關(guān)聯(lián)密鑰的硬件組件。從而,圖9A圖示了網(wǎng)絡(luò)接口硬件920包括存儲器926。存儲在存儲器926中的可以是包含可以從其產(chǎn)生安全關(guān)聯(lián)密鑰的一個(gè)或多個(gè)成對的密鑰的數(shù)據(jù)結(jié)構(gòu)928。在圖9A的例子中,數(shù)據(jù)結(jié)構(gòu)928被圖示為處于其中其保持了三個(gè)成對的密鑰(表示為密鑰Ku、Ku和K。)的狀態(tài)。當(dāng)設(shè)備910位于包圍區(qū)I內(nèi)并與包圍區(qū)I內(nèi)的其他設(shè)備以及包圍區(qū)2和3中的設(shè)備通信時(shí),例如此狀態(tài)可能是適當(dāng)?shù)摹5?,?yīng)該認(rèn)識到,圖9A是網(wǎng)絡(luò)設(shè)備的簡化圖示并且網(wǎng)絡(luò)設(shè)備可以包含遠(yuǎn)多于三個(gè)密鑰。無論數(shù)據(jù)結(jié)構(gòu)928中包含的密鑰數(shù)量如何,密鑰可以由安全關(guān)聯(lián)密鑰產(chǎn)生器電路930訪問。安全關(guān)聯(lián)密鑰產(chǎn)生器電路930可以接收與經(jīng)過網(wǎng)絡(luò)922接收的分組相結(jié)合的密鑰導(dǎo)出信息。響應(yīng)于此,安全關(guān)聯(lián)密鑰產(chǎn)生器電路930可以訪問存儲器926以從數(shù)據(jù)結(jié)構(gòu)928獲得適當(dāng)?shù)某蓪γ荑€。使用成對的密鑰,安全關(guān)聯(lián)密鑰產(chǎn)生器930可以產(chǎn)生安全關(guān)聯(lián)密鑰。所產(chǎn)生的安全關(guān)聯(lián)密鑰可以被提供給網(wǎng)絡(luò)接口硬件920上的其他組件用于在執(zhí)行加密功能中使用。在圖9A所示的例子中,安全關(guān)聯(lián)密鑰被提供給解密/驗(yàn)證電路924。解密/驗(yàn)證電路924使用安全關(guān)聯(lián)密鑰來解密或驗(yàn)證該分組。一旦被解密或驗(yàn)證,分組就可以被提供給設(shè)備910內(nèi)的架構(gòu)的較高級別處的組件。如圖9A所示,一旦已經(jīng)對接收的分組執(zhí)行了加密功能,就可以通過驅(qū)動(dòng)器940將該分組提供給操作系統(tǒng)950內(nèi)的網(wǎng)絡(luò)堆棧952。從那里,可以將該分組提供給應(yīng)用960。可以使用已知的技術(shù)執(zhí)行驅(qū)動(dòng)器940、操作系統(tǒng)950和應(yīng)用960內(nèi)的這樣的處理。如本領(lǐng)域中已知的。驅(qū)動(dòng)器940、操作系統(tǒng)950和應(yīng)用960的可能的實(shí)現(xiàn)方式是作為由設(shè)備910內(nèi)的中央處理單元執(zhí)行的計(jì)算機(jī)可執(zhí)行指令。除了執(zhí)行與分組的接收相關(guān)聯(lián)的處理之外,網(wǎng)絡(luò)接口硬件920可選地可操作以執(zhí)行與分組的傳輸相關(guān)聯(lián)的處理。當(dāng)用于傳輸時(shí),不同于通過網(wǎng)絡(luò)922接收密鑰導(dǎo)出信息,安全關(guān)聯(lián)密鑰產(chǎn)生器930可以從驅(qū)動(dòng)器940或者設(shè)備910內(nèi)的一些其他組件接收密鑰導(dǎo)出信息。無論密鑰導(dǎo)出信息的源如何,安全關(guān)聯(lián)密鑰產(chǎn)生器電路930都可以訪問數(shù)據(jù)表922以獲得適當(dāng)?shù)某蓪Φ拿荑€并將安全關(guān)聯(lián)密鑰提供給網(wǎng)絡(luò)接口硬件920內(nèi)的其他組件。
圖9A圖示了被配置為擔(dān)當(dāng)安全包圍區(qū)中的服務(wù)器的設(shè)備。類似的架構(gòu)可以用于計(jì)算機(jī)系統(tǒng)內(nèi)的其他設(shè)備。例如,通常相同的架構(gòu)可以用于中間設(shè)備,盡管中間設(shè)備可能具有至少兩個(gè)網(wǎng)絡(luò)連接并可能具有網(wǎng)絡(luò)接口硬件920的兩個(gè)副本。當(dāng)用于實(shí)現(xiàn)中間設(shè)備時(shí),應(yīng)用960可以是執(zhí)行網(wǎng)絡(luò)監(jiān)視功能或可以由中間設(shè)備執(zhí)行的其他功能的應(yīng)用。另外,中間設(shè)備可以存儲與服務(wù)器不同的成對的密鑰。圖9B圖示了如果設(shè)備910被配置為中間設(shè)備則可以用來替換數(shù)據(jù)表928的數(shù)據(jù)表958的可替代配置。如在圖9B中可見,當(dāng)被配置用于中間設(shè)備時(shí),數(shù)據(jù)表958可以包含用于多于一個(gè)包圍區(qū)的成對的密鑰。在此情況下,數(shù)據(jù)表958被示出為包含與包圍區(qū)I相關(guān)聯(lián)的成對的密鑰。另外,數(shù)據(jù)表958包含用于包圍區(qū)2和3的成對的密鑰。數(shù)據(jù)表958的此配置可能適合用于例如接收到和來自包圍區(qū)I的以及在包圍區(qū)2和3之間的通信的中間設(shè)備。應(yīng)該認(rèn)識到,盡管包含成對的密鑰的數(shù)據(jù)表的配置可能基于其中數(shù)據(jù)表存在于整個(gè)網(wǎng)絡(luò)中以及對于其該設(shè)備
將有權(quán)訪問消息業(yè)務(wù)的包圍區(qū)中的設(shè)備的位置。因此已經(jīng)描述了本發(fā)明的至少一個(gè)實(shí)施例的若干個(gè)方面,將認(rèn)識到,各種更改、修改和改進(jìn)對本領(lǐng)域技術(shù)人員很容易想到。這樣的更改、修改和改進(jìn)旨在作為本公開的一部分,并且旨在在本發(fā)明的精神和范圍內(nèi)。因此,上述描述和附圖僅僅是為了舉例。本發(fā)明的上述實(shí)施例可以按多種方式的任意一種實(shí)現(xiàn)。例如,可以使用硬件、軟件或其組合來實(shí)現(xiàn)各實(shí)施例。當(dāng)以軟件實(shí)現(xiàn)時(shí),軟件代碼可以在任何適當(dāng)處理器或處理器集合上實(shí)現(xiàn),無論其被提供在單個(gè)計(jì)算機(jī)中還是分布在多個(gè)計(jì)算機(jī)之間。此外,應(yīng)該認(rèn)識到,計(jì)算機(jī)可以體現(xiàn)在多種形式的任意一種中,比如支架安裝的計(jì)算機(jī)、臺式計(jì)算機(jī)、膝上型計(jì)算機(jī)或平板計(jì)算機(jī)。另外,計(jì)算機(jī)可以嵌入在通常不被認(rèn)為是計(jì)算機(jī)但是具有適當(dāng)?shù)奶幚砟芰Φ脑O(shè)備中,包括個(gè)人數(shù)字助理(PDA)、智能電話或任何其他適當(dāng)?shù)谋銛y或固定電子設(shè)備。此外,計(jì)算機(jī)可以具有一個(gè)或多個(gè)輸入和輸出設(shè)備。這些設(shè)備尤其可以用于呈現(xiàn)用戶界面。可以用于提供用戶界面的輸出設(shè)備的例子包括用于輸出的視覺呈現(xiàn)的打印機(jī)或顯示屏以及用于輸出的聽覺呈現(xiàn)的揚(yáng)聲器或其他聲音產(chǎn)生設(shè)備??梢杂糜谟脩艚缑娴妮斎朐O(shè)備的例子包括鍵盤以及諸如鼠標(biāo)、觸摸板和數(shù)字化板的指向設(shè)備。作為另一例子,計(jì)算機(jī)可以通過語音識別或按其他聽覺格式接收輸入信息。這樣的計(jì)算機(jī)可以通過一個(gè)或多個(gè)網(wǎng)絡(luò)按任何適當(dāng)?shù)男问交ミB,包括作為局域網(wǎng)或廣域網(wǎng),比如企業(yè)網(wǎng)絡(luò)或因特網(wǎng)。這樣的網(wǎng)絡(luò)可以基于任何適當(dāng)?shù)募夹g(shù)并且可以根據(jù)任何適當(dāng)?shù)膮f(xié)議來操作,并可以包括無線網(wǎng)絡(luò)、有線網(wǎng)絡(luò)或光纖網(wǎng)絡(luò)。此外,在此列出的各種方法或過程可以被編碼為可在一個(gè)或多個(gè)采用多種操作系統(tǒng)或平臺的任意一個(gè)的處理器上執(zhí)行的軟件。另外,這種軟件可以使用多種適當(dāng)?shù)木幊陶Z言和/或編程或腳本工具的任意一種來寫出,并且還可以被編譯為在框架或虛擬機(jī)器上執(zhí)行的可執(zhí)行機(jī)器語言代碼或中間代碼。在此方面,本發(fā)明可以體現(xiàn)為用一個(gè)或多個(gè)程序編碼的計(jì)算機(jī)可讀介質(zhì)(或多個(gè)計(jì)算機(jī)可讀介質(zhì))(例如計(jì)算機(jī)存儲器、一個(gè)或多個(gè)軟盤、致密盤、光盤、磁帶、閃存、現(xiàn)場可編程門陣列或其他半導(dǎo)體器件中的電路配置或者其他切實(shí)的計(jì)算機(jī)存儲介質(zhì)),該一個(gè)或多個(gè)程序在一個(gè)或多個(gè)計(jì)算機(jī)或其他處理器上執(zhí)行時(shí)執(zhí)行實(shí)現(xiàn)上述本發(fā)明的各個(gè)實(shí)施例的方法。該一個(gè)或多個(gè)計(jì)算機(jī)可讀介質(zhì)可以是可運(yùn)輸?shù)?,使得存儲在其上的一個(gè)或多個(gè)程序可以被加載到一個(gè)或多個(gè)不同的計(jì)算機(jī)或其他處理器以實(shí)現(xiàn)上述本發(fā)明的各個(gè)方面。在此以一般意思使用措辭“程序”和“軟件”以指代可以被采用來編程計(jì)算機(jī)或其他處理器以實(shí)現(xiàn)上述本發(fā)明的各個(gè)方面的任何類型的計(jì)算機(jī)代碼或計(jì)算機(jī)可執(zhí)行指令集。另外,應(yīng)該認(rèn)識到,根據(jù)此實(shí)施例的一個(gè)方面,當(dāng)被執(zhí)行時(shí)執(zhí)行本發(fā)明的方法的一個(gè)或多個(gè)計(jì)算機(jī)程序不需要存在于單個(gè)計(jì)算機(jī)或處理器上,而是可以按模塊化形式分布在多個(gè)不同的計(jì)算機(jī)或處理器之間以實(shí)現(xiàn)本發(fā)明的各個(gè)方面。
計(jì)算機(jī)可執(zhí)行指令可以是由一個(gè)或多個(gè)計(jì)算機(jī)和其他設(shè)備執(zhí)行的許多形式的,t匕如程序模塊。通常,程序模塊包括執(zhí)行具體任務(wù)或?qū)崿F(xiàn)具體的抽象數(shù)據(jù)類型的例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等等。典型地,程序模塊的功能性可以如各個(gè)實(shí)施例中期望的那樣來組合或分布。此外,數(shù)據(jù)結(jié)構(gòu)可以按任何適當(dāng)?shù)男问酱鎯υ谟?jì)算機(jī)可讀介質(zhì)中。為了簡化圖示,數(shù)據(jù)結(jié)構(gòu)可以被示出為具有通過在數(shù)據(jù)結(jié)構(gòu)中的位置而相關(guān)的字段。這樣的關(guān)系同樣可以通過為在計(jì)算機(jī)可讀介質(zhì)中具有傳達(dá)字段之間的關(guān)系的位置的字段分配存儲而實(shí)現(xiàn)。但是,可以使用任何適當(dāng)?shù)臋C(jī)制來建立數(shù)據(jù)結(jié)構(gòu)的字段中的信息之間的關(guān)系,包括通過使用指針、標(biāo)簽或者建立數(shù)據(jù)元素之間的關(guān)系的其他機(jī)制。本發(fā)明的各個(gè)方面可以單獨(dú)、組合或者在未在以上所述的實(shí)施例中具體討論的多種布置中使用,因此其應(yīng)用不限于以上描述中闡述以及附圖中所示的組件的細(xì)節(jié)和布置。例如,在一個(gè)實(shí)施例中描述的方面可以按任何方式與在其他實(shí)施例中描述的方面相組合。此外,本發(fā)明可以體現(xiàn)為方法,已經(jīng)提供了其例子。作為該方法的部分而執(zhí)行的動(dòng)作可以按任何適當(dāng)?shù)姆绞蕉判?。從而,可以?gòu)建其中按不同于所示的順序執(zhí)行各動(dòng)作的實(shí)施例,這可以包括同時(shí)執(zhí)行某些動(dòng)作,盡管其在所說明的實(shí)施例中被示出為連續(xù)的動(dòng)作。權(quán)利要求中的用于修飾權(quán)利要求元素的諸如“第一”、“第二”、“第三”等等序數(shù)術(shù)語的使用本身并不意味任何優(yōu)先級、先后順序或一個(gè)權(quán)利要求元素在另一之上的順序或者執(zhí)行方法的各動(dòng)作的時(shí)間順序,而是僅僅用作將具有某個(gè)名稱的一個(gè)權(quán)利要求元素與具有相同名稱(但使用了序數(shù)術(shù)語)的另一權(quán)利要求元素相區(qū)分的標(biāo)簽,以區(qū)分權(quán)利要求元素。此外,在此使用的措詞和術(shù)語是為了描述的目的,并且不應(yīng)當(dāng)被認(rèn)為是限制。“包括”、或“具有”、“包含”、“涉及”以及其變化的在此的使用意味包含在其之后所列出的各項(xiàng)及其等效物以及另外的項(xiàng)。
權(quán)利要求
1.一種操作計(jì)算機(jī)系統(tǒng)以提供安全通信的方法,所述計(jì)算機(jī)系統(tǒng)包含通過網(wǎng)絡(luò)互連并被組織到包圍區(qū)的多個(gè)主機(jī)設(shè)備,所述方法包含 在主機(jī)設(shè)備(340)處,經(jīng)由網(wǎng)絡(luò)接收分組; 在主機(jī)設(shè)備中,分析分組,所述分析包含 標(biāo)識分組中一個(gè)或多個(gè)標(biāo)記(330,332,334)的鏈,每個(gè)標(biāo)記指示包圍區(qū); 基于一個(gè)或多個(gè)標(biāo)記的鏈,確定主機(jī)設(shè)備所位于的包圍區(qū)(110A, 110B, 110C)。
2.如權(quán)利要求I所述的方法,其中 一個(gè)或多個(gè)標(biāo)記的鏈中的每一個(gè)標(biāo)記包含被分配給中間設(shè)備(360,362,364)的值,所述中間設(shè)備在分組通過網(wǎng)絡(luò)時(shí)處理該分組;并且所述分析進(jìn)一步包含 基于一個(gè)或多個(gè)標(biāo)記的鏈,確定第二主機(jī)設(shè)備(350)所位于的第二包圍區(qū)(428); 基于包圍區(qū)和第二包圍區(qū)來選擇密鑰(430);以及 基于所選擇的密鑰,在主機(jī)設(shè)備和第二主機(jī)設(shè)備之間產(chǎn)生安全關(guān)聯(lián)(434 )。
3.如權(quán)利要求I所述的方法,進(jìn)一步包含 提供多個(gè)成對包圍區(qū)密鑰(410);以及 在主機(jī)設(shè)備中,部分地基于所確定出的包圍區(qū),選擇多個(gè)成對包圍區(qū)密鑰中的成對包圍區(qū)密鑰(430)。
4.如權(quán)利要求I所述的方法,其中,所述分組包含主機(jī)和第二主機(jī)之間交換中的控制分組(310),以在主機(jī)和第二主機(jī)之間建立安全關(guān)聯(lián)。
5.如權(quán)利要求4所述的方法,其中,所述控制分組是因特網(wǎng)密鑰交換(IKE)或AuthIP分組。
6.如權(quán)利要求4所述的方法,進(jìn)一步包含從主機(jī)設(shè)備向第二主機(jī)設(shè)備發(fā)送控制分組(310),該控制分組(310)含有請求中間設(shè)備將標(biāo)記置于被尋址到主機(jī)的分組中的值(318)。
7.如權(quán)利要求6所述的方法,其中,所述值在分組的銷售商ID字段中。
8.一種操作計(jì)算機(jī)系統(tǒng)以提供安全通信的方法,所述計(jì)算機(jī)系統(tǒng)包含通過網(wǎng)絡(luò)互連并被組織到包圍區(qū)的多個(gè)主機(jī)設(shè)備,所述方法包含 在網(wǎng)絡(luò)包圍區(qū)中配置的中間設(shè)備處,經(jīng)由網(wǎng)絡(luò)接收(610)分組; 在中間設(shè)備中,分析(612)分組以確定分組是否含有請求中間設(shè)備將標(biāo)記置于被尋址到主機(jī)的分組中的值; 當(dāng)分組含有請求中間設(shè)備將標(biāo)記置于被尋址到主機(jī)的分組中的值時(shí),將指示包圍區(qū)的標(biāo)記附著(614)至被尋址到主機(jī)的至少一個(gè)分組中的字段。
9.如權(quán)利要求8所述的方法,其中 所述方法進(jìn)一步包含 當(dāng)分組含有所述值時(shí),存儲主機(jī)的指示(318’);以及 監(jiān)視(610)消息業(yè)務(wù)以標(biāo)識被尋址到主機(jī)的后續(xù)消息;以及 附著(614)標(biāo)記包含將標(biāo)記附著到后續(xù)消息(320)。
10.如權(quán)利要求9所述的方法,其中,所述分組和后續(xù)分組包含主機(jī)和第二主機(jī)之間的交換中的控制分組,以用于建立安全關(guān)聯(lián)。
11.如權(quán)利要求10所述的方法,其中,所述值包含分組的銷售商ID字段中的值。
12.如權(quán)利要求11所述的方法,其中 附著包含將標(biāo)記附著至分組的擴(kuò)展字段(326)中的標(biāo)記的列表;以及 附著指示包圍區(qū)的標(biāo)記包含附著指示附著標(biāo)記的中間設(shè)備的包圍區(qū)的標(biāo)記。
13.如權(quán)利要求12所述的方法,進(jìn)一步包含 在主機(jī)處,處理后續(xù)分組以基于標(biāo)記的列表確定主機(jī)(426)的第一包圍區(qū)和第二主機(jī)(428)的第二包圍區(qū)。
14.如權(quán)利要求13所述的方法,進(jìn)一步包含 在主機(jī)處,基于第一包圍區(qū)和第二包圍區(qū),選擇用于主機(jī)和第二主機(jī)之間的安全關(guān)聯(lián)的密鑰(430)。
全文摘要
一種用于其中設(shè)備被組織成安全包圍區(qū)的計(jì)算機(jī)系統(tǒng)的分級密鑰產(chǎn)生和分發(fā)機(jī)制。該機(jī)制使得網(wǎng)絡(luò)訪問能夠適應(yīng)于每個(gè)設(shè)備所需的近似最小特權(quán)。在層級的最低級別,密鑰用于形成設(shè)備之間的安全關(guān)聯(lián)。根據(jù)層級的較高級別處的密鑰以及密鑰導(dǎo)出信息產(chǎn)生層級的每個(gè)級別處的密鑰。密鑰導(dǎo)出信息可容易地從設(shè)備的標(biāo)識符或者消息內(nèi)確定,支持加密功能的硬件卸載。因?yàn)榭梢曰趨⑴c安全關(guān)聯(lián)的主機(jī)所位于的包圍區(qū)來產(chǎn)生密鑰,所以系統(tǒng)包括一種機(jī)制,通該機(jī)制設(shè)備可以發(fā)現(xiàn)它們所位于的包圍區(qū)。
文檔編號G06F21/00GK102804677SQ201080025719
公開日2012年11月28日 申請日期2010年6月7日 優(yōu)先權(quán)日2009年6月11日
發(fā)明者D.R.西蒙, B.D.斯萬德, P.梅內(nèi)澤斯, G.E.蒙特內(nèi)格羅 申請人:微軟公司