專利名稱:對加密文件系統(tǒng)的安全Kerberos化訪問的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)文件系統(tǒng)領(lǐng)域。特別地,本發(fā)明涉及用于對加密文件系統(tǒng)進(jìn)行安全訪問的方法與系統(tǒng)。
背景技術(shù):
加密文件系統(tǒng)(EFS)是允許用戶利用對稱和不對稱加密方法安全地存儲(chǔ)數(shù)據(jù)的安全文件系統(tǒng)。加密文件系統(tǒng)一般在單個(gè)機(jī)器上被支持,而且,為了讓用戶訪問該加密文件系 統(tǒng),用戶登錄到存儲(chǔ)加密文件系統(tǒng)的同一臺(tái)機(jī)器上。網(wǎng)絡(luò)文件系統(tǒng)(NFS)是允許用戶從一臺(tái)機(jī)器(服務(wù)器)導(dǎo)出數(shù)據(jù)并從其它機(jī)器(客戶端)導(dǎo)入/安裝數(shù)據(jù)的分布式文件系統(tǒng)。盡管網(wǎng)絡(luò)文件系統(tǒng)可能需要ロ令來讓用戶訪問特定的文件系統(tǒng),但是文件系統(tǒng)本身一般是不加密的。
發(fā)明內(nèi)容
文件服務(wù)器從客戶端接收安裝文件系統(tǒng)的請求,其中文件服務(wù)器確定這個(gè)文件系統(tǒng)是加密的。文件服務(wù)器向客戶端發(fā)消息,該消息通知客戶端所請求的文件系統(tǒng)是加密的,進(jìn)而,文件服務(wù)器又從客戶端接收包括安全協(xié)議安裝選擇的會(huì)話票據(jù)。文件服務(wù)器解密與該客戶端的用戶對應(yīng)的加密私鑰,所述解密產(chǎn)生私鑰。然后,文件服務(wù)器利用私鑰來解密所請求的加密文件系統(tǒng),并將解密后的文件系統(tǒng)通過安全通道發(fā)送到客戶端,所述安全通道基于客戶端的安全協(xié)議安裝選擇。在一種實(shí)施方式中,密鑰分發(fā)中心服務(wù)器從客戶端接收訪問文件服務(wù)器處的加密文件系統(tǒng)的請求。所述密鑰分發(fā)中心服務(wù)器檢索適于在文件服務(wù)器處解密所述加密私鑰的中間密鑰(既對應(yīng)于文件服務(wù)器又對應(yīng)于客戶端的用戶)。進(jìn)而,密鑰分發(fā)中心服務(wù)器將該中間密鑰包括在會(huì)話票據(jù)中并將該會(huì)話票據(jù)發(fā)送到客戶端。以上是概述,因而必然包含對細(xì)節(jié)的簡化、概括和省略;從而,本領(lǐng)域技術(shù)人員將認(rèn)識(shí)到,所述概述僅僅是例示性的而不是要以任何方式進(jìn)行限制。僅由權(quán)利要求限定的本發(fā)明的其它方面、創(chuàng)新特征和優(yōu)點(diǎn)將在如下所述的非限制性具體描述中變得顯而易見。從第一方面看,本發(fā)明提供了ー種方法,包括在文件服務(wù)器處從客戶端接收讓該客戶端安裝位于所述文件服務(wù)器處的文件系統(tǒng)的請求;在所述文件服務(wù)器處確定所請求的文件系統(tǒng)是加密的;從所述文件服務(wù)器向所述客戶端發(fā)送消息,該消息通知所述客戶端所請求的文件系統(tǒng)是加密的;從所述客戶端接收包括安全協(xié)議安裝選擇的會(huì)話票據(jù);在所述文件服務(wù)器處解密與用戶對應(yīng)的加密私鑰,所述解密產(chǎn)生私鑰;在所述文件服務(wù)器處利用所述私鑰來解密所述文件系統(tǒng);以及將解密后的文件系統(tǒng)通過與所述安全協(xié)議安裝選擇相對應(yīng)的安全通道從所述文件服務(wù)器發(fā)送到所述客戶端。優(yōu)選地,本發(fā)明提供了ー種方法,還包括其中,所述文件系統(tǒng)是高級(jí)交互式執(zhí)行加密文件系統(tǒng);其中,所述文件服務(wù)器和所述客戶端利用允許用戶以分布式方式從所述文件服務(wù)器訪問文件的網(wǎng)絡(luò)文件系統(tǒng)格式來進(jìn)行通信;而且其中,所述安全協(xié)議安裝選擇是允許所述客戶端和所述文件服務(wù)器通過計(jì)算機(jī)網(wǎng)絡(luò)來安全地通信的Kerberos協(xié)議。優(yōu)選地,本發(fā)明提供了ー種方法,其中解密所述加密私鑰還包括確定所述會(huì)話票據(jù)是否包括中間密鑰;響應(yīng)于確定所述會(huì)話票據(jù)包括所述中間密鑰,從所述會(huì)話票據(jù)中提取該中間密鑰并利用提取出的中間密鑰來解密所述加密私鑰;以及,響應(yīng)于確定所述會(huì)話票據(jù)不包括所述中間密鑰,該方法還包括從所述文件服務(wù)器向所述客戶端發(fā)送對加密文件系統(tǒng)ロ令的請求;在所述文件服務(wù)器處接收來自所述客戶端的加密文件系統(tǒng)ロ令;從位于所述文件服務(wù)器處的所述加密文件系統(tǒng)ロ令生成所述中間密鑰;以及利用所生成的中間密鑰來解密所述加密私鑰。優(yōu)選地,本發(fā)明提供了ー種方法,其中,所述中間密鑰是由密鑰分發(fā)中心服務(wù)器提供給所述客戶端的,該密鑰分發(fā)中心服務(wù)器與所述文件服務(wù)器不同而且適于從由所述文件服務(wù)器管理的存儲(chǔ)區(qū)域檢索所述中間密鑰。優(yōu)選地,本發(fā)明提供了ー種方法,其中,所述文件服務(wù)器管理多個(gè)會(huì)話線程,這多個(gè)會(huì)話線程中的每ー個(gè)會(huì)話線程都對應(yīng)于多個(gè)用戶中的一個(gè)用戶并且與多個(gè)私鑰中的一 個(gè)私鑰相關(guān)聯(lián),所述用戶包括在所述多個(gè)用戶中而且所述私鑰包括在所述多個(gè)私鑰中。優(yōu)選地,本發(fā)明提供了ー種方法,其中,響應(yīng)于從所述文件服務(wù)器接收到所請求的文件系統(tǒng)是加密的的消息,所述客戶端自動(dòng)地選擇所述安全協(xié)議安裝選擇。優(yōu)選地,本發(fā)明提供了ー種方法,包括在密鑰分發(fā)中心服務(wù)器處從客戶端接收請求,該請求識(shí)別用戶和文件服務(wù)器;檢索既對應(yīng)于所述文件服務(wù)器又對應(yīng)于所述用戶的中間密鑰,其中該中間密鑰適于解密由所述文件服務(wù)器用來解密加密文件系統(tǒng)的加密私鑰;將該中間密鑰包括在會(huì)話票據(jù)中;以及將所述會(huì)話票據(jù)發(fā)送到所述客戶端。優(yōu)選地,本發(fā)明提供了ー種方法,還包括在所述密鑰分發(fā)中心服務(wù)器處識(shí)別對應(yīng)于所述文件服務(wù)器的互聯(lián)網(wǎng)協(xié)議地址;從對應(yīng)于所述用戶的請求提取用戶名;以及利用所述互聯(lián)網(wǎng)協(xié)議地址和所述用戶名來在由所述文件服務(wù)器管理的中間存儲(chǔ)區(qū)域中定位所述中間密鑰。優(yōu)選地,本發(fā)明提供了ー種方法,其中,所述密鑰分發(fā)中心服務(wù)器管理包括多個(gè)中間密鑰的中間密鑰存儲(chǔ)區(qū)域,所述多個(gè)中間密鑰中的每ー個(gè)中間密鑰對應(yīng)于多個(gè)用戶中的一個(gè)用戶,該方法還包括從所述多個(gè)中間密鑰中選擇中間密鑰,其中所選定的中間密鑰既與所述文件服務(wù)器相關(guān)聯(lián)又與所述用戶相關(guān)聯(lián);以及將所述中間密鑰包括在發(fā)送到所述客戶端的會(huì)話票據(jù)中。從第二方面看,本發(fā)明提供了ー種信息處理系統(tǒng),包括一個(gè)或多個(gè)處理器;能被所述處理器中的至少ー個(gè)處理器訪問的存儲(chǔ)器;能被所述處理器中的至少ー個(gè)處理器訪問的非易失性存儲(chǔ)區(qū)域;存儲(chǔ)在所述存儲(chǔ)器中的ー組指令,該組指令被所述處理器中的至少一個(gè)處理器執(zhí)行以便執(zhí)行以下動(dòng)作在文件服務(wù)器處從客戶端接收讓該客戶端安裝位于所述文件服務(wù)器處的文件系統(tǒng)的請求;在所述文件服務(wù)器處確定所請求的文件系統(tǒng)是加密的;從所述文件服務(wù)器向所述客戶端發(fā)送通知該客戶端所請求的文件系統(tǒng)是加密的的消息;從該客戶端接收包括安全協(xié)議安裝選擇的會(huì)話票據(jù);在所述文件服務(wù)器處解密對應(yīng)于用戶的加密私鑰,所述解密產(chǎn)生私鑰;利用所述私鑰在所述文件服務(wù)器處解密所述文件系統(tǒng);并將解密后的文件系統(tǒng)通過對應(yīng)于所述安全協(xié)議安裝選擇的安全通道從所述文件服務(wù)器發(fā)送到所述客戶端。
優(yōu)選地,本發(fā)明提供了ー種信息處理系統(tǒng),其中該信息處理系統(tǒng)還執(zhí)行以下動(dòng)作,包括其中,所述文件系統(tǒng)是高級(jí)交互式執(zhí)行加密文件系統(tǒng);其中,所述文件服務(wù)器和所述客戶端利用允許用戶以分布式方式從所述文件服務(wù)器訪問文件的網(wǎng)絡(luò)文件系統(tǒng)格式來進(jìn)行通信;而且其中,所述安全協(xié)議安裝選擇是允許所述客戶端和所述文件服務(wù)器通過計(jì)算機(jī)網(wǎng)絡(luò)來安全地通信的Kerberos協(xié)議。優(yōu)選地,本發(fā)明提供了ー種信息處理系統(tǒng),其中該信息處理系統(tǒng)還執(zhí)行以下動(dòng)作,包括確定所述會(huì)話票據(jù)是否包括中間密鑰;響應(yīng)于確定所述會(huì)話票據(jù)包括所述中間密鑰,從所述會(huì)話票據(jù)中提取該中間密鑰并利用所提取出的中間密鑰解密所述加密私鑰;以及響應(yīng)于確定所述會(huì)話票據(jù)不包括所述中間密鑰,該方法還包括從所述文件服務(wù)器向所述客戶端發(fā)送對加密文件系統(tǒng)ロ令的請求;在所述文件服務(wù)器處接收來自所述客戶端的加密文件系統(tǒng)ロ令;從位于所述文件服務(wù)器處的所述加密文件系統(tǒng)ロ令生成所 述中間密鑰;以及利用所生成的中間密鑰來解密所述加密私鑰。優(yōu)選地,本發(fā)明提供了ー種信息處理系統(tǒng),其中,所述中間密鑰是由密鑰分發(fā)中心服務(wù)器提供給所述客戶端的,該密鑰分發(fā)中心服務(wù)器與所述文件服務(wù)器不同而且適于從由所述文件服務(wù)器管理的存儲(chǔ)區(qū)域檢索所述中間密鑰。優(yōu)選地,本發(fā)明提供了ー種信息處理系統(tǒng),其中所述文件服務(wù)器管理多個(gè)會(huì)話線程,這多個(gè)會(huì)話線程中的每ー個(gè)會(huì)話線程都對應(yīng)于多個(gè)用戶中的一個(gè)用戶并且與多個(gè)私鑰中的一個(gè)私鑰相關(guān)聯(lián),所述用戶包括在所述多個(gè)用戶中,而所述私鑰包括在所述多個(gè)私鑰中。優(yōu)選地,本發(fā)明提供了ー種信息處理系統(tǒng),其中,響應(yīng)于從所述文件服務(wù)器接收到所請求的文件系統(tǒng)是加密的的消息,所述客戶端自動(dòng)地選擇所述安全協(xié)議安裝選擇。從另一方面看,本發(fā)明提供了ー種信息處理系統(tǒng),包括一個(gè)或多個(gè)處理器;能被所述處理器中的至少ー個(gè)處理器訪問的存儲(chǔ)器;能被所述處理器中的至少ー個(gè)處理器訪問的非易失性存儲(chǔ)區(qū)域;存儲(chǔ)在所述存儲(chǔ)器中的ー組指令,該組指令被所述處理器中的至少一個(gè)處理器執(zhí)行以便執(zhí)行以下動(dòng)作在密鑰分發(fā)中心服務(wù)器處從客戶端接收請求,該請求識(shí)別用戶和文件服務(wù)器;檢索既對應(yīng)于所述文件服務(wù)器又對應(yīng)于所述用戶的中間密鑰,其中該中間密鑰適于解密由所述文件服務(wù)器用來解密加密文件系統(tǒng)的加密私鑰;將該中間密鑰包括在會(huì)話票據(jù)中;以及將所述會(huì)話票據(jù)發(fā)送到所述客戶端。優(yōu)選地,本發(fā)明提供了ー種信息處理系統(tǒng),其中該信息處理系統(tǒng)還執(zhí)行以下動(dòng)作,包括在所述密鑰分發(fā)中心服務(wù)器處識(shí)別對應(yīng)于所述文件服務(wù)器的互聯(lián)網(wǎng)協(xié)議地址;從所述請求提取對應(yīng)于所述用戶的用戶名;以及利用所述互聯(lián)網(wǎng)協(xié)議地址和所述用戶名在由所述文件服務(wù)器管理的中間存儲(chǔ)區(qū)域中定位所述中間密鑰。優(yōu)選地,本發(fā)明提供了ー種信息處理系統(tǒng),其中,所述密鑰分發(fā)中心服務(wù)器管理包括多個(gè)中間密鑰的中間密鑰存儲(chǔ)區(qū)域,所述多個(gè)中間密鑰中的每ー個(gè)中間密鑰對應(yīng)于多個(gè)用戶中的一個(gè)用戶,該信息處理系統(tǒng)還執(zhí)行以下動(dòng)作,包括從所述多個(gè)中間密鑰中選擇中間密鑰,其中所選定的中間密鑰既與所述文件服務(wù)器相關(guān)聯(lián)又與所述用戶相關(guān)聯(lián);并且將所述中間密鑰包括在發(fā)送到所述客戶端的會(huì)話票據(jù)中。從另一方面看,本發(fā)明提供了存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)中的計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)程序產(chǎn)品包括功能描述性材料,所述功能描述性材料當(dāng)由信息處理系統(tǒng)執(zhí)行時(shí),使得該信息處理系統(tǒng)執(zhí)行以下動(dòng)作,包括在文件服務(wù)器處從客戶端接收讓該客戶端安裝位于所述文件服務(wù)器處的文件系統(tǒng)的請求;在所述文件服務(wù)器處確定所請求的文件系統(tǒng)是加密的;從所述文件服務(wù)器向所述客戶端發(fā)送通知該客戶端所請求的文件系統(tǒng)是加密的的消息;從所述客戶端接收包括安全協(xié)議安裝選擇的會(huì)話票據(jù);在所述文件服務(wù)器處解密對應(yīng)于用戶的加密私鑰,所述解密產(chǎn)生私鑰;在所述文件服務(wù)器處利用所述私鑰來解密所述文件系統(tǒng);以及將解密后的文件系統(tǒng)通過對應(yīng)于所述安全協(xié)議安裝選擇的安全通道從所述文件服務(wù)器發(fā)送到所述客戶端。優(yōu)選地,本發(fā)明提供了一種計(jì)算機(jī)程序產(chǎn)品,其中所述信息處理系統(tǒng)還執(zhí)行以下動(dòng)作,包括其中,所述文件系統(tǒng)是高級(jí)交互式執(zhí)行加密文件系統(tǒng);其中,所述文件服務(wù)器和所述客戶端利用允許用戶以分布式方式從所述文件服務(wù)器訪問文件的網(wǎng)絡(luò)文件系統(tǒng)格式來進(jìn)行通信;而且其中,所述安全協(xié)議安裝選擇是允許所述客戶端和所述文件服務(wù)器通過計(jì)算機(jī)網(wǎng)絡(luò)來安全地通信的Kerberos協(xié)議。優(yōu)選地,本發(fā)明提供了一種計(jì)算機(jī)程序產(chǎn)品,其中所述信息處理系統(tǒng)還 執(zhí)行以下動(dòng)作,包括確定所述會(huì)話票據(jù)是否包括中間密鑰;響應(yīng)于確定所述會(huì)話票據(jù)包括所述中間密鑰,從所述會(huì)話票據(jù)中提取該中間密鑰并利用所提取出的中間密鑰解密所述加密私鑰;以及響應(yīng)于確定所述會(huì)話票據(jù)不包括所述中間密鑰,該方法還包括從所述文件服務(wù)器向所述客戶端發(fā)送對加密文件系統(tǒng)ロ令的請求;在所述文件服務(wù)器處接收來自所述客戶端的加密文件系統(tǒng)ロ令;從位于所述文件服務(wù)器處的所述加密文件系統(tǒng)ロ令生成所述中間密鑰;以及利用所生成的中間密鑰來解密所述加密私鑰。優(yōu)選地,本發(fā)明提供了一種計(jì)算機(jī)程序產(chǎn)品,其中,所述中間密鑰是由密鑰分發(fā)中心服務(wù)器提供給所述客戶端的,該密鑰分發(fā)中心服務(wù)器與所述文件服務(wù)器不同而且適于從由所述文件服務(wù)器管理的存儲(chǔ)區(qū)域檢索所述中間密鑰。優(yōu)選地,本發(fā)明提供了一種計(jì)算機(jī)程序產(chǎn)品,其中,所述文件服務(wù)器管理多個(gè)會(huì)話線程,這多個(gè)會(huì)話線程中的每ー個(gè)會(huì)話線程都對應(yīng)于多個(gè)用戶中的一個(gè)用戶并且與多個(gè)私鑰中的一個(gè)私鑰相關(guān)聯(lián),所述用戶包括在所述多個(gè)用戶中,而且所述私鑰包括在所述多個(gè)私鑰中。優(yōu)選地,本發(fā)明提供了一種計(jì)算機(jī)程序產(chǎn)品,其中,響應(yīng)于從所述文件服務(wù)器接收到所請求的文件系統(tǒng)是加密的的消息,所述客戶端自動(dòng)地選擇所述安全協(xié)議安裝選擇。
通過參考附圖,本發(fā)明可以得到更好的理解,而且使其多個(gè)目的、特征和優(yōu)點(diǎn)對本領(lǐng)域技術(shù)人員變得顯而易見,附圖中圖I是其中可以實(shí)現(xiàn)在此所述的方法的數(shù)據(jù)處理系統(tǒng)的框圖;圖2提供了圖I中所示的信息處理系統(tǒng)環(huán)境的擴(kuò)展,以便例示在此所述的方法可以在運(yùn)行于聯(lián)網(wǎng)環(huán)境中的廣泛多種信息處理系統(tǒng)上執(zhí)行;圖3是示出客戶端通過安全Kerberos通道訪問位于文件服務(wù)器上的加密文件系統(tǒng)的圖;圖4是示出服務(wù)器通過以每個(gè)線程為基礎(chǔ)指派私鑰來通過多個(gè)線程向多個(gè)客戶端提供加密文件系統(tǒng)訪問的圖5是示出服務(wù)器基于用戶的ロ令生成中間密鑰和私鑰的圖;圖6是示出服務(wù)器從客戶端接收中間密鑰及該服務(wù)器利用所述中間密鑰來復(fù)制用戶的私鑰的圖;圖7是示出服務(wù)器接收加密文件系統(tǒng)(EFS) ロ令并利用該EFS ロ令復(fù)制私鑰的圖;圖8是示出通過安全Kerberos通道提供對位于服務(wù)器上的加密文件系統(tǒng)的客戶端訪問時(shí)所采取的步驟的流程圖;及圖9是示出在密鑰分發(fā)中心(KDS)中向客戶端提供會(huì)話票據(jù)時(shí)所采取的步驟的流、程圖。
具體實(shí)施例方式如本領(lǐng)域技術(shù)人員將認(rèn)識(shí)到的,本公開的各方面可以體現(xiàn)為系統(tǒng)、方法或者計(jì)算機(jī)程序產(chǎn)品。相應(yīng)地,本公開的各方面可以采取完全硬件實(shí)施方式、完全軟件實(shí)施方式(包括固件、駐留軟件、微代碼等)或者結(jié)合軟件與硬件方面的實(shí)施方式,這些實(shí)施方式在這里總體上都可以稱為“電路”、“模塊”或者“系統(tǒng)”。此外,本公開的各方面可以采取被包含在一種或多種計(jì)算機(jī)可讀介質(zhì)中的計(jì)算機(jī)程序產(chǎn)品的形式,其中計(jì)算機(jī)可讀介質(zhì)中包含了計(jì)算機(jī)可讀的程序代碼??梢允褂靡环N或多種計(jì)算機(jī)可讀介質(zhì)的任意組合。計(jì)算機(jī)可讀介質(zhì)可以是計(jì)算機(jī)可讀信號(hào)介質(zhì)或者計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是例如,但不限干,電的、磁的、光的、電磁的、紅外的或者半導(dǎo)體的系統(tǒng)、裝置或設(shè)備,或者以上所述的任意合適組合。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的更具體例子(非窮盡列表)將包括以下具有一條或多條電線的電連接、便攜式計(jì)算機(jī)磁盤、硬盤、隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、可擦可編程只讀存儲(chǔ)器(EPROM或者閃存存儲(chǔ)器)、光纖、便攜式光盤只讀存儲(chǔ)器(CD-ROM)、光學(xué)存儲(chǔ)設(shè)備、磁性存儲(chǔ)設(shè)備或者以上所述的任意合適組合。在本文檔的背景下,計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是可以包含或者存儲(chǔ)由指令執(zhí)行系統(tǒng)、裝置或設(shè)備使用或者與其結(jié)合使用的程序的任何有形介質(zhì)。計(jì)算機(jī)可讀信號(hào)介質(zhì)可以包括例如在基帶中或者作為載波一部分的、其中包含有計(jì)算機(jī)可讀程序代碼的傳播數(shù)據(jù)信號(hào)。這種傳播信號(hào)可以采取多種形式中的任何ー種,包括,但不限干,電磁的、光學(xué)的或者其任意合適組合。計(jì)算機(jī)可讀信號(hào)介質(zhì)可以是非計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)而且可以傳送、傳播或者運(yùn)輸由指令執(zhí)行系統(tǒng)、裝置或設(shè)備使用或者與其結(jié)合使用的程序的任何計(jì)算機(jī)可讀介質(zhì)。計(jì)算機(jī)可讀介質(zhì)上所包含的程序代碼可以利用任何適當(dāng)?shù)慕橘|(zhì)傳送,包括但不限干,無線電、有線線路、光纖光纜、RF等或者以上所述的任意合適組合。用于執(zhí)行本公開各方面的操作的計(jì)算機(jī)程序代碼可以用一種或多種編程語言的任意組合來書寫,包括面向?qū)ο蟮木幊陶Z言,例如Smalltalk、C++等,及傳統(tǒng)的過程性編程語言,例如“C”編程語言或者類似的編程語言。程序代碼可以完全在用戶的計(jì)算機(jī)上、部分地在用戶的計(jì)算機(jī)上、作為獨(dú)立的軟件包、部分在用戶的計(jì)算機(jī)上而且部分在遠(yuǎn)端計(jì)算機(jī)上或者完全在遠(yuǎn)端的計(jì)算機(jī)或服務(wù)器上執(zhí)行。在后一種場景下,遠(yuǎn)端計(jì)算機(jī)可以通過任何類型的網(wǎng)絡(luò)(包括局域網(wǎng)(LAN)或者廣域網(wǎng)(WAN))連接到用戶的計(jì)算機(jī),或者可以連接到外部的計(jì)算機(jī)(例如,通過利用互聯(lián)網(wǎng)服務(wù)提供商的互聯(lián)網(wǎng))。以下參考根據(jù)本公開的實(shí)施方式的方法、裝置(系統(tǒng))和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或框圖來描述本公開的各方面。將理解,流程圖和/或框圖中的每個(gè)框及流程圖和/或框圖中的框的組合可以由計(jì)算機(jī)程序指令來實(shí)現(xiàn)。這些計(jì)算機(jī)程序指令可以提供給通用計(jì)算機(jī)、專用計(jì)算機(jī)或者其它可編程數(shù)據(jù)處理裝置的處理器,以產(chǎn)生ー種機(jī)器,使得當(dāng)所述指令在經(jīng)計(jì)算機(jī)或者其它可編程數(shù)據(jù)處理裝置的處理器上執(zhí)行時(shí)產(chǎn)生用于實(shí)現(xiàn)在ー個(gè)或多個(gè)流程框和/或框圖框中所指定的功能/動(dòng)作的裝置。這些計(jì)算機(jī)程序指令還可以存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)中,所述介質(zhì)可以指示計(jì)算機(jī)、其它可編程數(shù)據(jù)處理裝置或者其它設(shè)備以特定的方式起作用,使得存儲(chǔ)在所述計(jì)算機(jī)可讀介質(zhì)中的指令產(chǎn)生ー種包括指令的制造物品,所述指令實(shí)現(xiàn)在ー個(gè)或多個(gè)流程框和/或框圖框中所指定的功能/動(dòng)作。計(jì)算機(jī)程序指令還可以加載到計(jì)算機(jī)、其它可編程數(shù)據(jù)處理裝置或者其它設(shè)備上,使一系列操作性步驟在所述計(jì)算機(jī)、其它可編程裝置或者其它設(shè)備上執(zhí)行,產(chǎn)生ー種計(jì)算機(jī)實(shí)現(xiàn)的過程,使得在所述計(jì)算機(jī)或者其它可編程裝置上執(zhí)行的指令提供用于實(shí)現(xiàn)在一個(gè)或多個(gè)流程框和/或框圖框中所指定的功能/動(dòng)作的過程。 在以下描述和圖中闡述了某些具體的細(xì)節(jié),以便提供對本公開各種實(shí)施方式的透徹理解。但是,為了避免不必要地模糊本公開的各種實(shí)施方式,在以下公開中沒有闡述常常與計(jì)算和軟件技術(shù)關(guān)聯(lián)的某些眾所周知的細(xì)節(jié)。另外,相關(guān)領(lǐng)域的普通技術(shù)人員將理解,他們可以實(shí)踐沒有以下所述的ー個(gè)或多個(gè)細(xì)節(jié)的本公開的其它實(shí)施方式。最后,盡管各種方法是參考以下公開中的步驟和順序描述的,但是這種描述是為了提供本公開實(shí)施方式的清楚實(shí)現(xiàn),而且所述步驟和步驟的順序不應(yīng)當(dāng)認(rèn)為是實(shí)踐本公開必需的。而是,以下是要提供對本公開的例子的具體描述而且不應(yīng)當(dāng)認(rèn)為是對本公開本身的限制。當(dāng)然,任意數(shù)量的變形例都可以落在本公開的范圍內(nèi),這個(gè)范圍是由該具體描述之后的權(quán)利要求限定的。以下的具體描述將總體上遵循如上所述的本公開的概述,在必要時(shí)進(jìn)ー步解釋和擴(kuò)展對本公開的各方面和實(shí)施方式的定義。為此,此具體描述首先闡述圖I中的計(jì)算環(huán)境,該計(jì)算環(huán)境適于實(shí)現(xiàn)與本公開關(guān)聯(lián)的軟件和/或硬件技木。在圖2中例示作為基本計(jì)算環(huán)境的擴(kuò)展的聯(lián)網(wǎng)環(huán)境來強(qiáng)調(diào)現(xiàn)代的計(jì)算技術(shù)可以跨多個(gè)離散的設(shè)備執(zhí)行。圖I例示了信息處理系統(tǒng)100,該系統(tǒng)是能夠執(zhí)行在此所述的計(jì)算操作的計(jì)算機(jī)系統(tǒng)的簡化例子。信息處理系統(tǒng)100包括耦接到處理器接ロ總線112的一個(gè)或多個(gè)處理器110。處理器接ロ總線112把處理器110連接到也稱為存儲(chǔ)器控制器集線器(MCH)的北橋115。北橋115連接到系統(tǒng)存儲(chǔ)器120并且為處理器110提供訪問系統(tǒng)存儲(chǔ)器的手段。圖形控制器125也連接到北橋115。在一種實(shí)施方式中,PCIExpress總線118把北橋115連接到圖形控制器125。圖形控制器125連接到顯示設(shè)備130,例如計(jì)算機(jī)監(jiān)視器。北橋115和南橋135利用總線119彼此連接。在ー種實(shí)施方式中,該總線是直接媒體接ロ(DMI)總線,其在北橋115和南橋135之間的每個(gè)方向高速地傳輸數(shù)據(jù)。在另ー種實(shí)施方式中,外圍部件互連(PCI)總線連接北橋和南橋。南橋135,也稱為I/O控制器集線器(ICH),是一般實(shí)現(xiàn)以比北橋所提供的能力低的速度運(yùn)行的能力的芯片。南橋135 —般提供用于連接各種部件的各種總線。這些總線包括例如PCI和PCI Express總線、ISA總線、系統(tǒng)管理總線(SMBus或者SMB)和/或低引腳數(shù)(LPC)總線。LPC總線常常連接低帶寬設(shè)備,例如引導(dǎo)ROM 196和“老式(legacy)” I/O設(shè)備(使用“超I/O”芯片)?!袄鲜健?I/O設(shè)備(198)可以包括例如串行和并行端ロ、鍵盤、鼠標(biāo)和/或軟盤控制器。LPC總線還把南橋135連接到可信任平臺(tái)模塊(TPM)195。南橋135中常常包括的其它部件包括直接存儲(chǔ)器訪問(DMA)控制器、可編程中斷控制器(PIC)和存儲(chǔ)設(shè)備控制器,其中存儲(chǔ)設(shè)備控制器利用總線184把南橋135連接到非易失性存儲(chǔ)設(shè)備185,例如硬盤驅(qū)動(dòng)器。ExpressCard (Express卡)155是把熱插拔設(shè)備連接到信息處理系統(tǒng)的槽。ExpressCardl55既支持PCI Express連接又支持USB連接,因?yàn)樗猛ㄓ么锌偩€(USB)和PCI Express總線兩者來連接到南橋135。南橋135包括向連接到USB的設(shè)備提供USB連接的USB控制器140。這些設(shè)備包括網(wǎng)絡(luò)攝像機(jī)(照相機(jī))150、紅外(IR)接收器148、鍵盤與軌跡板144及為無線個(gè)人局域網(wǎng)(PAN)提供的藍(lán)牙設(shè)備146。USB控制器140還為其它各種各樣的USB連接設(shè)備(例如,鼠標(biāo)、可拆卸的非易失性存儲(chǔ)設(shè)備145、調(diào)制解調(diào)器、網(wǎng)卡、ISDN連接器、傳真機(jī)、打印機(jī)、USB集線器及許多其它類型的USB連接設(shè)備)提供USB連接。盡管可拆卸的非易失性存儲(chǔ)設(shè)備145被示出 為USB連接設(shè)備,但是可拆卸的非易失性存儲(chǔ)設(shè)備145也可以利用諸如Firewire接ロ等的不同接ロ來連接。無線局域網(wǎng)(LAN)設(shè)備175經(jīng)由PCI或者PCI Express總線172連接到南橋135。LAN設(shè)備175 —般實(shí)現(xiàn)對信息處理系統(tǒng)100與其他計(jì)算機(jī)系統(tǒng)或設(shè)備之間的無線通信全都使用相同協(xié)議的無線廣播(over-the-air)調(diào)制技術(shù)的IEEE 802. 11標(biāo)準(zhǔn)中的ー種。光學(xué)存儲(chǔ)設(shè)備190利用串行ATA (SATA)總線188連接到南橋135。串行ATA適配器和設(shè)備經(jīng)高速串行鏈路通信。串行ATA總線還把南橋135連接到其它形式的存儲(chǔ)設(shè)備,例如硬盤驅(qū)動(dòng)器。音頻電路系統(tǒng)160,例如聲卡,經(jīng)總線158連接到南橋135。音頻電路系統(tǒng)160也提供諸如音頻線路輸入和光學(xué)數(shù)字音頻輸入端ロ 162、光學(xué)數(shù)字輸出和頭戴式受話器插孔164、內(nèi)部揚(yáng)聲器166和內(nèi)部麥克風(fēng)168之類的功能性。以太網(wǎng)控制器170利用例如PCI或者PCIExpress總線之類的總線連接到南橋135。以太網(wǎng)控制器170將信息處理系統(tǒng)100連接到計(jì)算機(jī)網(wǎng)絡(luò),例如局域網(wǎng)(LAN)、互聯(lián)網(wǎng)及其它的公共和專用計(jì)算機(jī)網(wǎng)絡(luò)。盡管圖I示出了ー種信息處理系統(tǒng),但信息處理系統(tǒng)可以采取許多形式。例如,信息處理系統(tǒng)可以采取臺(tái)式、服務(wù)器、便攜式、膝上型、筆記本或者其它形狀因子的計(jì)算機(jī)或者數(shù)據(jù)處理系統(tǒng)。此外,信息處理系統(tǒng)還可以采取其它的形狀因子,例如個(gè)人數(shù)字助理(PDA)、游戲設(shè)備、ATM機(jī)、便攜式電話設(shè)備、通信設(shè)備或者包括處理器和存儲(chǔ)器的其它設(shè)備。圖I中所示并在此描述為提供安全功能的可信任平臺(tái)模塊(TPM195)僅僅是硬件安全模塊(HSM)的ー個(gè)例子。因此,在此描述并要求保護(hù)的TPM包括任何類型的HSM,包括但不限于,遵循可信任計(jì)算組(TCG)標(biāo)準(zhǔn)的硬件安全設(shè)備,該標(biāo)準(zhǔn)的標(biāo)題為“可信任平臺(tái)模塊(TPM)規(guī)范版本I. 2”。TPM是可以結(jié)合到任何數(shù)量的信息處理系統(tǒng)(如圖2中概述的那些)中的硬件安全子系統(tǒng)。圖2提供了圖I所示的信息處理系統(tǒng)環(huán)境的擴(kuò)展例子,來例示在此所述的方法可以在運(yùn)行于聯(lián)網(wǎng)環(huán)境中的廣泛多種信息處理系統(tǒng)上執(zhí)行。信息處理系統(tǒng)的類型小到手持式設(shè)備,例如手持式計(jì)算機(jī)/移動(dòng)電話210,大到大型機(jī)系統(tǒng),例如大型計(jì)算機(jī)270。手持式計(jì)算機(jī)210的例子包括個(gè)人數(shù)字助理(PDA),例如MP3播放器、便攜式電視機(jī)和⑶播放器之類的個(gè)人娛樂設(shè)備。信息處理系統(tǒng)的其它例子包括筆輸入計(jì)算機(jī)或者平板計(jì)算機(jī)220、膝上型計(jì)算機(jī)或者筆記本計(jì)算機(jī)230、工作站240、個(gè)人計(jì)算機(jī)系統(tǒng)250和服務(wù)器260。沒有在圖2中単獨(dú)示出的其它類型的信息處理系統(tǒng)由信息處理系統(tǒng)280表示。如圖所示,各種信息處理系統(tǒng)可以利用計(jì)算機(jī)網(wǎng)絡(luò)200聯(lián)網(wǎng)到一起。可以用于互連各種信息處理系統(tǒng)的計(jì)算機(jī)網(wǎng)絡(luò)的類型包括局域網(wǎng)(LAN)、無線局域網(wǎng)(WLAN)、互聯(lián)網(wǎng)、公共交換電話網(wǎng)絡(luò)(PSTN)、其它無線網(wǎng)絡(luò)及可以用于互連信息處理系統(tǒng)的任何其它網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。許多信息處理系統(tǒng)都包括非易失性數(shù)據(jù)庫,例如硬驅(qū)和/或非易失性存儲(chǔ)器。圖2中所示的有些信息處理系統(tǒng)繪出了單獨(dú)的非易失性數(shù)據(jù)庫(服務(wù)器260使用非易失性數(shù)據(jù)庫265,大型計(jì)算機(jī)270使用非易失性數(shù)據(jù)庫275,而信息處理系統(tǒng)280使用非易失性數(shù)據(jù)庫285)。非易失性數(shù)據(jù)庫可以是在各種信息處理系統(tǒng)外部的部件,或者可以在信息處理系統(tǒng)之一的內(nèi)部。此外,可拆卸的非易失性存儲(chǔ)設(shè)備145可以通過利用各種技術(shù)而在兩個(gè)或更多個(gè)信息處理系統(tǒng)之間被共享,例如把可拆卸的非易失性存儲(chǔ)設(shè)備145連接到信息處理系統(tǒng)的USB端口或者其它連接器。圖3是示出客戶端通過安全Kerberos通道訪問位于文件服務(wù)器上的加密文件系統(tǒng)的圖??蛻舳?00經(jīng)網(wǎng)絡(luò)協(xié)議(例如,網(wǎng)絡(luò)文件系統(tǒng)(NFS))與文件服務(wù)器31 0通信??蛻舳?00和服務(wù)器310使用密鑰分發(fā)中心320用于認(rèn)證目的和建立安全通道。例如,密鑰分發(fā)中心320可以是Kerberos服務(wù)器,其對客戶端300和服務(wù)器310進(jìn)行認(rèn)證,并向客戶端300提供用于與服務(wù)器310通信的會(huì)話票據(jù)。服務(wù)器310管理存儲(chǔ)在EFS文件庫380上的采用加密機(jī)制的加密文件系統(tǒng)(EFS),例如高級(jí)交互式執(zhí)行加密文件系統(tǒng)(AIX EFS)。當(dāng)用戶305在服務(wù)器310上配置加密文件系統(tǒng)時(shí),服務(wù)器310為用戶305創(chuàng)建用于加密和解密用戶305的特定文件系統(tǒng)的私鑰。服務(wù)器310從用戶305接收口令,安全管理器350針對該口令生成“中間密鑰”。安全管理器350把中間密鑰(中間密鑰338)存儲(chǔ)在中間密鑰庫335中而且使用中間密鑰338來加密用戶的私鑰,從而產(chǎn)生加密私鑰370,該加密私鑰370存儲(chǔ)在EFS私鑰庫360中(參見圖5和對應(yīng)的文字來獲得更多細(xì)節(jié))。安全管理器350使用用戶的私鑰來加密該用戶的存儲(chǔ)在EFS庫380中的文件系統(tǒng)。當(dāng)用戶305希望訪問加密的文件系統(tǒng)時(shí),用戶305使用客戶端300向服務(wù)器310發(fā)送安裝請求306。服務(wù)器310確定該安裝請求306是訪問未加密文件系統(tǒng)還是加密文件系統(tǒng)的請求。在圖3所示的例子中,安裝請求306是訪問加密文件系統(tǒng)的請求。由此,服務(wù)器310向客戶端300發(fā)送EFS文件標(biāo)記消息308,該消息通知客戶端300安裝請求306對應(yīng)于加密文件系統(tǒng)。進(jìn)而,客戶端300向密鑰分發(fā)中心320發(fā)送會(huì)話票據(jù)請求330,該請求表明用戶305請求訪問服務(wù)器310上的加密文件系統(tǒng)。密鑰分發(fā)中心320識(shí)別服務(wù)器310的中間密鑰庫335并檢索中間密鑰338,中間密鑰338即先前生成的同一個(gè)中間密鑰。密鑰分發(fā)中心320將中間密鑰338包括在會(huì)話票據(jù)345中,并將會(huì)話票據(jù)345發(fā)送到客戶端300。在一種實(shí)施方式中,當(dāng)密鑰分發(fā)中心320不能夠定位中間密鑰時(shí),用戶305為客戶端300提供加密文件系統(tǒng)口令,客戶端300把該口令發(fā)送到服務(wù)器310,以便讓服務(wù)器310重新創(chuàng)建該中間密鑰(參見圖6、8、9和對應(yīng)的文字以獲得更多細(xì)節(jié))。由于服務(wù)器310 (經(jīng)EFS文件標(biāo)記308)通知客戶端300所請求的文件系統(tǒng)是加密的這一事實(shí),客戶端300自動(dòng)地選擇安全協(xié)議安裝選擇(例如,kbr5p),并將該安裝選擇連同會(huì)話票據(jù)345 —起發(fā)送到服務(wù)器310。進(jìn)而,安全管理器350使用包括在會(huì)話票據(jù)345中的中間密鑰338來解密加密私鑰370。然后,安全管理器350使用解密后的私鑰來解密存儲(chǔ)在EFS文件庫380中的所請求的加密文件系統(tǒng),并相應(yīng)地處理客戶端300和服務(wù)器310之間的文件系統(tǒng)調(diào)用390。
圖4是示出服務(wù)器通過以每個(gè)線程為基礎(chǔ)指派私鑰來通過多個(gè)線程為多個(gè)客戶端提供加密文件系統(tǒng)訪問的圖。服務(wù)器310包括線程/密鑰表430,這個(gè)表把活動(dòng)運(yùn)行的線程與用戶的私鑰相關(guān)聯(lián)。如此,服務(wù)器310對使用多個(gè)客戶端(400、410和420)的多個(gè)用戶(405,415和425)支持多個(gè)EFS會(huì)話。用戶405希望訪問位于服務(wù)器310處的加密文件系統(tǒng)。由此,客戶端400向密鑰分發(fā)中心320發(fā)送請求,密鑰分發(fā)中心320從中間密鑰庫335檢索中間密鑰并將該中間密鑰發(fā)送到客戶端400。進(jìn)而,客戶端400將用戶405的中間密鑰提供給服務(wù)器310。安全管理器從EFS私鑰庫360檢索用戶405的加密私鑰,并利用用戶405的中間密鑰來解密該加密私鑰。然后,安全管理器350將解密后的私鑰連同用戶405的會(huì)話號(hào)一起存儲(chǔ)到線程/密鑰表430中。同樣,安全管理器350解密并存儲(chǔ)用于用戶415和用戶425的私鑰,并將它們的私鑰與對應(yīng)的會(huì)話線程關(guān)聯(lián)。因此,服務(wù)器310對多個(gè)用戶提供同時(shí)的加密文件系統(tǒng)支持。圖5是示出服務(wù)器基于用戶的口令生成中間密鑰和私鑰的圖。用戶305希望加密 并存儲(chǔ)由服務(wù)器310管理的文件系統(tǒng)。用戶305以向客戶端300提供加密文件系統(tǒng)(EFS)口令500開始,客戶端300把EFS 口令500提供給服務(wù)器310。安全管理器350包括中間密鑰生成器510、私鑰加密器530和EFS密鑰生成器540。中間密鑰生成器510利用例如S2K(字符串到密鑰)函數(shù)之類的函數(shù)來生成中間密鑰338。如本領(lǐng)域技術(shù)人員可以認(rèn)識(shí)到的,S2K函數(shù)可以包括消息摘要算法和偽隨機(jī)數(shù)生成器。安全管理器350將中間密鑰338存儲(chǔ)在中間密鑰庫335中并將中間密鑰338指派給用戶305。進(jìn)而,當(dāng)用戶305希望訪問位于服務(wù)器310處的加密文件系統(tǒng)時(shí),密鑰分發(fā)服務(wù)器可以從中間密鑰庫335檢索中間密鑰338,并將中間密鑰338再提供給客戶端300 (參見圖6和對應(yīng)的文字以獲得更多細(xì)節(jié))。EFS密鑰生成器540是為用戶生成不對稱密鑰的模塊,其中的不對稱密鑰包括私鑰550。EFS密鑰生成器540可以包括例如專門為加密文件系統(tǒng)生成私鑰的算法,其中的私鑰例如是RAS (Rivest,Shamir與Adleman)2048位私鑰。安全管理器350利用私鑰550來加密用戶305的文件系統(tǒng)。私鑰加密器530利用中間密鑰338來加密私鑰550,由此創(chuàng)建加密私鑰370,加密私鑰370存儲(chǔ)在EFS私鑰庫360中。如可以看到的,為了復(fù)制私鑰550,安全管理器必須從客戶端300接收中間密鑰338或者從用戶305接收EFS 口令(參見圖6、7和對應(yīng)的文字以獲得更多細(xì)節(jié))。圖6是示出服務(wù)器從客戶端接收中間密鑰和服務(wù)器使用該中間密鑰來復(fù)制用戶私鑰的圖??蛻舳?00從密鑰分發(fā)中心(KDC)接收會(huì)話票據(jù)345,該會(huì)話票據(jù)包括中間密鑰338 (參見圖3和對應(yīng)的文字以獲得更多細(xì)節(jié))。服務(wù)器310檢測到會(huì)話票據(jù)345包括中間密鑰338,并指示安全管理器350提取中間密鑰338并利用私鑰解密器600使用中間密鑰338解密加密私鑰370,從而產(chǎn)生私鑰550。進(jìn)而,文件加密器/解密器620使用私鑰550來加密和解密位于EFS文件庫380上的文件系統(tǒng),并且通過安全Kerberos通道來處理與客戶端300的文件系統(tǒng)調(diào)用。圖7是示出服務(wù)器接收加密文件系統(tǒng)(EFS) 口令并使用該EFS 口令來復(fù)制私鑰的圖。在客戶端會(huì)話密鑰不包括中間密鑰的實(shí)施方式中,提示用戶提供EFS 口令,以便讓服務(wù)器從該口令重新創(chuàng)建中間密鑰。在這些實(shí)施方式中,用戶305向客戶端300提供EFS 口令500,客戶端300又把EFS 口令500傳遞到服務(wù)器310。中間密鑰生成器510使用EFS 口令來復(fù)制中間密鑰338,這類似于圖5中所示出的(中間密鑰生成器510首先創(chuàng)建中間密鑰338)。接下來,私鑰解密器600利用中間密鑰338解密加密私鑰560,由此產(chǎn)生私鑰550。進(jìn)而,文件加密器/解密器620使用私鑰550來加密和解密位于EFS文件庫380上的文件系統(tǒng),并且通過安全Kerberos通道來處理與客戶端300的文件系統(tǒng)調(diào)用。圖8是示出在通過安全Kerberos通道提供對位于服務(wù)器上的加密文件系統(tǒng)的客戶端訪問時(shí)所采取的步驟的流程圖??蛻舳颂幚碓?00開始,隨后在步驟805客戶端利用密鑰分發(fā)中心(KDC)320認(rèn)證其自己及其用戶。服務(wù)器處理在850開始,隨后在步驟855服務(wù)器也利用KDC 320認(rèn)證自己。在步驟810,客戶端向服務(wù)器發(fā)送安裝由該服務(wù)器管理的文件的請求。在步驟
860,服務(wù)器接收客戶端請求,而且服務(wù)器確定所請求的文件系統(tǒng)是否是加密的文件系統(tǒng)(判決865)。例如,文件系統(tǒng)可以是利用對應(yīng)于該客戶端的用戶的私鑰加密的。如果文件系統(tǒng)是未加密的文件系統(tǒng),則判決865就分支到“否”分支867,隨后服務(wù)器處理與客戶端的文件系統(tǒng)調(diào)用,例如提供對未加密文件系統(tǒng)的訪問和改變(步驟870和客戶端的步驟840)。服務(wù)器處理在872結(jié)束。另一方面,如果文件系統(tǒng)是加密的,則判決865就分支到“是”分支868,隨后服務(wù)器發(fā)送通知客戶端所請求的文件系統(tǒng)是加密的的消息(步驟875)。在客戶端處,客戶端基于所接收到的消息來確定所請求的文件系統(tǒng)是否是加密的(判決815)。如果文件系統(tǒng)不是加密的,則判決815就分支到“否”分支819,隨后客戶端處理與服務(wù)器的文件系統(tǒng)調(diào)用(步驟840和以上討論的服務(wù)器的步驟870),而且客戶端處理在845結(jié)束。另一方面,如果服務(wù)器的消息表明所請求的文件系統(tǒng)是加密的文件系統(tǒng),則判決815就分支到“是”分支818,隨后客戶端提示用戶提供Kerberos用戶名與口令,以便從KDC320接收允許客戶端與服務(wù)器通過安全Kerberos通道通信的會(huì)話票據(jù)(步驟820 )。KDC 320提供會(huì)話票據(jù),基于KDC 320是否能夠定位服務(wù)器的中間密鑰存儲(chǔ)區(qū)域,該會(huì)話票據(jù)可以包括或者可以不包括中間密鑰(參見圖9和對應(yīng)的文字以獲得更多細(xì)節(jié))。一旦客戶端從KDC 320接收到了會(huì)話票據(jù),客戶端就自動(dòng)地選擇安全安裝選項(xiàng),例如Kerberos “krb5p”安裝選擇,并且將該安裝選擇連同會(huì)話票據(jù)一起發(fā)送到服務(wù)器(步驟825)。在服務(wù)器處,服務(wù)器確定所接收到的會(huì)話票據(jù)是否包括中間密鑰(判決880)。如果會(huì)話票據(jù)包括中間密鑰,則判決880就分支到“是”分支881,隨后在步驟883服務(wù)器從該會(huì)話票據(jù)提取中間密鑰并利用該中間密鑰來解密客戶端的加密私鑰。在步驟894,服務(wù)器解密加密文件系統(tǒng),從而得到不加密的文件系統(tǒng)。然后服務(wù)器利用解密后的文件系統(tǒng)來處理服務(wù)器與客戶端之間與文件系統(tǒng)相關(guān)的調(diào)用(步驟895和步驟840)。另一方面,如果會(huì)話票據(jù)不包括中間密鑰,則判決880就分支到“否”分支882,隨后在步驟885服務(wù)器從客戶端請求加密文件系統(tǒng)口令。在客戶端處,確定客戶端是否接收到提供口令的請求(判決830)。如果服務(wù)器發(fā)送了請求口令的消息,則判決830就分支到“是”分支832,隨后在步驟835客戶端提示用戶提供該用戶的加密文件系統(tǒng)口令,然后客戶端把該口令發(fā)送到服務(wù)器。加密文件系統(tǒng)口令是特定于用戶的,因?yàn)橛脩舻闹虚g密鑰是從該口令導(dǎo)出的(參見圖5和對應(yīng)的文字以獲得更多細(xì)節(jié))。另一方面,如果服務(wù)器沒有請求口令(例如,會(huì)話票據(jù)包括了中間密鑰),則判決830就分支到“否”分支838,跳過口令提示步驟在步驟890,服務(wù)器接收口令并生成中間密鑰(參見圖7和對應(yīng)的文字以獲得更多細(xì)節(jié))。接下來,服務(wù)器利用所生成的中間密鑰來解密加密私鑰(步驟892)而且,進(jìn)而,在步驟894利用解密后的私鑰來解密加密文件系統(tǒng)。然后,服務(wù)器與客戶端利用解密后的文件系統(tǒng)來處理與文件系統(tǒng)相關(guān)的調(diào)用(步驟895和840)??蛻舳颂幚碓?45結(jié)束,而服務(wù)器處理在899結(jié)束。圖9是示出在密鑰分發(fā)中心(KDC)向客戶端提供會(huì)話票據(jù)時(shí)所采取的步驟的流程圖。處理在900開始,隨后KDC從客戶端300接收用于與特定服務(wù)器(例如,服務(wù)器310)通信的會(huì)話票據(jù)請求(步驟910)。在一種實(shí)施方式中,在接收會(huì)話票據(jù)請求之前,KDC從客戶端300接收票據(jù)授予票據(jù)(TGT)請求。在這種實(shí)施方式中,KDC把TGT提供給客戶端300,而且,進(jìn)而,客戶端300又把該TGT包括在客戶端300的會(huì)話請求中。在步驟920,KDC訪問中間密鑰庫335并且嘗試檢索對應(yīng)于客戶端300的用戶的中間密鑰。中間庫335是由服務(wù)器310管理的存儲(chǔ)區(qū)域而且包括用于有加密文件系統(tǒng)存儲(chǔ)在服務(wù)器310的用戶的中間密鑰。在一種實(shí)施方式中,KDC經(jīng)KDC與服務(wù)器310之間的安全通信通道來訪問中間庫335。在這種實(shí)施方式中,KDC使用服務(wù)器310的IP (互聯(lián)網(wǎng)協(xié)議)地址和用戶的用戶名來識(shí)別該用戶對應(yīng)的中間密鑰。在另一種實(shí)施方式中,KDC可以管理安全地存儲(chǔ)用于每個(gè)用戶的EFS中間密鑰的數(shù)據(jù)庫(與常規(guī)的Kerberos密鑰分開)。在這種實(shí)施方式中,對KDC數(shù)據(jù)庫的模式更改可以包括〈User NameXhostname/IP addressXEFS Interkey〉例如〈user1X9. 182. 288. 23><Keyl> 和〈user 1X9. 182. 288. 24>〈Key2>。在這種實(shí)施方式中,KDC數(shù)據(jù)庫維護(hù)用于“用戶I”的EFS密鑰,其中第一條目指示用戶I的用于具有IP地址〈9. 182. 288. 23>的第一服務(wù)器的EFS中間密鑰,而第二條目指示用戶I的用于具有IP地址〈9. 182. 288. 24>的第二個(gè)服務(wù)器的EFS中間密鑰。在這種實(shí)施方式中,兩個(gè)服務(wù)器都管理加密文件系統(tǒng)并且經(jīng)網(wǎng)絡(luò)文件系統(tǒng)(NFS)與客戶端通信。在另一種實(shí)施方式中,KDC可以安全地聯(lián)系在計(jì)算機(jī)網(wǎng)絡(luò)中以每個(gè)機(jī)器為基礎(chǔ)為所有用戶存儲(chǔ)EFS中間密鑰的LDAP (輕量級(jí)目錄訪問協(xié)議)服務(wù)器(集中式服務(wù)器)。一旦KDC嘗試檢索用戶的中間密鑰,就確定KDC是否成功地定位并檢索到了該中間密鑰(判決930)。如果KDC檢索到了中間密鑰,則判決930就分支到“是”分支938,隨后KDC生成會(huì)話票據(jù)并將該中間密鑰嵌入到會(huì)話票據(jù)中(步驟950)。另一方面,如果KDC不能夠檢索到中間密鑰,則判決930就分支到“否”分支932,隨后KDC生成不帶中間密鑰的會(huì)話票據(jù)(步驟940)。在步驟960,KDC把生成的會(huì)話票據(jù)發(fā)送到客戶端300 (所生成的會(huì)話票據(jù)可以包括或者可以不包括中間密鑰,如以上所討論的)。KDC處理在970結(jié)束。附圖中的流程圖和框圖說明了根據(jù)本公開各種實(shí)施方式的系統(tǒng)、方法與計(jì)算機(jī)程序產(chǎn)品的可能實(shí)現(xiàn)的體系結(jié)構(gòu)、功能性與操作。在這點(diǎn)上,流程圖或者框圖中的每個(gè)框都可以代表包括用于實(shí)現(xiàn)所指定邏輯功能的一條或多條可執(zhí)行指令的模塊、片段或者代碼部分。還應(yīng)當(dāng)注意,在有些備選實(shí)現(xiàn)中,框中所指出的功能可以不以附圖中所指出的次序發(fā)生。例如,依賴于所涉及的功能性,順序示出的兩個(gè)框事實(shí)上可以基本上同時(shí)執(zhí)行,或者有時(shí)候框可以按顛倒的次序執(zhí)行。還應(yīng)當(dāng)注意,框圖和/或流程圖的每個(gè)框及框圖和/或流程圖中的框的組合可以由執(zhí)行所指定功能或動(dòng)作的基于硬件的專用系統(tǒng)實(shí)現(xiàn)或者由專用硬件與計(jì)算機(jī)指令的組合實(shí)現(xiàn)。盡管已經(jīng)示出和描述了本公開的特定實(shí)施方式,但是,對于本領(lǐng)域技術(shù)人員來說,很顯然,基于這里的教義,在不背離本公開及其更廣泛方面的情況下,可以進(jìn)行變化和修改。因此,所附權(quán)利要求是要在其范圍內(nèi)包含落在本公開范圍內(nèi)的所有這樣的變化與修改的。此外,應(yīng)當(dāng)理解,本公開只由所附權(quán)利要求來限定。本領(lǐng)域技術(shù)人員將理解,如果所引入的權(quán)利要求元素的具體數(shù)目是有意圖的,那么這種意圖將在權(quán)利要求中明確地陳述,而且,在沒有這種陳述的情況下,就不存在這種限制。對于非限制性例子,作為對理解的幫助,以下所附權(quán)利要求包含使用引導(dǎo)語“至少一個(gè)”和“一個(gè)或多個(gè)”來引入權(quán)利要求元素。但是,即使當(dāng)相同的權(quán)利要求包括引導(dǎo)語“一個(gè)或多個(gè)”或者“至少一個(gè)”和諸如“一個(gè)”(a或an)之類的不定冠詞時(shí),這種短語的使用也不應(yīng)當(dāng)認(rèn)為是暗示用不定冠詞“一個(gè)”引 入權(quán)利要求元素使包含這樣引入的權(quán)利要求元素的任何特定權(quán)利要求被限定到只包含一個(gè)這種元素的公開;對于權(quán)利要求中定冠詞的使用,也是同樣的道理。
權(quán)利要求
1.一種用于安全地訪問加密文件系統(tǒng)的方法,該方法包括如下步驟 在文件服務(wù)器處從客戶端接收用于該客戶端安裝位于所述文件服務(wù)器處的文件系統(tǒng)的請求; 在所述文件服務(wù)器處確定所請求的文件系統(tǒng)是加密的; 從所述文件服務(wù)器向所述客戶端發(fā)送消息,該消息通知所述客戶端所請求的文件系統(tǒng)是加密的; 從所述客戶端接收包括安全協(xié)議安裝選擇的會(huì)話票據(jù); 在所述文件服務(wù)器處解密對應(yīng)于用戶的加密私鑰,所述解密產(chǎn)生私鑰; 在所述文件服務(wù)器處利用所述私鑰來解密所述文件系統(tǒng);及 通過對應(yīng)于所述安全協(xié)議安裝選擇的安全通道,將解密后的文件系統(tǒng)從所述文件服務(wù)器發(fā)送到所述客戶端。
2.如權(quán)利要求I所述的方法,還包括如下步驟 其中,所述文件系統(tǒng)是高級(jí)交互式執(zhí)行加密文件系統(tǒng); 其中,所述文件服務(wù)器和所述客戶端利用允許所述用戶以分布式方式從所述文件服務(wù)器訪問文件的網(wǎng)絡(luò)文件系統(tǒng)格式來進(jìn)行通信;及 其中,所述安全協(xié)議安裝選擇是允許所述客戶端和所述文件服務(wù)器通過計(jì)算機(jī)網(wǎng)絡(luò)來安全地通信的Kerberos協(xié)議。
3.如權(quán)利要求I所述的方法,其中,解密所述加密私鑰還包括如下步驟 確定所述會(huì)話票據(jù)是否包括中間密鑰; 響應(yīng)于確定所述會(huì)話票據(jù)包括所述中間密鑰,從所述會(huì)話票據(jù)中提取該中間密鑰,并利用所提取出的中間密鑰來解密所述加密私鑰;及 響應(yīng)于確定所述會(huì)話票據(jù)不包括所述中間密鑰,該方法還包括 從所述文件服務(wù)器向所述客戶端發(fā)送對加密文件系統(tǒng)ロ令的請求; 在所述文件服務(wù)器處接收來自所述客戶端的加密文件系統(tǒng)ロ令; 從位于所述文件服務(wù)器處的所述加密文件系統(tǒng)ロ令生成所述中間密鑰;及 利用所生成的中間密鑰來解密所述加密私鑰。
4.如權(quán)利要求I所述的方法,其中,所述中間密鑰是由密鑰分發(fā)中心服務(wù)器提供給所述客戶端的,該密鑰分發(fā)中心服務(wù)器與所述文件服務(wù)器不同而且適于從由所述文件服務(wù)器管理的存儲(chǔ)區(qū)域檢索所述中間密鑰。
5.如權(quán)利要求I所述的方法,其中,所述文件服務(wù)器管理多個(gè)會(huì)話線程,所述多個(gè)會(huì)話線程中的每ー個(gè)會(huì)話線程都對應(yīng)于多個(gè)用戶中的一個(gè)用戶并且與多個(gè)私鑰中的一個(gè)私鑰相關(guān)聯(lián),所述用戶包括在所述多個(gè)用戶當(dāng)中,而且所述私鑰包括在所述多個(gè)私鑰當(dāng)中。
6.如權(quán)利要求I所述的方法,其中,響應(yīng)于從所述文件服務(wù)器接收到所請求的文件系統(tǒng)是加密的這一消息,所述客戶端自動(dòng)地選擇所述安全協(xié)議安裝選擇。
7.如權(quán)利要求I所述的方法,還包括如下步驟 在密鑰分發(fā)中心服務(wù)器處從客戶端接收請求,該請求識(shí)別用戶和文件服務(wù)器; 檢索對應(yīng)于所述文件服務(wù)器和所述用戶兩者的中間密鑰,其中該中間密鑰適于解密由所述文件服務(wù)器用來解密加密文件系統(tǒng)的加密私鑰; 將所述中間密鑰包括在會(huì)話票據(jù)中;及將所述會(huì)話票據(jù)發(fā)送到所述客戶端。
8.如權(quán)利要求7所述的方法,還包括如下步驟 在所述密鑰分發(fā)中心服務(wù)器處,識(shí)別對應(yīng)于所述文件服務(wù)器的互聯(lián)網(wǎng)協(xié)議地址; 從對應(yīng)于所述用戶的請求中提取用戶名;及 利用所述互聯(lián)網(wǎng)協(xié)議地址和所述用戶名在由所述文件服務(wù)器管理的中間存儲(chǔ)區(qū)域中定位所述中間密鑰。
9.如權(quán)利要求7所述的方法,其中,所述密鑰分發(fā)中心服務(wù)器管理包括多個(gè)中間密鑰的中間密鑰存儲(chǔ)區(qū)域,所述多個(gè)中間密鑰中的每ー個(gè)中間密鑰對應(yīng)于多個(gè)用戶中的ー個(gè)用戶,所述方法還包括 從所述多個(gè)中間密鑰中選擇中間密鑰,其中所選定的中間密鑰與所述文件服務(wù)器和所述用戶兩者相關(guān)聯(lián) '及 將該中間密鑰包括在發(fā)送到所述客戶端的會(huì)話票據(jù)中。
10.一種用于安全地訪問加密文件系統(tǒng)的信息處理系統(tǒng),該系統(tǒng)包括 一個(gè)或多個(gè)處理器; 能由所述處理器中的至少ー個(gè)處理器訪問的存儲(chǔ)器; 能由所述處理器中的至少ー個(gè)處理器訪問的非易失性存儲(chǔ)區(qū)域; 存儲(chǔ)在所述存儲(chǔ)器中的ー組指令,該組指令由所述處理器中的至少ー個(gè)處理器執(zhí)行以便執(zhí)行以下動(dòng)作 在文件服務(wù)器處從客戶端接收用于該客戶端安裝位于所述文件服務(wù)器處的文件系統(tǒng)的請求; 在所述文件服務(wù)器處確定所請求的文件系統(tǒng)是加密的; 從所述文件服務(wù)器向所述客戶端發(fā)送消息,該消息通知所述客戶端所請求的文件系統(tǒng)是加密的; 從所述客戶端接收包括安全協(xié)議安裝選擇的會(huì)話票據(jù); 在所述文件服務(wù)器處解密對應(yīng)于用戶的加密私鑰,所述解密產(chǎn)生私鑰; 在所述文件服務(wù)器處利用所述私鑰來解密所述文件系統(tǒng);及 通過對應(yīng)于所述安全協(xié)議安裝選擇的安全通道,將解密后的文件系統(tǒng)從所述文件服務(wù)器發(fā)送到所述客戶端。
11.如權(quán)利要求10所述的信息處理系統(tǒng),其中,該信息處理系統(tǒng)還執(zhí)行以下動(dòng)作,包括: 其中,所述文件系統(tǒng)是高級(jí)交互式執(zhí)行加密文件系統(tǒng); 其中,所述文件服務(wù)器和所述客戶端利用允許所述用戶以分布式方式從所述文件服務(wù)器訪問文件的網(wǎng)絡(luò)文件系統(tǒng)格式來進(jìn)行通信;及 其中,所述安全協(xié)議安裝選擇是允許所述客戶端和所述文件服務(wù)器通過計(jì)算機(jī)網(wǎng)絡(luò)來安全地通信的Kerberos協(xié)議。
12.如權(quán)利要求10所述的信息處理系統(tǒng),其中,該信息處理系統(tǒng)還執(zhí)行以下動(dòng)作,包括 確定所述會(huì)話票據(jù)是否包括中間密鑰; 響應(yīng)于確定所述會(huì)話票據(jù)包括所述中間密鑰,從所述會(huì)話票據(jù)中提取該中間密鑰,并利用所提取出的中間密鑰來解密所述加密私鑰;及 響應(yīng)于確定所述會(huì)話票據(jù)不包括所述中間密鑰,方法還包括 從所述文件服務(wù)器向所述客戶端發(fā)送對加密文件系統(tǒng)ロ令的請求; 在所述文件服務(wù)器處接收來自所述客戶端的加密文件系統(tǒng)ロ令; 從位于所述文件服務(wù)器處的所述加密文件系統(tǒng)ロ令生成所述中間密鑰;及 利用所生成的中間密鑰來解密所述加密私鑰。
13.如權(quán)利要求10所述的信息處理系統(tǒng),其中,所述中間密鑰是由密鑰分發(fā)中心服務(wù)器提供給所述客戶端的,該密鑰分發(fā)中心服務(wù)器與所述文件服務(wù)器不同而且適于從由所述文件服務(wù)器管理的存儲(chǔ)區(qū)域檢索所述中間密鑰。
14.如權(quán)利要求10所述的信息處理系統(tǒng),其中,所述文件服務(wù)器管理多個(gè)會(huì)話線程,所述多個(gè)會(huì)話線程中的每ー個(gè)會(huì)話線程都對應(yīng)于多個(gè)用戶中的一個(gè)用戶并且與多個(gè)私鑰中的一個(gè)私鑰相關(guān)聯(lián),所述用戶包括在所述多個(gè)用戶當(dāng)中,而且所述私鑰包括在所述多個(gè)私陰當(dāng)中。
15.如權(quán)利要求10所述的信息處理系統(tǒng),其中,響應(yīng)于從所述文件服務(wù)器接收到所請求的文件系統(tǒng)是加密的這一消息,所述客戶端自動(dòng)地選擇所述安全協(xié)議安裝選擇。
16.如權(quán)利要求10所述的信息處理系統(tǒng),還包括 在密鑰分發(fā)中心服務(wù)器處從客戶端接收請求,該請求識(shí)別用戶和文件服務(wù)器; 檢索對應(yīng)于所述文件服務(wù)器和所述用戶兩者的中間密鑰,其中該中間密鑰適于解密由所述文件服務(wù)器用來解密加密文件系統(tǒng)的加密私鑰; 將所述中間密鑰包括在會(huì)話票據(jù)中;及 將所述會(huì)話票據(jù)發(fā)送到所述客戶端。
17.如權(quán)利要求16所述的信息處理系統(tǒng),其中,該信息處理系統(tǒng)還執(zhí)行以下動(dòng)作,包括 在所述密鑰分發(fā)中心服務(wù)器處識(shí)別對應(yīng)于所述文件服務(wù)器的互聯(lián)網(wǎng)協(xié)議地址; 從對應(yīng)于所述用戶的請求中提取用戶名;及 利用所述互聯(lián)網(wǎng)協(xié)議地址和所述用戶名在由所述文件服務(wù)器管理的中間存儲(chǔ)區(qū)域中定位所述中間密鑰。
18.如權(quán)利要求16所述的信息處理系統(tǒng),其中,所述密鑰分發(fā)中心服務(wù)器管理包括多個(gè)中間密鑰的中間密鑰存儲(chǔ)區(qū)域,所述多個(gè)中間密鑰中的每ー個(gè)中間密鑰對應(yīng)于多個(gè)用戶中的一個(gè)用戶,該信息處理系統(tǒng)還執(zhí)行以下動(dòng)作,包括 從所述多個(gè)中間密鑰中選擇中間密鑰,其中所選定的中間密鑰與所述文件服務(wù)器和所述用戶兩者相關(guān)聯(lián) '及 將所述中間密鑰包括在發(fā)送到所述客戶端的會(huì)話票據(jù)中。
19.ー種包括計(jì)算機(jī)程序代碼的計(jì)算機(jī)程序,當(dāng)所述程序代碼加載到計(jì)算機(jī)系統(tǒng)中并且被執(zhí)行吋,該計(jì)算機(jī)程序執(zhí)行如權(quán)利要求I至9中任何一項(xiàng)所述的方法的所有步驟。
全文摘要
文件服務(wù)器從客戶端接收安裝加密文件系統(tǒng)的請求。該文件服務(wù)器通知客戶端所請求的文件系統(tǒng)是加密的,而且,進(jìn)而,從該客戶端接收包括安全協(xié)議安裝選擇的會(huì)話票據(jù)。文件服務(wù)器解密該客戶端的用戶的加密私鑰,然后利用所述私鑰解密所請求的加密文件系統(tǒng)。進(jìn)而,文件服務(wù)器把解密后的文件系統(tǒng)通過安全通道發(fā)送給客戶端,所述安全通道基于所述安全協(xié)議安裝選擇。在一種實(shí)施方式中,密鑰分發(fā)中心服務(wù)器從客戶端接收讓該客戶端的用戶訪問文件服務(wù)器處的加密文件系統(tǒng)的請求。該密鑰分發(fā)中心服務(wù)器檢索中間密鑰;將該中間密鑰包括到會(huì)話票據(jù)中;并將該會(huì)話票據(jù)發(fā)送到客戶端。
文檔編號(hào)G06F17/30GK102668503SQ201080058388
公開日2012年9月12日 申請日期2010年12月14日 優(yōu)先權(quán)日2009年12月21日
發(fā)明者D·巴納吉, R·山卡, S·C·普納迪卡, S·R·帕提爾 申請人:國際商業(yè)機(jī)器公司