專利名稱:設(shè)備的安全性關(guān)聯(lián)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及獲得至少兩方間的委托關(guān)聯(lián)。
背景技術(shù):
由使用密鑰加密將傳送的數(shù)據(jù),在網(wǎng)絡(luò)連接上,將密鑰和加密數(shù)據(jù)單獨(dú)或一起傳送到接收方的發(fā)送方來(lái)實(shí)現(xiàn)秘密密鑰加密,以及接收方使用相同的密鑰來(lái)解密所接收的數(shù)據(jù)。由使用對(duì)應(yīng)于接收方的公鑰來(lái)加密將傳送的數(shù)據(jù),以及在網(wǎng)絡(luò)連接上將所加密的數(shù)據(jù)傳送到接收方的發(fā)送方,以及使用其私鑰來(lái)解密所接收的數(shù)據(jù)的接收方來(lái)實(shí)現(xiàn)公鑰基礎(chǔ)結(jié)構(gòu)(在下文中,稱為“PKI”)。然而,在分布式網(wǎng)絡(luò)設(shè)備,特別是在受限的情形中,諸如加密網(wǎng)絡(luò)上的多個(gè)設(shè)備或節(jié)點(diǎn)中的引導(dǎo)程序,正以令人擔(dān)憂的增長(zhǎng)速度破壞共享用于秘密密鑰加密的秘密密鑰和用于PKI的公鑰所需的信任。
發(fā)明內(nèi)容
在此描述多個(gè)設(shè)備中的安全網(wǎng)絡(luò)關(guān)聯(lián)。
在分布式設(shè)備中生成對(duì)稱密鑰包括在至少一個(gè)設(shè)備處生成一個(gè)公共和私有密鑰值,經(jīng)帶外第三方機(jī)制,從另一設(shè)備接收公鑰值,以及將保密值生成為對(duì)應(yīng)于本地設(shè)備的私鑰值和從其他設(shè)備接收的私鑰值的函數(shù)。
當(dāng)結(jié)合附圖時(shí),從下述詳細(xì)描述,本發(fā)明的范圍將顯而易見(jiàn),這些詳細(xì)描述,盡管表示本發(fā)明的實(shí)施例,但僅是示例說(shuō)明,因?yàn)閺南率鲈敿?xì)描述,各種改變和改進(jìn)對(duì)本領(lǐng)域的技術(shù)人員來(lái)說(shuō)將變得顯而易見(jiàn),其中圖1表示根據(jù)示例性實(shí)施例的客戶/網(wǎng)絡(luò)系統(tǒng);圖2表示根據(jù)示例性實(shí)施例的設(shè)備的關(guān)聯(lián);圖3示例說(shuō)明根據(jù)示例性實(shí)施例的處理流;圖4示例說(shuō)明根據(jù)示例性實(shí)施例的另一處理流;以及圖5示例說(shuō)明能用來(lái)實(shí)現(xiàn)在此所述的技術(shù)的通用計(jì)算機(jī)網(wǎng)絡(luò)環(huán)境。
具體實(shí)施例方式
在圖1的示例性網(wǎng)絡(luò)環(huán)境中,經(jīng)網(wǎng)絡(luò)100,多個(gè)客戶計(jì)算設(shè)備105、110、115和120,也稱為客戶機(jī)設(shè)備彼此耦合并耦合到至少一個(gè)服務(wù)器設(shè)備125。網(wǎng)絡(luò)100用來(lái)表示可以包括有線和/或無(wú)線網(wǎng)絡(luò)的各種傳統(tǒng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)和類型。網(wǎng)絡(luò)100可以進(jìn)一步利用各種傳統(tǒng)網(wǎng)絡(luò)協(xié)議,包括公共和/或私有協(xié)議的任何一個(gè)。網(wǎng)絡(luò)100可以包括例如Internet以及可能一個(gè)或多個(gè)局域網(wǎng)(LANs)的至少一部分。
客戶機(jī)設(shè)備105可以包括各種傳統(tǒng)的計(jì)算設(shè)備的任何一個(gè),包括臺(tái)式個(gè)人計(jì)算機(jī)(PC)、工作站、主機(jī)、Internet設(shè)備和游戲控制臺(tái)。另外,與網(wǎng)絡(luò)100有關(guān)的客戶機(jī)設(shè)備可以包括個(gè)人數(shù)字助理(PDA)110、膝上型計(jì)算機(jī)115和蜂窩式電話120等等,其可以通過(guò)有線和/或無(wú)線鏈路與網(wǎng)絡(luò)100通信。另外,一個(gè)或多個(gè)客戶機(jī)設(shè)備105、110、115和120可以包括相同類型的設(shè)備,或者不同類型的設(shè)備。
服務(wù)器設(shè)備125可以向計(jì)算設(shè)備105、110、115和120提供各種數(shù)據(jù)和/或功能性的任何一個(gè)。數(shù)據(jù)可以是公眾可獲得的或者受限的,例如僅限于某些用戶或僅當(dāng)支付適當(dāng)費(fèi)用的話可獲得等等。服務(wù)器設(shè)備125是網(wǎng)絡(luò)服務(wù)器、應(yīng)用服務(wù)器、web葉片(web blade)的任何一個(gè),或其任意組合。服務(wù)器設(shè)備125是內(nèi)容源的任何設(shè)備,以及客戶機(jī)設(shè)備105、110、115和120包括接收這種內(nèi)容的任何設(shè)備。
在數(shù)據(jù)源130或135處,準(zhǔn)備軟件程序,包括操作系統(tǒng)和應(yīng)用程序,和/或提供給服務(wù)器設(shè)備125或客戶機(jī)設(shè)備105、110、115和120的任何一個(gè),用于加載和/或執(zhí)行。為一致性起見(jiàn),下述論述所指的“應(yīng)用”包含如本領(lǐng)域所公知的,至少操作系統(tǒng)、程序和應(yīng)用程序的任何一個(gè),或者單個(gè)或者以組合方式。
參考圖2的示例性實(shí)施例,描述客戶機(jī)設(shè)備105、110、115和120、服務(wù)器設(shè)備125的任何一個(gè)和數(shù)據(jù)源130和135間的安全關(guān)聯(lián)。
特別地,圖2的示例性實(shí)施例表示在設(shè)備205和設(shè)備230間如何建立信任關(guān)系,以及設(shè)備205和230表示客戶機(jī)設(shè)備105、110、115、120,服務(wù)器設(shè)備125和數(shù)據(jù)源130和135的任何一個(gè)。這些設(shè)備可以另外視為網(wǎng)絡(luò)節(jié)點(diǎn)。根據(jù)在此所述的示例性實(shí)施例,可以通過(guò)建立共享秘密,而設(shè)備間的信息散布不需要高度信任來(lái)實(shí)現(xiàn)信任關(guān)系,或安全關(guān)聯(lián)。為包括但不限于從一個(gè)節(jié)點(diǎn)到另一個(gè)交換信息,例如電子郵件,或遠(yuǎn)程加載操作系統(tǒng)(OS)的目的,可以建立該信任關(guān)系。
根據(jù)圖2的示例性實(shí)施例,在網(wǎng)絡(luò)100上不建立設(shè)備205和230間的信任關(guān)系,在網(wǎng)絡(luò)100上,通信耦合設(shè)備205和230,但寧可說(shuō)是使用第三方帶外,即異步實(shí)體。這種實(shí)體,將稱為“帶外機(jī)制”245可以包括但不限于下述任何一個(gè)串行電纜、USB電纜、紅外連接、個(gè)人數(shù)字助理(PDA)、閃存、存儲(chǔ)條、條碼和智能卡。帶外機(jī)制245可以是程序驅(qū)動(dòng)的或要求用戶干預(yù)。帶外機(jī)制245的串行電纜、USB電纜和紅外兼容例子可以是程序驅(qū)動(dòng)或用戶實(shí)現(xiàn)的。用作帶外機(jī)制245的外設(shè),諸如PDA、閃存、存儲(chǔ)條、條碼和智能卡要求從一個(gè)設(shè)備到另一個(gè)的物理傳輸,因此,要求用戶干預(yù),以便數(shù)據(jù)下載到目的地設(shè)備。
根據(jù)第一實(shí)施例,使用Diffie-Hellman加密協(xié)議,至少在設(shè)備205和230上建立對(duì)稱密鑰。特別地,設(shè)備205上的發(fā)生器215和設(shè)備230上的發(fā)生器235每一個(gè)產(chǎn)生用于各個(gè)設(shè)備的本地公鑰/密鑰對(duì)。經(jīng)帶外機(jī)制245,交換設(shè)備205和230上生成的公鑰值。因此,經(jīng)帶外機(jī)制245輸入在其他設(shè)備上生成的公鑰值,設(shè)備205和230能通過(guò)執(zhí)行本領(lǐng)域所公知的Diffie-Hellman計(jì)算,能作為輸入公鑰值和本地私鑰值的函數(shù)產(chǎn)生共享秘密,因此,在此不再詳細(xì)地描述。
即,設(shè)備205上的共享秘密發(fā)生器225將Diffie-Hellman共享秘密生成為由發(fā)生器215生成的私鑰值和經(jīng)帶外機(jī)制245,從設(shè)備230輸入的公鑰值的函數(shù)。另外,設(shè)備230上的共享秘密發(fā)生器240將Diffie-Hellman共享秘密生成為由發(fā)生器235生成的私鑰值和經(jīng)帶外機(jī)制245,從設(shè)備205輸入的公鑰值的函數(shù)。如本領(lǐng)域所公知的,關(guān)于Diffie-Hellman加密技術(shù),通過(guò)交換公鑰,在設(shè)備205和230上生成的共享秘密密鑰值是相同的,即對(duì)稱的,但沒(méi)有一個(gè)設(shè)備需要在網(wǎng)絡(luò)上輸出私鑰值或共享秘密值。相反,僅將公鑰值從一個(gè)設(shè)備傳送到另一個(gè),以及在帶外機(jī)制上,僅需要低級(jí)信任。
在每個(gè)設(shè)備上生成Diffie-Hellman秘密值用于加密/解密或其他已知認(rèn)證目的。
圖2的實(shí)施例還可以使用Rivest-Shamir-Adleman(在下文中稱為“RSA”)加密協(xié)議,至少在設(shè)備205和230之中建立將共享的秘密值。根據(jù)該示例性實(shí)施例,在設(shè)備205和230的一個(gè)上生成秘密值,以及經(jīng)帶外機(jī)制245,輸出到另一個(gè)節(jié)點(diǎn),同時(shí)受對(duì)應(yīng)于目的地設(shè)備的公鑰值保護(hù)。
具體地,為實(shí)現(xiàn)RSA協(xié)議,設(shè)備205和230將生成公鑰值,盡管僅一個(gè)設(shè)備需要生成私鑰值。在將生成將共享的秘密值的設(shè)備上生成私鑰值。示例性實(shí)施例的描述繼續(xù)假定設(shè)備205上的發(fā)生器215和設(shè)備230上的發(fā)生器235分別生成用于各個(gè)設(shè)備的本地公鑰/密鑰對(duì),盡管該例子不是限制。
假定設(shè)備205將生成將共享的秘密值,經(jīng)帶外機(jī)制245,將在設(shè)備230上的發(fā)生器235生成的公鑰值輸入到設(shè)備205。設(shè)備205上的共享秘密發(fā)生器225將RSA秘密值生成為由發(fā)生器215生成的本地私鑰值和經(jīng)帶外機(jī)制245從設(shè)備230輸入的公鑰值的函數(shù)。如本領(lǐng)域所公知的,關(guān)于RSA加密技術(shù),通過(guò)使用所輸入的公鑰值,即經(jīng)帶外機(jī)制245,從設(shè)備230輸入到設(shè)備205的公鑰值加密秘密值,與設(shè)備230共享該秘密值。然后再次利用帶外機(jī)制245來(lái)將秘密值輸出到設(shè)備230,以及由設(shè)備230的公鑰值保護(hù)該秘密值。因此,設(shè)備205和230從共享秘密值受益,然后該秘密值用來(lái)加密/解密或其他已知驗(yàn)證目的。
在此所述的用于實(shí)施例的示例性實(shí)現(xiàn)包括在網(wǎng)絡(luò)上提供安全引導(dǎo)程序,其中引導(dǎo)程序加載器碼駐留在網(wǎng)絡(luò)設(shè)備的固件上。參考圖2的示例性實(shí)施例和圖3所示的示例性處理流,描述該例子的描述。該描述僅是示例性的,并不打算以任何方式限制。另外,圖3的處理不打算限制所采取的行動(dòng)的順序,因?yàn)槿鐚恼f(shuō)明了解到,可以改變處理中的任何順序。
根據(jù)圖2的例子,描述圖3的處理,由此,設(shè)備205表示RADIUS客戶機(jī)以及設(shè)備230表示RADIUS服務(wù)器。遠(yuǎn)程認(rèn)證撥入用戶服務(wù)(RADIUS)是允許服務(wù)基礎(chǔ)結(jié)構(gòu)維護(hù)駐留在認(rèn)證服務(wù)器上的集中式數(shù)據(jù)庫(kù)中的用戶概況文件的驗(yàn)證服務(wù),然后由遠(yuǎn)程訪問(wèn)服務(wù)器訪問(wèn)概況文件。
當(dāng)RADIUS客戶機(jī)205試圖遠(yuǎn)程加載OS時(shí),其配置文件存儲(chǔ)在RADIUS服務(wù)器230上,通過(guò)RADIUS客戶機(jī)205上的發(fā)生器215,生成305公鑰/密鑰。經(jīng)帶外機(jī)制245,將在RADIUS客戶機(jī)205上生成的公鑰值輸出310到RADIUS服務(wù)器230。
與在RADIUS客戶機(jī)205上生成公鑰/密鑰值同時(shí),或者更可能,在RADIUS服務(wù)器230處,響應(yīng)從RADIUS客戶機(jī)205接收公鑰值,通過(guò)發(fā)生器235,在RADIUS服務(wù)器230上也生成305公鑰/密鑰值。經(jīng)帶外機(jī)制245,將在RADIUS服務(wù)器230上生成的公鑰值輸出310到RADIUS客戶機(jī)310。
RADIUS服務(wù)器230上的發(fā)生器240通過(guò)執(zhí)行Diffie-Hellman計(jì)算,生成315共享秘密值,以及共享秘密值計(jì)算為由發(fā)生器235生成的私鑰值和經(jīng)帶外機(jī)制245,從RADIUS客戶機(jī)205輸入的公鑰值的函數(shù)。
類似地,RADIUS客戶機(jī)205上的發(fā)生器225通過(guò)執(zhí)行Diffie-Hellman計(jì)算,生成315共享秘密值,以及該共享秘密值計(jì)算為由發(fā)生器215生成的私鑰值和經(jīng)帶外機(jī)制245,從RADIUS服務(wù)器230輸入的公鑰值的函數(shù)。
根據(jù)Diffie-Hellman加密技術(shù)的基本原理,由發(fā)生器225和發(fā)生器240生成的秘密值是對(duì)稱的。
另外,還能使用RSA加密技術(shù),實(shí)現(xiàn)在RADIUS客戶機(jī)205上,來(lái)自RADIUS服務(wù)器230的OS的安全引導(dǎo)程序。將參考圖2和4的例子,描述該實(shí)施例的描述。另外,假定RADIUS客戶機(jī)205啟動(dòng)在RADIUS客戶機(jī)205和RADIUS服務(wù)器230間建立信任關(guān)系而描述該例子,盡管該例子不是限制。注意圖3和4的框的描述和編號(hào)不暗示嚴(yán)格的順序。相反,僅舉例說(shuō)明所述的順序。
因此,通過(guò)圖4,當(dāng)RADIUS客戶機(jī)205嘗試遠(yuǎn)程加載OS時(shí),其概況文件存儲(chǔ)在RADIUS服務(wù)器230上,由RADIUS客戶機(jī)205上的發(fā)生器215生成405公鑰/私鑰值。經(jīng)帶外機(jī)制245,將在RADIUS客戶機(jī)205上生成的公鑰值輸出410到RADIUS服務(wù)器230。
與在RADIUS客戶機(jī)205上生成公鑰/密鑰值同時(shí),或者在RADIUS服務(wù)器230處,響應(yīng)從RADIUS客戶機(jī)205接收公鑰值,通過(guò)發(fā)生器235,在RADIUS服務(wù)器230上也生成405公鑰/密鑰值。
RADIUS服務(wù)器230上的發(fā)生器240通過(guò)執(zhí)行RSA計(jì)算,生成415共享秘密值,以及共享秘密值計(jì)算為由發(fā)生器235生成的私鑰值和經(jīng)帶外機(jī)制245,從RADIUS客戶機(jī)205輸入的公鑰值的函數(shù)。
編碼在RADIUS服務(wù)器230上生成的秘密值以便受從RADIUS服務(wù)器205輸入的公鑰值保護(hù),以及經(jīng)帶外機(jī)制245輸出420到RADIUS客戶機(jī)205。
為包括散布數(shù)據(jù),例如電子郵件,建立用于視頻會(huì)議的安全鏈路等等的目的,也可以利用上述技術(shù)來(lái)在圖1所示的設(shè)備105、110、115和120、服務(wù)器125的任何一個(gè)和數(shù)據(jù)源130和135間建立信任關(guān)系。即,上述技術(shù)利用帶外實(shí)體來(lái)降低要求與至少一個(gè)另一節(jié)點(diǎn)的信任關(guān)系的任何網(wǎng)絡(luò)節(jié)點(diǎn)所需的信任,而與用于這種關(guān)聯(lián)的目的無(wú)關(guān)。
另外,根據(jù)在此所述的示例性實(shí)施例,注意用于生成公鑰/私鑰值的裝置和方法是本領(lǐng)域所公知的,因此,目前不詳細(xì)地描述。類似地,加密協(xié)議,包括但不限于根據(jù)在此所述的示例性實(shí)施例利用的Diffie-Hellman協(xié)議和RSA協(xié)議也是公知的,因此,不提供這些協(xié)議的描述。
圖5示例說(shuō)明通用計(jì)算機(jī)環(huán)境500,能用來(lái)實(shí)現(xiàn)在此所述的技術(shù)。計(jì)算機(jī)環(huán)境500僅是計(jì)算環(huán)境的一個(gè)例子,以及不打算提供有關(guān)計(jì)算機(jī)和網(wǎng)絡(luò)結(jié)構(gòu)的用途和功能性的范圍的任何限制。也不應(yīng)當(dāng)將計(jì)算機(jī)環(huán)境500解釋為具有與在示例性計(jì)算機(jī)環(huán)境500中所示的部件的任何一個(gè)或組合的任何相關(guān)性或需求。
計(jì)算機(jī)環(huán)境500包括以計(jì)算機(jī)502形式的通用計(jì)算設(shè)備。計(jì)算機(jī)502的部件能包括但不限于將包括處理器504的各種系統(tǒng)部件耦合到系統(tǒng)存儲(chǔ)器506的一個(gè)或多個(gè)處理器或處理單元504、系統(tǒng)存儲(chǔ)器506和系統(tǒng)總線508。
系統(tǒng)總線508表示若干種總線結(jié)構(gòu)的任何一個(gè)的一個(gè)或多個(gè),包括存儲(chǔ)器總線或存儲(chǔ)器控制器、外圍總線、加速圖形端口和使用各種總線結(jié)構(gòu)的任何一個(gè)的處理器或局部總線。通過(guò)舉例,這些結(jié)構(gòu)能包括工業(yè)標(biāo)準(zhǔn)結(jié)構(gòu)(ISA)總線、微通道結(jié)構(gòu)(MCA)總線、增強(qiáng)ISA(EISA)總線、視頻電子標(biāo)準(zhǔn)協(xié)議(VESA)局部總線、外圍部件互連(PCI),但也稱為Mezzanine總線、PCI快速總線、通用串行總線(USB)、安全數(shù)字(SD)總線或IEEE1384,即FireWire總線。
計(jì)算機(jī)502可以包括各種計(jì)算機(jī)可讀介質(zhì)。這種介質(zhì)能是能由計(jì)算機(jī)訪問(wèn)的任何可用介質(zhì)以及包括易失和非易失介質(zhì)、可移動(dòng)和不可移動(dòng)介質(zhì)。
系統(tǒng)存儲(chǔ)器506包括以易失存儲(chǔ)器的形式,諸如隨機(jī)存取存儲(chǔ)器(RAM)510,和/或以非易失存儲(chǔ)器的形式,諸如只讀存儲(chǔ)器(ROM)512或閃速RAM的計(jì)算機(jī)可讀介質(zhì)?;据斎?輸出系統(tǒng)(BISO)514,包含有助于在計(jì)算機(jī)502內(nèi)的元件間傳送信息的基本例程,諸如在啟動(dòng)期間存儲(chǔ)在ROM512或閃速RAM中。RAM510通常包含能由處理單元504立即訪問(wèn)和/或當(dāng)前在處理單元504上操作的數(shù)據(jù)和/或程序模塊。
計(jì)算機(jī)502還可以包括其他可移動(dòng)/不可移動(dòng)、易失性/非易失性計(jì)算機(jī)存儲(chǔ)介質(zhì)。通過(guò)舉例,圖5示例說(shuō)明硬盤(pán)驅(qū)動(dòng)器516,用于從不可移動(dòng)、非易失性磁介質(zhì)(未示出)讀取以及寫(xiě)入、磁盤(pán)驅(qū)動(dòng)器518,用于從可移動(dòng)、非易失性磁盤(pán)520(例如“軟盤(pán)”)讀取和寫(xiě)入,以及光盤(pán)驅(qū)動(dòng)器522,用于從可移動(dòng)、非易失性光盤(pán)524,諸如CD-ROM、DVD-ROM,或其他光學(xué)介質(zhì)讀取和/或?qū)懭?。硬盤(pán)驅(qū)動(dòng)器516、磁盤(pán)驅(qū)動(dòng)器518和光盤(pán)驅(qū)動(dòng)器522通過(guò)一個(gè)或多個(gè)數(shù)據(jù)介質(zhì)接口525分別連接到系統(tǒng)總線508。另外,硬盤(pán)驅(qū)動(dòng)器516、磁盤(pán)驅(qū)動(dòng)器518和光盤(pán)驅(qū)動(dòng)器522通過(guò)一個(gè)或多個(gè)接口(未示出)連接到系統(tǒng)總線508。
盤(pán)驅(qū)動(dòng)器和它們相關(guān)的計(jì)算機(jī)可讀介質(zhì)提供用于計(jì)算機(jī)502的計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其他數(shù)據(jù)的非易失性存儲(chǔ)。盡管該例子示例說(shuō)明硬盤(pán)516、可移動(dòng)磁盤(pán)520和可移動(dòng)光盤(pán)524,將意識(shí)到能存儲(chǔ)可由計(jì)算機(jī)訪問(wèn)的數(shù)據(jù)的其他類型的計(jì)算機(jī)可讀介質(zhì),諸如磁帶盒或其他磁存儲(chǔ)設(shè)備、閃存卡、CD-ROM、數(shù)字通用盤(pán)(DVD)或其他光學(xué)存儲(chǔ)、隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、電可擦可編程只讀存儲(chǔ)器(EEPROM)等等能用來(lái)實(shí)現(xiàn)示例性計(jì)算系統(tǒng)和環(huán)境。
許多程序模塊能存儲(chǔ)硬盤(pán)516、磁盤(pán)520、光盤(pán)524、ROM512和/或RAM510,舉例包括操作系統(tǒng)526、一個(gè)或多個(gè)應(yīng)用程序528、其他程序模塊530和程序數(shù)據(jù)532。這些操作系統(tǒng)526、一個(gè)或多個(gè)應(yīng)用程序528、其他程序模塊530和程序數(shù)據(jù)532(或它們的一些組合)的每一個(gè)可以實(shí)現(xiàn)支持分布式文件系統(tǒng)的全部或部分常駐部件。
用戶能經(jīng)輸入設(shè)備,諸如鍵盤(pán)534和指點(diǎn)設(shè)備536(例如“鼠標(biāo)”),將命令和信息輸入計(jì)算機(jī)502。其他輸入設(shè)備538(未具體示出)可以包括麥克風(fēng)、操作桿、游戲墊、圓盤(pán)式衛(wèi)星電視天線、串行端口、掃描儀等等。這些和其他輸入設(shè)備經(jīng)耦合到系統(tǒng)總線508的輸入/輸出接口540連接到處理單元504,但也可以通過(guò)其他接口和總線結(jié)構(gòu)連接,諸如并行端口、游戲端口或通用串行總線(USB)。
監(jiān)視器542或其他類型的顯示設(shè)備也可以經(jīng)接口,諸如視頻適配器544連接到系統(tǒng)總線508。除監(jiān)視器542外,其他輸出外設(shè)能包括能經(jīng)I/O接口540,連接到計(jì)算機(jī)502的諸如揚(yáng)聲器(未示出)和打印機(jī)546的部件。
計(jì)算機(jī)502使用到一個(gè)或多個(gè)遠(yuǎn)程計(jì)算機(jī),諸如遠(yuǎn)程計(jì)算設(shè)備548的邏輯連接,能在網(wǎng)絡(luò)化環(huán)境中操作。舉例來(lái)說(shuō),遠(yuǎn)程計(jì)算設(shè)備548能是PC、便攜式計(jì)算機(jī)、服務(wù)器、路由器、網(wǎng)絡(luò)計(jì)算機(jī)、對(duì)等設(shè)備或其他公用網(wǎng)絡(luò)節(jié)點(diǎn)等等。遠(yuǎn)程計(jì)算設(shè)備548示例為便攜式計(jì)算機(jī),能包括在此相對(duì)于計(jì)算機(jī)502所述的許多或全部元件和特征。另外,計(jì)算機(jī)502也能在非網(wǎng)絡(luò)化環(huán)境中操作。
計(jì)算機(jī)502和遠(yuǎn)程計(jì)算機(jī)548間的邏輯網(wǎng)絡(luò)描述為局域網(wǎng)(LAN)550和一般廣域網(wǎng)(WAN)552。這些網(wǎng)絡(luò)環(huán)境在辦公室、企業(yè)范圍的計(jì)算機(jī)網(wǎng)絡(luò)、內(nèi)聯(lián)網(wǎng)和互聯(lián)網(wǎng)是常見(jiàn)的。
當(dāng)在LAN聯(lián)網(wǎng)環(huán)境中實(shí)現(xiàn)時(shí),計(jì)算機(jī)502經(jīng)網(wǎng)絡(luò)接口或適配器554連接到局部網(wǎng)絡(luò)550。當(dāng)在WAN聯(lián)網(wǎng)環(huán)境中實(shí)現(xiàn)時(shí),計(jì)算機(jī)502通常包括調(diào)制解調(diào)器556或用于在廣域網(wǎng)552上建立通信的其他裝置。能在計(jì)算機(jī)502內(nèi)部或外部的調(diào)制解調(diào)器556能經(jīng)I/O接口540或其他適當(dāng)?shù)臋C(jī)制連接到系統(tǒng)總線508。將意識(shí)到所示的網(wǎng)絡(luò)連接是示例性的以及能采用在計(jì)算機(jī)502和548間建立至少一個(gè)通信鏈路的其他裝置。
在網(wǎng)絡(luò)化環(huán)境中,諸如通過(guò)計(jì)算環(huán)境500所示,關(guān)于計(jì)算機(jī)502所述的程序模塊,或其一部分可以存儲(chǔ)在遠(yuǎn)程存儲(chǔ)器存儲(chǔ)設(shè)備中。舉例來(lái)說(shuō),遠(yuǎn)程應(yīng)用程序558駐留在遠(yuǎn)程計(jì)算機(jī)548的存儲(chǔ)設(shè)備上。為示例目的,在此將應(yīng)用或程序和其他可執(zhí)行程序部件,諸如操作系統(tǒng)示例為分立框,盡管應(yīng)意識(shí)到這些程序和部件在不同時(shí)間駐留在計(jì)算設(shè)備502的不同存儲(chǔ)部件中,以及由計(jì)算機(jī)的至少一個(gè)數(shù)據(jù)處理器執(zhí)行。
在由一個(gè)或多個(gè)計(jì)算機(jī)或其他設(shè)備執(zhí)行的計(jì)算機(jī)可執(zhí)行指令,諸如程序模塊的一般上下文中,描述各種模塊和技術(shù)。通常,程序模塊包括例程、程序、對(duì)象、部件、數(shù)據(jù)結(jié)構(gòu)等等,用于執(zhí)行特定的任務(wù)或?qū)崿F(xiàn)各種抽象數(shù)據(jù)類型。通常,在各種環(huán)境中,根據(jù)需要,可以組合或分布程序模塊的功能性。
這些模塊和技術(shù)的實(shí)現(xiàn)可以存儲(chǔ)在一些形式的計(jì)算機(jī)可讀介質(zhì)上或在一些形式的計(jì)算機(jī)可讀介質(zhì)上傳送。計(jì)算機(jī)可讀介質(zhì)能是能由計(jì)算機(jī)訪問(wèn)的任何可獲得介質(zhì)。舉例來(lái)說(shuō),以及不是限制,計(jì)算機(jī)可讀介質(zhì)可以包括“計(jì)算機(jī)存儲(chǔ)介質(zhì)”和“通信介質(zhì)”。
“計(jì)算機(jī)存儲(chǔ)介質(zhì)”包括以任何方法或技術(shù)實(shí)現(xiàn)的易失性和非易失性、可移動(dòng)和不可移動(dòng)介質(zhì),用于存儲(chǔ)信息,諸如計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其他數(shù)據(jù)。計(jì)算機(jī)存儲(chǔ)介質(zhì)包括但不限于RAM、ROM、EEPROM、閃存或其他存儲(chǔ)器技術(shù)、CD-ROM、數(shù)字通用盤(pán)(DVD)或其他光學(xué)介質(zhì)、磁帶盒、磁帶、磁盤(pán)存儲(chǔ)或其他磁性存儲(chǔ)設(shè)備,或能用來(lái)存儲(chǔ)所需信息和能由計(jì)算機(jī)訪問(wèn)的任何其他介質(zhì)。
“通信介質(zhì)”通常包含計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或以調(diào)制數(shù)據(jù)信號(hào)的其他數(shù)據(jù),諸如載波或其他傳輸機(jī)制。通信介質(zhì)還包括任何信息遞送介質(zhì)。術(shù)語(yǔ)“調(diào)制數(shù)據(jù)信號(hào)”是指具有以在信號(hào)中編碼信息的方式設(shè)置或改變的一個(gè)或多個(gè)其特性的信號(hào)。如僅作為非限制舉例,通信介質(zhì)包括有線介質(zhì),諸如有線網(wǎng)絡(luò)或直接有線連接,以及無(wú)線介質(zhì),諸如聲波、RF、紅外和其他有線介質(zhì)。上述的任何一個(gè)的組合也包括在計(jì)算機(jī)可讀介質(zhì)的范圍內(nèi)。
整個(gè)說(shuō)明書(shū)引用“一個(gè)實(shí)施例”、“實(shí)施例”或“示例性實(shí)施例11表示特別描述的特征、結(jié)構(gòu)或特性包括在本發(fā)明的至少一個(gè)實(shí)施例中。因此,使用這些短語(yǔ)可以指不至正好一個(gè)實(shí)施例。此外,在一個(gè)或多個(gè)實(shí)施例中,可以以任何適當(dāng)?shù)姆绞浇M合所述的特征、結(jié)構(gòu)或特性。
然而,本領(lǐng)域的技術(shù)人員會(huì)意識(shí)到本發(fā)明可以在沒(méi)有一個(gè)或多個(gè)特定的細(xì)節(jié)的情況下,或通過(guò)其他方式、資源、材料等等實(shí)現(xiàn)。在其他實(shí)例中,不詳細(xì)地示出或描述非常公知的結(jié)構(gòu)、資源或操作以避免混淆本發(fā)明的方面。
盡管示例說(shuō)明和描述本發(fā)明的示例性實(shí)施例和應(yīng)用,將理解到本發(fā)明不限于上述準(zhǔn)確的結(jié)構(gòu)和資源。在在此公開(kāi)的方法和系統(tǒng)的配置、操作和細(xì)節(jié)方面可以做出對(duì)本領(lǐng)域的技術(shù)人員顯而易見(jiàn)的各種改進(jìn)、改變和變化,而不背離所要求的本發(fā)明的范圍。
權(quán)利要求
1.一種用于與遠(yuǎn)程節(jié)點(diǎn)建立信任關(guān)系的方法,其特征在于,包括在至少一個(gè)節(jié)點(diǎn)上生成一本地公共值和一本地私有值;經(jīng)帶外機(jī)制,從另一節(jié)點(diǎn)接收一公共值;以及使用所述本地私有值結(jié)合從所述另一節(jié)點(diǎn)接收的所述公共值,生成一秘密值。
2.如權(quán)利要求1所述的方法,其特征在于,在一對(duì)節(jié)點(diǎn)的兩者上執(zhí)行所述方法,并且其中,在所述兩個(gè)節(jié)點(diǎn)處生成的秘密值是對(duì)稱的。
3.如權(quán)利要求2所述的方法,其特征在于,生成秘密值包括執(zhí)行Diffie-Hellman計(jì)算。
4.如權(quán)利要求1所述的方法,其特征在于,還包括本地保留所述秘密值;使用從所述另一節(jié)點(diǎn)接收的所述公共值,保護(hù)所述秘密值;以及經(jīng)所述帶外機(jī)制,將受保護(hù)的秘密值傳送到所述另一節(jié)點(diǎn)。
5.如權(quán)利要求4所述的方法,其特征在于,生成秘密值包括執(zhí)行Rivest-Shamir-Adleman(RSA)計(jì)算。
6.如權(quán)利要求1所述的方法,其特征在于,經(jīng)帶外機(jī)制,從所述另一節(jié)點(diǎn)接收所述公共值包括通過(guò)異步連接接收所述公共值。
7.如權(quán)利要求1所述的方法,其特征在于,經(jīng)帶外機(jī)制,從所述另一節(jié)點(diǎn)接收所述公共值包括從外部設(shè)備下載所述公共值。
8.如權(quán)利要求1所述的方法,其特征在于,所述外部設(shè)備是個(gè)人數(shù)字助理(PDA)、閃存、存儲(chǔ)條、條形碼、智能卡、USB兼容設(shè)備、藍(lán)牙兼容設(shè)備和紅外兼容設(shè)備中的任何一個(gè)。
9.一種具有一個(gè)或多個(gè)指令的計(jì)算機(jī)可讀介質(zhì),所述一個(gè)或多個(gè)指令使一個(gè)或多個(gè)處理器生成一具有公共碼部分和私有碼部分的本地兩部分碼;經(jīng)外圍設(shè)備,從另一處理器接收公共碼部分;以及使用所述本地私有碼部分和從所述另一處理器接收的所述公共碼部分,生成一秘密值。
10.如權(quán)利要求9所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,在所述另一處理器上執(zhí)行所述一個(gè)或多個(gè)指令,并且其中,所述秘密值與在所述另一處理器上生成的秘密值對(duì)稱。
11.如權(quán)利要求9所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,生成秘密值的所述一個(gè)或多個(gè)指令包括執(zhí)行Diffie-Hellman計(jì)算的一個(gè)或多個(gè)指令。
12.如權(quán)利要求9所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,還包括一個(gè)或多個(gè)指令,使一個(gè)或多個(gè)處理器使用從所述另一處理器接收的所述公共碼部分,編碼所述秘密值;以及經(jīng)所述外圍設(shè)備,將所編碼的秘密值傳送到所述另一處理器。
13.如權(quán)利要求12所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,生成秘密值的所述一個(gè)或多個(gè)指令包括執(zhí)行RSA計(jì)算的一個(gè)或多個(gè)指令。
14.如權(quán)利要求9所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,所述外圍設(shè)備異步地連接到所述一個(gè)或多個(gè)處理器。
15.如權(quán)利要求9所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,經(jīng)所述外圍設(shè)備,從所述另一處理器接收所述公共碼部分的所述一個(gè)或多個(gè)指令包括從個(gè)人數(shù)字助理(PDA)、閃存、存儲(chǔ)條、條形碼、智能卡、USB兼容設(shè)備、藍(lán)牙兼容設(shè)備和紅外兼容設(shè)備中的任何一個(gè)下載所述公共碼部分。
16.一種裝置,其特征在于,包括一密鑰發(fā)生器,它生成一本地公鑰/私鑰對(duì);以及一共享秘密發(fā)生器,它經(jīng)帶外連接,從另一節(jié)點(diǎn)接收公鑰,并使用所述本地私鑰和從所述另一節(jié)點(diǎn)接收的所述公鑰,生成一共享秘密。
17.如權(quán)利要求16所述的裝置,其特征在于,所述共享秘密與使用所述本地公鑰和對(duì)應(yīng)于所述另一節(jié)點(diǎn)的私鑰,在所述另一節(jié)點(diǎn)上生成的共享秘密對(duì)稱。
18.如權(quán)利要求16所述的裝置,其特征在于,所述另一節(jié)點(diǎn)是服務(wù)器。
19.如權(quán)利要求16所述的裝置,其特征在于,所述共享秘密發(fā)生器用來(lái)通過(guò)執(zhí)行Diffie-Hellman計(jì)算,生成共享秘密。
20.如權(quán)利要求16所述的裝置,其特征在于,還包括一編碼器,它使用從所述另一節(jié)點(diǎn)接收的所述公鑰,編碼所述秘密值,并經(jīng)所述帶外連接,將所編碼的秘密值傳送到所述另一節(jié)點(diǎn)。
21.如權(quán)利要求20所述的裝置,其特征在于,所述共享秘密發(fā)生器用來(lái)通過(guò)執(zhí)行RSA計(jì)算,生成共享秘密。
22.如權(quán)利要求16所述的裝置,其特征在于,所述帶外連接包括個(gè)人數(shù)字助理(PDA)、閃存、存儲(chǔ)條、條形碼、智能卡、USB兼容設(shè)備、藍(lán)牙兼容設(shè)備和紅外兼容設(shè)備中的任何一個(gè)。
23.一種用于在兩個(gè)或多個(gè)處理節(jié)點(diǎn)間建立信任的協(xié)議,其特征在于,包括在至少兩個(gè)節(jié)點(diǎn)的每一個(gè)上生成一公鑰和一私鑰;使用異步機(jī)制,在所述至少兩個(gè)節(jié)點(diǎn)間交換所述公鑰;以及計(jì)算一將在所述兩個(gè)節(jié)點(diǎn)的至少一個(gè)上共享的秘密。
24.如權(quán)利要求23所述的協(xié)議,其特征在于,計(jì)算將共享的秘密包括使用來(lái)自所述兩個(gè)節(jié)點(diǎn)的另一個(gè)的所述公鑰和所述私鑰,執(zhí)行功能。
25.如權(quán)利要求24所述的協(xié)議,其特征在于,計(jì)算將共享的秘密包括執(zhí)行Diffie-Hellman計(jì)算。
26.如權(quán)利要求24所述的協(xié)議,其特征在于,所述將共享的秘密在所述至少兩個(gè)節(jié)點(diǎn)上是對(duì)稱的。
27.如權(quán)利要求23所述的協(xié)議,其特征在于,還包括使用來(lái)自所述兩個(gè)節(jié)點(diǎn)的另一個(gè)的所述公鑰,編碼所述將共享的秘密;以及經(jīng)所述異步機(jī)制,將所編碼的要共享的秘密傳送到所述兩個(gè)節(jié)點(diǎn)的另一個(gè)。
28.如權(quán)利要求27所述的協(xié)議,其特征在于,計(jì)算將共享的秘密包括執(zhí)行RSA計(jì)算。
29.如權(quán)利要求23所述的協(xié)議,其特征在于,所述帶外機(jī)制包括個(gè)人數(shù)字助理(PDA)、閃存、存儲(chǔ)條、條形碼、智能卡、USB兼容設(shè)備、藍(lán)牙兼容設(shè)備和紅外兼容設(shè)備中的任何一個(gè)。
30.一種裝置,其特征在于,包括用于生成一本地公鑰/私鑰對(duì)的裝置;用于經(jīng)帶外機(jī)制,從另一節(jié)點(diǎn)接收公鑰的裝置;以及用于使用所述本地私鑰和從所述另一節(jié)點(diǎn)接收的所述公鑰,生成一共享秘密的裝置。
31.如權(quán)利要求30所述的裝置,其特征在于,用于生成共享秘密的所述裝置執(zhí)行Diffie-Hellman計(jì)算。
32.如權(quán)利要求30所述的裝置,其特征在于,還包括用于使用從所述另一節(jié)點(diǎn)接收的所述公鑰,編碼所述共享秘密的裝置。
33.如權(quán)利要求32所述的裝置,其特征在于,用于生成共享秘密的所述裝置執(zhí)行RSA計(jì)算。
34.如權(quán)利要求30所述的裝置,其特征在于,所述帶外連接包括個(gè)人數(shù)字助理(PDA)、閃存、存儲(chǔ)條、條形碼、智能卡、USB兼容設(shè)備、藍(lán)牙兼容設(shè)備和紅外兼容設(shè)備中的任何一個(gè)。
全文摘要
在分布式設(shè)備中生成對(duì)稱密鑰包括至少一個(gè)設(shè)備生成一個(gè)公共和私有值,經(jīng)帶外實(shí)體,從另一設(shè)備輸入公共值,以及根據(jù)對(duì)應(yīng)于本地設(shè)備的私有值和從另一設(shè)備接收的公共值生成秘密值。
文檔編號(hào)H04L9/08GK1661959SQ200510052850
公開(kāi)日2005年8月31日 申請(qǐng)日期2005年2月25日 優(yōu)先權(quán)日2004年2月27日
發(fā)明者B·D·阿博巴, T·M·穆?tīng)? T·W·弗里曼 申請(qǐng)人:微軟公司