亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

利用在線服務(wù)向裝置傳遞直接證明私有密鑰的方法

文檔序號:7948726閱讀:261來源:國知局
專利名稱:利用在線服務(wù)向裝置傳遞直接證明私有密鑰的方法
背景1.領(lǐng)域本發(fā)明一般而言涉及計算機安全,更具體而言,涉及向處理系統(tǒng)中的裝置安全地分發(fā)密鑰。
2.描述一些支持內(nèi)容保護和/或計算機安全特性的處理系統(tǒng)架構(gòu)要求,專門保護的或“可信的”軟件模塊能夠創(chuàng)建與處理系統(tǒng)中特定的受保護或“可信的”硬件裝置(舉例來說,例如圖形控制器卡)經(jīng)過驗證的加密的通信會話。一種通常用來標識該裝置并同時建立該加密的通信會話的方法是使用單側(cè)驗證的Diffie-Helman(DH)密鑰交換過程。在該過程中,向該裝置分配唯一的公共/私有Rivest、Shamir和Adelman(RSA)算法密鑰對或唯一的橢圓曲線密碼術(shù)(ECC)密鑰對。然而,由于該驗證過程使用RSA或ECC密鑰,所以該裝置于是具有一個唯一且可證明的身份(identity),這會引起對保密的擔心。在最壞的情況下,這些擔心會導致缺乏來自用于建立提供這類安全性的可信裝置的原始設(shè)備制造商(OEM)的支持。
附圖簡述根據(jù)本發(fā)明的以下詳細說明,本發(fā)明的特征和優(yōu)點將變得顯而易見,其中

圖1說明一種系統(tǒng),該系統(tǒng)的特征在于利用根據(jù)本發(fā)明一個實施例進行操作的可信平臺模塊(TPM)來實施的平臺;圖2說明包括圖1的TPM的平臺的第一實施例;圖3說明包括圖1的TPM的平臺的第二實施例;圖4說明利用圖2的TPM來實施的計算機系統(tǒng)的示例性實施例;圖5是根據(jù)本發(fā)明實施例用于利用在線服務(wù)向裝置分發(fā)直接證明(Direct Proof)密鑰的系統(tǒng)的圖;圖6是說明根據(jù)本發(fā)明實施例利用在線服務(wù)分發(fā)直接證明密鑰的方法的階段的流程圖7是說明根據(jù)本發(fā)明實施例的受保護服務(wù)器建立處理的流程圖;圖8是說明根據(jù)本發(fā)明實施例的裝置制造商建立處理的流程圖;圖9是說明根據(jù)本發(fā)明實施例的裝置制造商生產(chǎn)處理的流程圖;圖10-12是根據(jù)本發(fā)明實施例的客戶端計算機系統(tǒng)建立處理的流程圖;以及圖13是根據(jù)本發(fā)明實施例的客戶端計算機系統(tǒng)處理的流程圖。
詳細描述利用基于直接證明的Diffie-Helman密鑰交換協(xié)議來允許受保護/可信裝置驗證自己并建立與可信軟件模塊的加密的通信會話,避免了在處理系統(tǒng)中創(chuàng)建任何唯一的身份信息,從而避免帶來對保密的擔心。然而,在生產(chǎn)線上的裝置中直接嵌入直接證明私有密鑰對于該裝置比其他方法要求更多的受保護非易失性存儲,從而增加了裝置成本。本發(fā)明的一個實施例是一種利用在線服務(wù)以安全的方式允許直接證明(DP)私有密鑰(例如用于簽名)被傳遞給裝置并隨后由裝置本身安裝在裝置中的方法。在本發(fā)明中所給出的該方法被設(shè)計成使得該裝置無需泄露用于安裝過程的身份信息。在一個實施例中,支持該能力所需的裝置存儲的減少可以從大約300至700個字節(jié)下降到大約40個字節(jié)。實施用于裝置的基于直接證明的Diffie-Helman密鑰交換所需的非易失性存儲量的該減少會導致更廣泛地采用該技術(shù)。
在本發(fā)明的實施例中,不在裝置中或利用裝置來分發(fā)DP私有簽名密鑰。代之以,該裝置支持這樣一種協(xié)議,通過該協(xié)議,現(xiàn)場的裝置可以安全地從由制造商或供應(yīng)商或代表所提供的在線受保護服務(wù)器中檢索它的私有密鑰。該協(xié)議在裝置與服務(wù)器之間創(chuàng)建可信通道,并且不需要信任任何介入(intervening)軟件,包括在本地處理系統(tǒng)上的軟件。
在說明書中對本發(fā)明的“一個實施例”或“實施例”的引用意味著,在本發(fā)明的至少一個實施例中包含結(jié)合該實施例所描述的特定特性、結(jié)構(gòu)或特征。因此,在整個說明書的各種位置出現(xiàn)的短語“在一個實施例中”未必都指相同的實施例。
在以下的描述中,利用某個術(shù)語來描述本發(fā)明一個或多個實施例的某些特征。例如,“平臺”被定義為適于發(fā)送和接收信息的任何類型的通信裝置。各種平臺的實例包括但不限制或局限于計算機系統(tǒng)、個人數(shù)字助理、蜂窩電話、機頂盒、傳真機、打印機、調(diào)制解調(diào)器、路由器等等?!巴ㄐ沛溌贰北粡V泛地定義為適于平臺的一個或多個信息承載介質(zhì)。各種類型的通信鏈路的實例包括但不限制或局限于電線、光纖、電纜、總線軌跡(trace)、或無線信令技術(shù)。
“詢問器”是指向另一實體請求對真實性或權(quán)限進行某種檢驗的任何實體(例如人、平臺、系統(tǒng)、軟件和/或裝置)。通常,這在公開或提供所請求的信息之前執(zhí)行?!皯?yīng)答器”是指已被請求提供對其權(quán)限、有效性和/或身份進行某種證明的任何實體。可與“認證制造商”互換使用的“裝置制造商”是指制造或配置平臺或裝置的任何實體。
如在此所使用,向詢問器“證明”或“確信”應(yīng)答器已經(jīng)擁有或知道某種密碼信息(例如數(shù)字簽名、諸如密鑰之類的秘密等)意味著,基于向詢問器所公開的該信息與證明,該應(yīng)答器非常可能具有該密碼信息。向詢問器證明這一點而不用向該詢問器“泄露”或“公開”該密碼信息意味著,基于向詢問器公開的該信息,對于詢問器而言確定該密碼信息在計算上將是不可行的。
在下文中將這種證明稱為直接證明。術(shù)語“直接證明”是指零知識證明,因為這些類型的證明在本領(lǐng)域中通常是已知的。特別地,在此所引用的特定直接證明協(xié)議是2002年11月27日提交的、轉(zhuǎn)讓給本申請的所有者的、順序號為10/306,336、標題為“System and Method forEstablishing Trust Without Revealing Identity”的同時待審的專利申請的主題。直接證明定義了一種協(xié)議,在該協(xié)議中發(fā)行者定義一個許多成員的族(family),這些成員共享如由該發(fā)行者所定義的公共特征。該發(fā)行者生成一個族公共和私有密鑰對(Fpub和Fpri),其總體上表示該族。利用Fpri,發(fā)行者還可以為該族中的每個單獨成員生成一個唯一的直接證明私有簽名密鑰(DPpri)。可以利用該族公共密鑰Fpub來檢驗由單獨的DPpri所簽名的任何消息。然而,這樣的檢驗只是識別該簽名者是該族的一個成員;沒有揭露關(guān)于單獨的成員的唯一的識別信息。在一個實施例中,發(fā)行者可以是裝置制造商或代表。也就是,發(fā)行者可以是具有下述能力的實體基于共享的特征來定義裝置族,產(chǎn)生族公共/私有密鑰對,以及創(chuàng)建DP私有密鑰并將其注入到裝置中。發(fā)行者還可以生成用于該族公共密鑰的證書,其識別該密鑰的來源和該裝置族的特征。
現(xiàn)在參考圖1,示出了一個系統(tǒng)的實施例,其特征在于利用根據(jù)本發(fā)明的一個實施例進行操作的可信硬件裝置(稱為“可信平臺模塊”或“TPM”)來實施的平臺。第一平臺102(詢問器)發(fā)送請求106,即請求第二平臺104(應(yīng)答器)提供關(guān)于它自己的信息。響應(yīng)于請求106,第二平臺104提供所請求的信息108。
另外,為了提高安全性,第一平臺102可能需要檢驗來自由一個選定的裝置制造商或一組選定的制造商(在下文中稱為“裝置制造商110”)制造的裝置所請求的信息108。例如,對于本發(fā)明的一個實施例,第一平臺102詢問第二平臺104以顯示它具有由裝置制造商110所產(chǎn)生的密碼信息(例如簽名)??梢詫⒃撛儐柦Y(jié)合到請求106(如所示)中或分開發(fā)送。第二平臺104通過以應(yīng)答的形式提供信息來應(yīng)答該詢問,以使第一平臺102確信第二平臺104具有由裝置制造商110所產(chǎn)生的密碼信息,而不用泄露該密碼信息。該應(yīng)答可以是所請求的信息108(如所示)的一部分或分開發(fā)送。
在本發(fā)明的一個實施例中,第二平臺104包括可信平臺模塊(TPM)115。TPM115是由裝置制造商110所制造的密碼裝置。在本發(fā)明的一個實施例中,TPM115包括具有密封在封裝內(nèi)的少量片上存儲器的處理器。將TPM115配置成向第一平臺102提供信息,該信息將使它能夠確定應(yīng)答是從有效的TPM發(fā)送的。所用的信息是將使得不大可能確定TPM的或第二平臺的身份的內(nèi)容。
圖2說明具有TPM115的第二平臺104的第一實施例。對于本發(fā)明的該實施例,第二平臺104包括耦合到TPM115的處理器202。通常,處理器202是處理信息的裝置。例如,在本發(fā)明的一個實施例中,處理器202可以被實施為微處理器、數(shù)字信號處理器、微控制器或者甚至狀態(tài)機??蛇x擇地,在本發(fā)明的另一個實施例中,處理器202可以被實施為可編程或硬編碼邏輯,例如現(xiàn)場可編程門陣列(FPGA)、晶體管-晶體管邏輯(TTL)邏輯、或者甚至是專用集成電路(ASIC)。
在此,第二平臺104還包括存儲單元206以允許存儲密碼信息,例如以下的一種或多種密鑰、散列值、簽名、證書等等。可以將散列值“X”表示為“Hash(X)”。預期這樣的信息可以被存儲在TPM115的內(nèi)部存儲器220內(nèi)以代替如圖3所示的存儲單元206。可以對密碼信息進行加密,尤其是在TPM115外部存儲該信息的時候。
圖4說明了包括利用圖2的TPM115所實施的計算機系統(tǒng)300的平臺的實施例。計算機系統(tǒng)300包括總線302和耦合到總線302的處理器310。計算機系統(tǒng)300還包括主存儲單元304和靜態(tài)存儲單元306。
在此,主存儲單元304是用于存儲由處理器310執(zhí)行的信息和指令的易失性半導體存儲器。主存儲器304還可用于存儲在處理器310執(zhí)行指令期間的臨時變量或其它中間信息。靜態(tài)存儲單元306是用于以更永久的特性存儲處理器310的信息和指令的非易失性半導體存儲器。靜態(tài)存儲器306的實例包括但不限制或局限于只讀存儲器(ROM)。主存儲單元304和靜態(tài)存儲單元306都被耦合到總線302。
在本發(fā)明的一個實施例中,計算機系統(tǒng)300還包括數(shù)據(jù)存儲裝置308,例如磁盤或光盤,并且它對應(yīng)的驅(qū)動器還可以被耦合到計算機系統(tǒng)300以用于存儲信息和指令。
計算機系統(tǒng)300還可以通過總線302被耦合到圖形控制器裝置314,該圖形控制器裝置314控制用于向終端用戶顯示信息的顯示器(未示出),該顯示器例如是陰極射線管(CRT)、液晶顯示器(LCD)或任何平板顯示器。在一個實施例中,可能期望該圖形控制器能夠建立與由處理器所執(zhí)行的軟件模塊的經(jīng)過驗證的加密通信會話。
典型地,字母數(shù)字輸入裝置316(例如鍵盤、小鍵盤等)可以被耦合到總線302以用于將信息和/或命令選擇傳送給處理器310。另一種類型的用戶輸入裝置是光標控制單元318,例如鼠標、軌跡球、觸摸板、觸筆或光標方向鍵,用于將方向信息和命令選擇傳送給處理器310以及用于控制顯示器314上的光標移動。
通信接口單元320還被耦合到總線302。接口單元320的實例包括調(diào)制解調(diào)器、網(wǎng)絡(luò)接口卡、或者其它眾所周知的用于耦合到形成局域網(wǎng)或廣域網(wǎng)的一部分的通信鏈路的接口。以這種方式,計算機系統(tǒng)300可以通過常規(guī)網(wǎng)絡(luò)基礎(chǔ)設(shè)施被耦合到多個客戶端和/或服務(wù)器,該網(wǎng)絡(luò)基礎(chǔ)設(shè)施例如是公司的內(nèi)部網(wǎng)和/或因特網(wǎng)。在一個實施例中,計算機系統(tǒng)可以通過網(wǎng)絡(luò)被在線耦合到受保護的服務(wù)器。
認識到的是,對于某些實施而言,可能期望比上述更少或更多的配備的計算機系統(tǒng)。因此,計算機系統(tǒng)300的配置將根據(jù)實施情況而發(fā)生變化,這取決于多個因素,例如價格約束、性能要求、技術(shù)改進、和/或其它情況。
在至少一個實施例中,計算機系統(tǒng)300可以支持專門保護的“可信”軟件模塊(例如抗篡改軟件、或具有運行受保護程序的能力的系統(tǒng))的使用,該“可信”軟件模塊被存儲在主存儲器304和/或大容量存儲裝置308中,并由處理器310執(zhí)行以進行特定活動,即使在該系統(tǒng)中存在其它惡意軟件。這些可信軟件模塊中的一些同樣要求不僅僅對其它平臺進行“可信的”受保護訪問,還對相同平臺內(nèi)一個或多個外圍裝置進行該訪問,例如圖形控制器314。通常,這些訪問要求該可信軟件模塊能夠識別該裝置的能力和/或特定身份,然后建立與該裝置的加密的會話以允許數(shù)據(jù)的交換,該系統(tǒng)中的其它軟件無法窺探或欺騙該數(shù)據(jù)交換。
現(xiàn)有技術(shù)中一種識別該裝置并同時建立加密的會話的方法是使用單側(cè)驗證的Diffie-Hellman(DH)密鑰交換過程。在該過程中,向該裝置分配唯一的公共/私有RSA或ECC密鑰對。該裝置擁有和保護該私有密鑰,同時可以向軟件模塊發(fā)布公共密鑰以及驗證證書。在DH密鑰交換過程期間,該裝置利用它的私有密鑰簽名一個消息,該軟件模塊可以利用對應(yīng)的公共密鑰來檢驗該消息。這允許軟件模塊驗證該消息實際上的確來自感興趣的裝置。
然而,由于該驗證過程使用了RSA或ECC密鑰,所以該裝置具有一個唯一且可證明的身份。可以使該裝置利用它的私有密鑰來簽名一個消息的任何軟件模塊都可以證明在計算機系統(tǒng)中存在該特定的唯一裝置。假定裝置很少在處理系統(tǒng)之間移動,那么這還表示一個可證明的唯一計算機系統(tǒng)身份。此外,該裝置的公共密鑰本身表示恒定的唯一值;實際上是永久的“cookie”。有時,可以把這些特征解釋為一個顯著的保密問題。
在2004年提交的、轉(zhuǎn)讓給本申請的所有者的、標題為“AnApparatus and Method for Establishing an Authenticated EncryptedSession with a Device Without Exposing Privacy-Sensitiveinformation”、順序號為10/???,???的同時待審的專利申請中描述了一種可選方法。在該方法中,用直接證明密鑰來代替在單端驗證的Diffie-Helman過程中使用的RSA或ECC密鑰??梢詫⑹褂迷摲椒ǖ难b置驗證為屬于特定裝置族,這可以包括保證關(guān)于該裝置的特性或可信賴度。該方法并未揭露任何可以用來建立一個表示該處理系統(tǒng)的唯一身份的唯一識別信息。
盡管該方法工作良好,但是它要求在該裝置中的附加存儲來保存直接證明私有密鑰,該密鑰可以大于RSA或ECC密鑰。為了減輕該附加存儲要求的負擔,本發(fā)明的實施例限定了一種用于確保該裝置在它需要直接證明私有密鑰時具有該密鑰而不用要求該裝置中相當大的附加存儲的系統(tǒng)和過程。
在本發(fā)明的至少一個實施例中,裝置制造商向生產(chǎn)線的裝置中存儲一個128位的偽隨機數(shù),并且可以對一個大得多的直接證明私有密鑰(DPpri)進行加密,以及利用由受保護服務(wù)器所操作的在線服務(wù)將其傳遞給現(xiàn)場的裝置。其它實施例可以向該裝置中存儲一個比128位更長或更短的數(shù)字。該過程確保只有一個指定的裝置可以解密和使用它的分配的DPpri密鑰。圖5是根據(jù)本發(fā)明實施例用于分發(fā)直接證明密鑰的系統(tǒng)500的圖。在該系統(tǒng)中有四個實體裝置制造受保護系統(tǒng)502、裝置制造生產(chǎn)系統(tǒng)503、客戶端計算機系統(tǒng)504和受保護服務(wù)器522。裝置制造受保護系統(tǒng)包括用在裝置506的制造之前的建立過程中的處理系統(tǒng)。該制造受保護系統(tǒng)502可由裝置制造商操作,使得保護受保護系統(tǒng)免遭來自裝置制造地點(例如它是封閉系統(tǒng))外部的黑客的攻擊。制造生產(chǎn)系統(tǒng)503可以用在裝置的制造過程中。在一個實施例中,該受保護系統(tǒng)和生產(chǎn)系統(tǒng)可以是相同的系統(tǒng)。裝置506包括任何包含在客戶端計算機系統(tǒng)中的硬件裝置(例如存儲器控制器、外圍裝置比如圖形控制器、I/O裝置等等)。在本發(fā)明的實施例中,該裝置包括存儲在該裝置的非易失性存儲器中的偽隨機值RAND508和密鑰服務(wù)公共密鑰散列值509。
該制造受保護系統(tǒng)包括受保護數(shù)據(jù)庫510和生成函數(shù)512。該受保護數(shù)據(jù)庫包括用于存儲由生成函數(shù)512以如下所述的方式產(chǎn)生的多個偽隨機值(至少與將制造的每個裝置的一樣多)的數(shù)據(jù)結(jié)構(gòu)。該生成函數(shù)包括產(chǎn)生在此被稱為密鑰塊(keyblob)514的數(shù)據(jù)結(jié)構(gòu)的邏輯(以軟件或硬件來實施)。密鑰塊514包括至少三個數(shù)據(jù)項。唯一直接證明私有密鑰(DPpri)包括可由裝置用于進行簽名的密鑰。DP私有摘要516(DPpri摘要)包括根據(jù)產(chǎn)生保密消息摘要的任何公知方法例如SHA-1的DPpri的消息摘要。一些實施例可以包括偽隨機初始化向量(IV)518,該向量包括作為密鑰塊的一部分的比特流以用于兼容性目的。如果流密碼被用于加密,則以使用流密碼中的IV的公知方法來使用IV。如果將塊密碼用于加密,則IV將被用作待加密的消息的一部分,因此使該加密的每個實例都不相同。該制造受保護系統(tǒng)還包括用于在線協(xié)議的密鑰服務(wù)公共密鑰507,正如以下進一步詳細描述的。
在本發(fā)明的實施例中,該制造受保護系統(tǒng)產(chǎn)生一個或多個密鑰塊(如以下詳細描述的),并在受保護服務(wù)器522上的密鑰塊數(shù)據(jù)庫520中存儲該密鑰塊。在一個實施例中,在密鑰塊數(shù)據(jù)庫中可以有許多密鑰塊。可由裝置制造商、裝置分發(fā)商或其它附屬實體來操作該受保護服務(wù)器。該受保護服務(wù)器可以利用網(wǎng)絡(luò)比如因特網(wǎng)被可通信地耦合到客戶端計算機系統(tǒng)504。該受保護服務(wù)器還包括密鑰服務(wù)私有密鑰511,其用于在受保護服務(wù)器和該裝置之間的在線協(xié)議。
客戶端計算機系統(tǒng)504期望使用直接證明協(xié)議以用于驗證以及與系統(tǒng)504內(nèi)包含的裝置506進行通信會話的密鑰交換,該客戶端計算機系統(tǒng)504可以利用密鑰服務(wù)公共/私有密鑰對和以下進一步描述的在線協(xié)議來從受保護服務(wù)器上的密鑰塊數(shù)據(jù)庫520中讀取一個選定的密鑰塊514??捎稍撗b置使用該密鑰塊數(shù)據(jù)來產(chǎn)生一個本地化密鑰塊524(如下所述),以用于實施直接證明協(xié)議。由客戶端計算機系統(tǒng)來執(zhí)行裝置驅(qū)動器軟件526以初始化并控制裝置506。
在本發(fā)明的實施例中,存在五個不同的操作階段。圖6是說明根據(jù)本發(fā)明實施例的分發(fā)直接證明密鑰的方法的階段的流程圖600。根據(jù)本發(fā)明的實施例,可以在每個階段執(zhí)行某些動作。在裝置制造商的地點,至少存在三個階段受保護服務(wù)器建立階段601、裝置制造商建立階段602和裝置制造商生產(chǎn)階段604。在此參考圖7來描述該受保護服務(wù)器建立階段。在此參考圖8來描述該裝置制造商建立階段。在此參考圖9來描述該裝置制造商生產(chǎn)階段。在具有客戶端計算機系統(tǒng)的消費者地點,至少存在兩個階段客戶端計算機系統(tǒng)建立階段606和客戶端計算機系統(tǒng)使用階段608。在此參考圖10-12來描述該客戶端計算機系統(tǒng)建立階段。在此參考圖13來描述該客戶端計算機系統(tǒng)使用階段。
圖7是說明根據(jù)本發(fā)明實施例的受保護服務(wù)器建立階段處理的流程圖700??梢栽谏a(chǎn)裝置之前由裝置制造商執(zhí)行該處理。在塊702,裝置制造商建立一個受保護服務(wù)器522來支持密鑰檢索請求。在一個實施例中,該受保護服務(wù)器以公知的方式被可通信地耦合到因特網(wǎng)。為了提高安全性,該受保護服務(wù)器不應(yīng)當與在制造受保護系統(tǒng)或制造生產(chǎn)系統(tǒng)中使用的處理系統(tǒng)相同。在塊704,裝置制造商產(chǎn)生一個密鑰服務(wù)公共/私有密鑰對,該密鑰對將用于由受保護服務(wù)器所提供的密鑰檢索服務(wù)。在一個實施例中,可以在受保護服務(wù)器中存儲該密鑰服務(wù)公共/私有密鑰對。對于由該系統(tǒng)執(zhí)行的所有處理可以只產(chǎn)生一次該密鑰對,或者對每類裝置產(chǎn)生一個新的密鑰對。在塊706,該裝置制造商將密鑰服務(wù)公共密鑰507傳遞給制造受保護系統(tǒng)502。
圖8是說明根據(jù)本發(fā)明實施例的裝置制造建立處理的流程圖800。在一個實施例中,裝置制造商可以利用制造受保護系統(tǒng)502來執(zhí)行這些動作。在塊802,裝置制造商為每類將要制造的裝置產(chǎn)生一個直接證明族密鑰對(Fpub和Fpri)。每個唯一的裝置將具有一個DPpri密鑰,以使可由Fpub檢驗利用DPpri產(chǎn)生的簽名。一類裝置可以包括任何裝置集合或子集,例如一個選定的生產(chǎn)線(即裝置的類型)或基于版本號的一個生產(chǎn)線的子集、或裝置的其它特征。該族密鑰對是由產(chǎn)生其的裝置類使用。
對于每個將要制造的裝置,制造受保護系統(tǒng)502的生成函數(shù)512執(zhí)行塊804至820。首先,在塊804,該生成函數(shù)產(chǎn)生一個唯一的偽隨機值(RAND)508。在一個實施例中,RAND的長度是128比特。在其它實施例中,可以使用其它大小的值。在一個實施例中,可以提前產(chǎn)生多個裝置的偽隨機值。在塊806,利用該裝置所支持的單向函數(shù)f,該生成函數(shù)根據(jù)唯一的RAND值(SKEY=f(RAND))產(chǎn)生一個對稱的加密密鑰SKEY。該單向函數(shù)可以是適用于該目的的任何已知算法(例如SHA-1、MGF1、數(shù)據(jù)加密標準(DES)、三重DES、高級加密標準(AES)等)。在塊808,在一個實施例中,該生成函數(shù)產(chǎn)生一個標識符(ID)標簽,它將用來在受保護服務(wù)器522上的密鑰塊數(shù)據(jù)庫520中引用該裝置的密鑰塊514,通過利用SKEY來加密一個“空輸入”(例如少量的零字節(jié))(裝置ID=利用SKEY加密(0...0))。在其它實施例中,可以使用產(chǎn)生該裝置ID的其它方式,或者可以由SKEY對其它值進行加密。
接下來,在塊810,該生成函數(shù)產(chǎn)生與該裝置的族密鑰對(Fpub)相關(guān)的DP私有簽名密鑰DPpri。在塊812,該生成函數(shù)利用已知的方法(例如利用SHA-1或另一散列算法)對DPpri進行散列以產(chǎn)生DPpri摘要。在塊814,該生成函數(shù)為該裝置創(chuàng)建密鑰塊數(shù)據(jù)結(jié)構(gòu)。該密鑰塊包括至少DPpri和DPpri摘要。在一個實施例中,該密鑰塊還包括具有多個偽隨機產(chǎn)生的比特的隨機初始化向量??梢岳肧KEY對這些值進行加密以產(chǎn)生加密的密鑰塊514。在塊816,可以在密鑰塊數(shù)據(jù)庫520的條目(entry)中存儲在塊808產(chǎn)生的裝置ID和在塊814產(chǎn)生的加密密鑰塊514。在一個實施例中,可由裝置ID來表示在密鑰塊數(shù)據(jù)庫中的該條目。在塊818,可以在受保護數(shù)據(jù)庫510中存儲當前RAND值。在塊820,可以刪除SKEY和DPpri,因為它們將由現(xiàn)場的裝置再生。
DPpir摘要的創(chuàng)建和隨后利用SKEY的加密被設(shè)計成使得,任何不擁有SKEY的實體無法確定DPpri的內(nèi)容,以及任何不擁有SKEY的實體不能修改密鑰塊的內(nèi)容,而沒有隨后由的確擁有SKEY的實體進行檢測。在其它實施例中,可以使用用于提供該保密和完整性保護的其它方法。在一些實施例中,可能不要求該完整性保護,并且可以使用僅僅提供保密的方法。在這種情況下,DPpri摘要的值將不是必需的。
在塊820之后的任何時候,在塊822,可以安全地將受保護的RAND值的數(shù)據(jù)庫上載到制造生產(chǎn)系統(tǒng)503,該制造生產(chǎn)系統(tǒng)503將在制造過程期間向該裝置中存儲RAND值。一旦檢驗了該上載,就可以安全地從制造受保護系統(tǒng)502中刪除RAND值。最后,在塊824,可以在受保護服務(wù)器522上存儲具有多個加密密鑰塊的密鑰塊數(shù)據(jù)庫520,其中對于每個裝置將使用一個密鑰塊數(shù)據(jù)庫條目,正如由裝置ID字段所索引的。
圖9是說明根據(jù)本發(fā)明實施例的裝置制造生產(chǎn)處理的流程圖900。當在生產(chǎn)線中制造裝置時,在塊902,該制造生產(chǎn)系統(tǒng)從受保護數(shù)據(jù)庫中選擇一個未使用的RAND值。于是可以向裝置的非易失性存儲器中存儲該選定的RAND值。在一個實施例中,該非易失性存儲器包括TPM。在一個實施例中,可以在大約為16個字節(jié)的非易失性存儲器中存儲該RAND值。在塊904,可以在該裝置的非易失性存儲器中存儲該密鑰服務(wù)公共密鑰507的散列509。可以利用任何已知的散列算法來產(chǎn)生該散列。在一個實施例中,可以在大約為20個字節(jié)的非易失性存儲器中存儲該散列值。在塊906,一旦該RAND值的存儲是成功的,那么該制造生產(chǎn)系統(tǒng)就銷毀在受保護數(shù)據(jù)庫510中該裝置的RAND的任何記錄。在此,在該裝置中存儲該RAND值的唯一副本。
在可選擇的實施例中,可以在制造裝置的過程中創(chuàng)建該RAND值,然后發(fā)送到制造受保護系統(tǒng)以用于密鑰塊的計算。
在另一個實施例中,可以在該裝置上創(chuàng)建該RAND值,以及該裝置和該制造受保護系統(tǒng)可以參加利用不在該裝置的外部泄露DPpri密鑰的方法來產(chǎn)生該DPpri密鑰的協(xié)議。然后該裝置可以創(chuàng)建裝置ID、SKEY和密鑰塊。該裝置將把裝置ID和密鑰塊傳送到制造系統(tǒng)以用于在受保護數(shù)據(jù)庫510中進行存儲。在該方法中,制造系統(tǒng)在受保護數(shù)據(jù)庫中以相同的信息(裝置ID、密鑰塊)來結(jié)束,但是不知道RAND的值或Dppri的值。
圖10-12是根據(jù)本發(fā)明實施例的客戶端計算機系統(tǒng)建立處理的流程圖??蛻舳擞嬎銠C系統(tǒng)可以執(zhí)行作為啟動該系統(tǒng)的一部分的這些動作。從圖10的流程1000開始,在塊1002,可以以正常方式啟動客戶端計算機系統(tǒng),并將該裝置的裝置驅(qū)動器軟件模塊526加載到客戶端計算機系統(tǒng)的主存儲器中。當該裝置驅(qū)動器被初始化并開始執(zhí)行時,在塊1004,該裝置驅(qū)動器確定是否已經(jīng)存在在裝置506的大容量存儲器裝置308中存儲的加密的本地化密鑰塊524。如果存在,就不必執(zhí)行進一步的建立處理,該建立處理在塊1006處結(jié)束。如果不存在,就在塊1008繼續(xù)進行該處理。在塊1008,該裝置驅(qū)動器向裝置506發(fā)出一個獲取密鑰命令來啟動該裝置的DP私有密鑰獲取過程。
在塊1010,該裝置驅(qū)動器向該裝置發(fā)送密鑰服務(wù)公共密鑰507。在塊1014,該裝置提取接收的密鑰服務(wù)公共密鑰,產(chǎn)生該密鑰服務(wù)公共密鑰的散列值,以及比較所接收的密鑰服務(wù)公共密鑰的散列與存儲在該裝置的非易失性存儲器中的密鑰服務(wù)公共密鑰散列509。如果該散列匹配,就知道所接收的密鑰服務(wù)公共密鑰是裝置制造商的密鑰檢索服務(wù)的密鑰服務(wù)公共密鑰,并且繼續(xù)進行客戶端計算機系統(tǒng)建立處理。
在另一個實施例中,該裝置可以接收一個認證的密鑰服務(wù)公共密鑰的證書,可以通過到密鑰服務(wù)公共密鑰的一個證書鏈來檢驗該證書,該密鑰服務(wù)公共密鑰的散列是存儲在該裝置的非易性存儲器中的密鑰服務(wù)公共密鑰散列509。然后在后續(xù)步驟中可以將該認證的密鑰服務(wù)公共密鑰用作密鑰服務(wù)公共密鑰。
在塊1018,該裝置使用它的單向函數(shù)f來從嵌入的RAND值508中再生該對稱密鑰SKEY(SKEY=f(RAND))。然后在塊1020,該裝置通過利用SKEY來加密一個“空輸入”(例如少量的零字節(jié))(裝置ID=利用SKEY來加密(0...0)),從而產(chǎn)生它的唯一的裝置ID標簽。根據(jù)圖11的流程圖1100繼續(xù)進行該處理。
在圖11的塊1102,該裝置產(chǎn)生一個瞬時對稱密鑰Tkey。該密鑰將被發(fā)送到受保護服務(wù)器,該受保護服務(wù)器可以使用該密鑰來加密受保護服務(wù)器返回到該裝置的消息。在塊1104,該裝置建立包含裝置ID和瞬時對稱密鑰Tkey的檢索密鑰請求消息,利用在塊1014從裝置驅(qū)動器接收的密鑰服務(wù)公共密鑰來加密該消息,然后通過裝置驅(qū)動器向受保護服務(wù)器發(fā)送檢索密鑰請求消息。(檢索密鑰請求=利用密鑰服務(wù)公共密鑰來加密(裝置ID,Tkey))。本領(lǐng)域技術(shù)人員將認識到,為了利用公共密鑰來加密消息,通常將為對稱密碼創(chuàng)建會話密鑰(Skey),利用公共密鑰加密該會話密鑰,然后利用該會話密鑰加密該消息。在塊1106,受保護服務(wù)器利用密鑰服務(wù)私有密鑰511來解密所接收的密鑰請求消息,然后提取在此存儲的字段。由于受保護服務(wù)器現(xiàn)在知道該裝置ID(從密鑰請求消息中獲得),所以受保護服務(wù)器在密鑰塊數(shù)據(jù)庫中搜索包含該匹配裝置ID值的記錄,以及從該記錄中提取該裝置的加密的密鑰塊。在塊1110,該受保護服務(wù)器建立一個包含族公共密鑰和加密的密鑰塊的第二響應(yīng)消息,并利用由該裝置所提供的瞬時對稱密鑰Tkey來加密該第二響應(yīng)消息。因此,密鑰響應(yīng)=(族公共密鑰,利用Tkey加密(加密的密鑰塊))。利用Tkey對該加密的密鑰塊進行加密并不是要保護該密鑰塊,因為已經(jīng)利用對稱密鑰SKEY加密了該密鑰塊,只有該裝置可以再生該密鑰塊。更確切地說,以這種方式加密消息確保了返回的密鑰塊在每次執(zhí)行該密鑰獲取過程時都進行改變,因此確保了該密鑰塊本身不能用作“cookie”。可以在塊1112將第二響應(yīng)消息返回到客戶端計算機系統(tǒng)上的裝置驅(qū)動器,該裝置驅(qū)動器向該裝置轉(zhuǎn)發(fā)該消息。
在塊1114,該裝置從第二響應(yīng)消息中提取族公共密鑰,利用瞬時對稱密鑰Tkey對該打包的密鑰塊進行解密,以及在該裝置的易失性存儲器中存儲該加密的密鑰塊。然后以圖12的流程圖1200繼續(xù)進行該處理。
在圖12的塊1216,該裝置利用對稱密鑰SKEY對加密的密鑰塊進行解密以產(chǎn)生DPpri和DPpri摘要,并在其非易失性存儲器中存儲這些值(解密的密鑰塊=利用SKEY解密(IV,DPpri,DPpri摘要))。可以丟棄該初始化向量(IV)。然后在塊1218,該裝置通過使DPpri散列并比較該結(jié)果與DPpri摘要來檢查DPpri的完整性。如果該比較是好的,該裝置就接受DPpri作為它的有效密鑰。該裝置在一個實施例中還可以將密鑰獲取的標志設(shè)置成真來表示已經(jīng)成功地獲取了DP私有密鑰。在塊1220,該裝置選擇一個新的IV,并利用新的IV創(chuàng)建一個新的加密的本地化密鑰塊(本地化密鑰塊=利用SKEY加密(IV2,DPpri,DPpri摘要))。在一個實施例中,可以將該新的加密的本地化密鑰塊返回到客戶端計算機系統(tǒng)上的密鑰檢索實用程序(utility)軟件模塊(未在圖5中示出)。在塊1222,該密鑰檢索實用程序在客戶端計算機系統(tǒng)內(nèi)的存儲器中存儲該加密的本地化密鑰塊(例如大容量存儲裝置308)?,F(xiàn)在在客戶端計算機系統(tǒng)中安全地存儲該裝置的DPpri。
一旦該裝置在建立處理期間獲取了DPpri,該裝置就可以使用DPpri。圖13是根據(jù)本發(fā)明實施例的客戶端計算機系統(tǒng)處理的流程圖1300。該客戶端計算機系統(tǒng)可以在已經(jīng)完成了該建立之后的任何時候執(zhí)行這些動作。在塊1302,可以以正常方式啟動客戶端計算機系統(tǒng),并可以將該裝置的裝置驅(qū)動器526加載到主存儲器中。當該裝置驅(qū)動器被初始化并開始執(zhí)行時,該裝置驅(qū)動器確定是否已經(jīng)存在在該裝置506的大容量存儲器裝置308中存儲的加密的本地化密鑰塊524。如果不存在,則執(zhí)行圖10-12的建立處理。如果對于該裝置存在可用的加密的本地化密鑰塊,則利用塊1306繼續(xù)進行該處理。在塊1306,該裝置驅(qū)動器檢索加密的本地化密鑰塊,并向該裝置傳送該密鑰塊。在一個實施例中,可以通過執(zhí)行一個加載密鑰塊命令來完成該密鑰塊的傳送。
在塊1308,該裝置利用它的單向函數(shù)f來從嵌入的RAND值508(SKEY=f(RAND))中再生該對稱密鑰(現(xiàn)在供解密所用)。在塊1310,該裝置利用對稱密鑰SKEY對加密的本地化密鑰塊進行解密以產(chǎn)生DPpri和DPpri摘要,并在其非易失性存儲器中存儲這些值(解密的密鑰塊=利用SKEY解密(IV2,DPpri,DPpri摘要))。可以丟棄第二初始化向量(IV2)。在塊1312,該裝置通過使DPpri散列并比較該結(jié)果與DPpri摘要來檢查DPpri的完整性。如果該比較是好的(例如摘要匹配),該裝置就接受DPpri作為早先獲取的有效密鑰,并使它能夠使用。該裝置還可以將一個密鑰獲取標志設(shè)置成真來表示已經(jīng)成功地獲取了DP私有密鑰。在塊1314,該裝置也選擇了另一個新的IV,并利用新的IV創(chuàng)建一個新的加密的本地化密鑰塊(本地化密鑰塊=利用SKEY加密(IV3,DPpri,DPpri摘要))??梢詫⒃撔碌募用艿谋镜鼗荑€塊返回到密鑰檢索實用程序。在塊1316,該密鑰檢索實用程序在客戶端計算機系統(tǒng)內(nèi)的存儲器中存儲該加密的本地化密鑰塊(例如大容量存儲器308)。現(xiàn)在在客戶端計算機系統(tǒng)中再次安全地存儲該裝置的DPpri。
在本發(fā)明的一個實施例中,不必同時產(chǎn)生所有的裝置DP私有密鑰。假設(shè)定期更新受保護服務(wù)器上的密鑰塊數(shù)據(jù)庫,就可以在需要時成批地產(chǎn)生該裝置DP私有密鑰。該密鑰塊數(shù)據(jù)庫每次在受保護服務(wù)器上更新時,它都將包含至今產(chǎn)生的密鑰塊數(shù)據(jù)庫,包括那些已經(jīng)產(chǎn)生但是還沒有分配到裝置的裝置密鑰。
在另一個實施例中,有可能延遲該裝置的DPpri密鑰的產(chǎn)生,從而允許只對需要它們的那些裝置產(chǎn)生這些密鑰。一旦接收來自該裝置的第一密鑰獲取請求,該受保護服務(wù)器就會產(chǎn)生對制造受保護系統(tǒng)的請求,該系統(tǒng)仍將保存該裝置的RAND值。此時,該制造受保護系統(tǒng)產(chǎn)生該裝置的DPpri密鑰,將它返回給受保護服務(wù)器,并只有在那時才銷毀該RAND值。
在另一個實施例中,代替在該裝置上的非易失性存儲器中存儲密鑰服務(wù)公共密鑰散列,該裝置制造商可以選擇存儲根密鑰的散列,然后利用根密鑰為密鑰服務(wù)公共密鑰簽署證書。以這種方式,相同的根密鑰可以用于非常多的裝置。
盡管可以將在此討論的操作描述為一種順序過程,但是實際上其中的一些操作可以并行或同時執(zhí)行。另外,在一些實施例中,可以在不偏離本發(fā)明精神的情況下重新安排該操作的次序。
在此描述的技術(shù)并不限于任何特定的硬件或軟件配置;它們可以應(yīng)用于任何計算或處理環(huán)境??梢砸杂布④浖蚨叩慕M合來實施該技術(shù)??梢砸栽诳删幊虣C器上執(zhí)行的程序來實施該技術(shù),所述可編程機器例如是移動或固定計算機、個人數(shù)字助理、機頂盒、蜂窩電話和尋呼機、以及其它電子裝置,其每一種包括處理器、處理器可讀的存儲介質(zhì)(包括易失性和非易失性存儲器和/或存儲元件)、至少一個輸入裝置、以及一個或多個輸出裝置。向利用輸入裝置輸入的數(shù)據(jù)應(yīng)用程序代碼來執(zhí)行所述的功能并生成輸出信息??梢韵蛞粋€或多個輸出裝置應(yīng)用該輸出信息。本領(lǐng)域技術(shù)人員可以認識到,本發(fā)明可以利用各種計算機系統(tǒng)配置來實行,包括多處理器系統(tǒng)、小型計算機、大型計算機等等。本發(fā)明還可以在分布式計算環(huán)境中實行,其中可以由通過通信網(wǎng)絡(luò)鏈接的遠程處理裝置來執(zhí)行任務(wù)。
可以以一種高級過程或面向?qū)ο蟮木幊陶Z言來實施每個程序以與處理系統(tǒng)進行通信。然而,如果期望的話,可以以匯編或機器語言來實施程序。無論如何,可以編譯或解釋該語言。
可以使用程序指令來使利用指令編程的通用或?qū)S锰幚硐到y(tǒng)執(zhí)行在此所述的操作??蛇x擇地,可以由包含用于執(zhí)行該操作的硬連線邏輯的特定硬件部件、或者由該編程的計算機部件和定制的硬件部件的任何組合來執(zhí)行該操作??梢詫⒃诖怂龅姆椒ㄌ峁橐环N計算機程序產(chǎn)品,該計算機程序產(chǎn)品可以包括具有存儲在其上的指令的機器可讀介質(zhì),該指令可以用來對處理系統(tǒng)或其他電子裝置進行編程來執(zhí)行該方法。在此使用的術(shù)語“機器可讀介質(zhì)”應(yīng)當包括任何能夠存儲或編碼由該機器執(zhí)行的指令序列并且使該機器執(zhí)行在此所述的任何一種方法的介質(zhì)。因此該術(shù)語“機器可讀介質(zhì)”應(yīng)當包括但不限于固態(tài)存儲器、光盤和磁盤、以及編碼數(shù)據(jù)信號的載波。此外,在本領(lǐng)域中常見的是把以一種形式或另一種形式的軟件(例如程序、過程、進程、應(yīng)用、模塊、邏輯等等)說成是采取動作或?qū)е陆Y(jié)果。這樣的表達僅僅是一種陳述對處理系統(tǒng)執(zhí)行該軟件導致該處理器執(zhí)行產(chǎn)生結(jié)果的動作的簡寫方式。
盡管在此已經(jīng)參考說明性實施例描述了本發(fā)明,但是該描述并不打算在限制的意義上進行解釋。對于本領(lǐng)域技術(shù)人員而言本發(fā)明明顯適合的該說明性實施例的各種修改、以及本發(fā)明的其它實施例被視為在本發(fā)明的精神和范圍內(nèi)。
權(quán)利要求
1.一種方法,包括建立受保護在線服務(wù)器以支持來自客戶端計算機系統(tǒng)的密鑰檢索請求;生成供安全密鑰檢索處理使用的密鑰服務(wù)公共/私有密鑰對;生成用于裝置的偽隨機值;生成與該裝置相關(guān)的加密的數(shù)據(jù)結(jié)構(gòu),該加密的數(shù)據(jù)結(jié)構(gòu)包括私有密鑰;基于偽隨機值生成用于加密的數(shù)據(jù)結(jié)構(gòu)的標識符;在受保護在線服務(wù)器上存儲該標識符和加密的數(shù)據(jù)結(jié)構(gòu);以及將偽隨機值和密鑰服務(wù)公共密鑰的散列值存儲到該裝置內(nèi)的非易失性存儲器中。
2.權(quán)利要求1所述的方法,還包括生成用于一類裝置的直接證明族密鑰對。
3.權(quán)利要求2所述的方法,其中該私有密鑰包括與直接證明族密鑰對的公共密鑰相關(guān)的直接證明私有密鑰,以及該方法還包括散列直接證明私有密鑰來產(chǎn)生私有密鑰摘要。
4.權(quán)利要求1所述的方法,還包括基于用于該裝置的偽隨機值而生成對稱密鑰。
5.權(quán)利要求4所述的方法,其中生成標識符包括利用對稱密鑰加密數(shù)據(jù)值。
6.權(quán)利要求4所述的方法,還包括利用對稱密鑰加密該數(shù)據(jù)結(jié)構(gòu)。
7.權(quán)利要求1所述的方法,還包括在制造受保護系統(tǒng)上存儲密鑰服務(wù)公共密鑰。
8.權(quán)利要求1所述的方法,其中用于該裝置的偽隨機值是唯一的。
9.一種物品,包括具有多個機器可讀指令的第一存儲介質(zhì),其中當處理器執(zhí)行該指令時,該指令提供以下操作建立受保護在線服務(wù)器以支持來自客戶端計算機系統(tǒng)的密鑰檢索請求;生成供安全密鑰檢索處理使用的密鑰服務(wù)公共/私有密鑰對;生成用于裝置的偽隨機值;生成與該裝置相關(guān)的加密的數(shù)據(jù)結(jié)構(gòu),該加密的數(shù)據(jù)結(jié)構(gòu)包括私有密鑰;基于偽隨機值生成用于加密的數(shù)據(jù)結(jié)構(gòu)的標識符;在受保護在線服務(wù)器上存儲該標識符和加密的數(shù)據(jù)結(jié)構(gòu);以及將偽隨機值和密鑰服務(wù)公共密鑰的散列值存儲到該裝置內(nèi)的非易失性存儲器中。
10.權(quán)利要求9所述的物品,還包括用于生成用于一類裝置的直接證明族密鑰對的指令。
11.權(quán)利要求10所述的物品,其中該私有密鑰包括與直接證明族密鑰對的公共密鑰相關(guān)的直接證明私有密鑰,以及該物品還包括用于散列直接證明私有密鑰來產(chǎn)生私有密鑰摘要的指令。
12.權(quán)利要求9所述的物品,還包括用于基于該裝置的偽隨機值而生成對稱密鑰的指令。
13.權(quán)利要求12所述的物品,其中用于生成標識符的指令包括用于利用對稱密鑰加密數(shù)據(jù)值的指令。
14.權(quán)利要求12所述的物品,還包括用于利用對稱密鑰加密該數(shù)據(jù)結(jié)構(gòu)的指令。
15.權(quán)利要求9所述的物品,還包括用于在制造受保護系統(tǒng)上存儲密鑰服務(wù)公共密鑰的指令。
16.權(quán)利要求9所述的物品,其中用于該裝置的偽隨機值是唯一的。
17.一種方法,包括確定與安裝在計算機系統(tǒng)中的裝置相關(guān)的包括私有密鑰的加密的數(shù)據(jù)結(jié)構(gòu)是否被存儲在該計算機系統(tǒng)的存儲器中;以及如果沒有存儲該加密的數(shù)據(jù)結(jié)構(gòu),就從該計算機系統(tǒng)可訪問的受保護在線服務(wù)器中獲得與該裝置相關(guān)的加密的數(shù)據(jù)結(jié)構(gòu),該服務(wù)器存儲加密的數(shù)據(jù)結(jié)構(gòu)的數(shù)據(jù)庫。
18.權(quán)利要求17所述的方法,其中獲得加密的數(shù)據(jù)結(jié)構(gòu)包括向該裝置發(fā)出獲取密鑰命令以啟動私有密鑰獲取過程。
19.權(quán)利要求17所述的方法,其中該私有密鑰包括直接證明私有密鑰,該直接證明私有密鑰與用于一類裝置的直接證明族密鑰對的公共密鑰相關(guān)。
20.權(quán)利要求18所述的方法,其中私有密鑰獲取過程包括通過該裝置獲得密鑰服務(wù)公共密鑰,該密鑰服務(wù)公共密鑰由來自受保護在線服務(wù)器的相應(yīng)的密鑰服務(wù)私有密鑰進行簽名。
21.權(quán)利要求20所述的方法,其中私有密鑰獲取過程還包括基于在該裝置中存儲的唯一的偽隨機值而生成對稱密鑰,以及基于該偽隨機值而生成用于加密的數(shù)據(jù)結(jié)構(gòu)的裝置標識符。
22.權(quán)利要求21所述的方法,其中私有密鑰獲取過程還包括通過該裝置生成瞬時對稱密鑰,建立包括裝置標識符和瞬時對稱密鑰的檢索密鑰消息,利用密鑰服務(wù)公共密鑰來加密該檢索密鑰消息,以及向受保護在線服務(wù)器發(fā)送加密的檢索密鑰消息。
23.權(quán)利要求22所述的方法,其中私有密鑰獲取過程還包括利用密鑰服務(wù)私有密鑰對加密的檢索密鑰消息進行解密,以獲得裝置標識符。
24.權(quán)利要求23所述的方法,其中私有密鑰獲取過程還包括對于在加密的數(shù)據(jù)結(jié)構(gòu)的數(shù)據(jù)庫中通過與生成的裝置標識符匹配的標識符所索引的條目來搜索受保護在線服務(wù)器,在該條目中建立包括加密的數(shù)據(jù)結(jié)構(gòu)的密鑰響應(yīng)消息,利用瞬時對稱密鑰加密該密鑰響應(yīng)消息,以及向該裝置傳送該密鑰響應(yīng)消息。
25.權(quán)利要求24所述的方法,其中私有密鑰獲取過程還包括通過該裝置利用瞬時對稱密鑰對加密的密鑰響應(yīng)消息進行解密,以獲得加密的數(shù)據(jù)結(jié)構(gòu)。
26.權(quán)利要求25所述的方法,其中私有密鑰獲取過程還包括利用對稱密鑰對從受保護在線服務(wù)器接收的加密的數(shù)據(jù)結(jié)構(gòu)進行解密,以獲得私有密鑰和私有密鑰摘要。
27.權(quán)利要求25所述的方法,其中私有密鑰獲取過程還包括散列該私有密鑰以生成新的私有密鑰摘要,比較來自該解密的數(shù)據(jù)結(jié)構(gòu)的私有密鑰摘要和新的私有密鑰摘要,以及當摘要匹配時,把該私有密鑰視作對該裝置有效。
28.一種物品,包括具有多個機器可讀指令的存儲介質(zhì),其中當由處理器執(zhí)行該指令時,該指令通過以下操作來提供用于獲得安裝在計算機系統(tǒng)中的裝置的私有密鑰的操作確定與安裝在計算機系統(tǒng)中相關(guān)的包括私有密鑰的加密的數(shù)據(jù)結(jié)構(gòu)是否被存儲在該計算機系統(tǒng)的存儲器中;以及如果沒有存儲加密的數(shù)據(jù)結(jié)構(gòu),就從該計算機系統(tǒng)可訪問的受保護在線服務(wù)器中獲得與該裝置相關(guān)的加密的數(shù)據(jù)結(jié)構(gòu),該服務(wù)器存儲加密的數(shù)據(jù)結(jié)構(gòu)的數(shù)據(jù)庫。
29.權(quán)利要求28所述的物品,其中用于獲得加密的數(shù)據(jù)結(jié)構(gòu)的指令包括用于向該裝置發(fā)出獲取密鑰命令以啟動私有密鑰獲取過程的指令。
30.權(quán)利要求28所述的物品,其中該私有密鑰包括直接證明私有密鑰,該直接證明私有密鑰與用于一類裝置的直接證明族密鑰對的公共密鑰相關(guān)。
31.權(quán)利要求29所述的物品,其中用于私有密鑰獲取過程的指令包括用于通過該裝置獲得密鑰服務(wù)公共密鑰的指令,該密鑰服務(wù)公共密鑰由來自受保護在線服務(wù)器的相應(yīng)的密鑰服務(wù)私有密鑰進行簽名。
32.權(quán)利要求31所述的物品,其中用于私有密鑰獲取過程的指令還包括用于基于在該裝置中存儲的唯一的偽隨機值而生成對稱密鑰、以及基于該偽隨機值而生成用于加密的數(shù)據(jù)結(jié)構(gòu)的裝置標識符的指令。
33.權(quán)利要求32所述的物品,其中用于私有密鑰獲取過程的指令還包括用于以下操作的指令通過該裝置生成瞬時對稱密鑰,建立包括裝置標識符和瞬時對稱密鑰的檢索密鑰消息,利用密鑰服務(wù)公共密鑰來加密該檢索密鑰消息,以及向受保護在線服務(wù)器發(fā)送加密的檢索密鑰消息。
34.一種用于使用安全協(xié)議向安裝在客戶端計算機系統(tǒng)中的裝置傳遞私有密鑰的系統(tǒng),包括受保護在線服務(wù)器,其可由客戶端計算機系統(tǒng)訪問,并被配置成生成密鑰服務(wù)公共/私有密鑰對,存儲加密的數(shù)據(jù)結(jié)構(gòu)的數(shù)據(jù)庫,每個加密的數(shù)據(jù)結(jié)構(gòu)包括與選定的裝置對應(yīng)的私有密鑰,以及將加密的數(shù)據(jù)結(jié)構(gòu)中所選定的數(shù)據(jù)結(jié)構(gòu)安全地傳送給該裝置;受保護系統(tǒng),其被耦合到該受保護服務(wù)器,并被配置成生成與該裝置相關(guān)的加密的數(shù)據(jù)結(jié)構(gòu),接收來自該受保護服務(wù)器的密鑰服務(wù)公共密鑰,以及向受保護在線服務(wù)器發(fā)送該加密的數(shù)據(jù)結(jié)構(gòu);以及生產(chǎn)系統(tǒng),其被耦合到該受保護系統(tǒng),并被配置成接收來自受保護系統(tǒng)的密鑰服務(wù)公共密鑰的散列值和唯一的偽隨機值,以及在向客戶端計算機系統(tǒng)中安裝該裝置之前,將該密鑰服務(wù)公共密鑰的散列值和唯一的偽隨機值存儲到該裝置的非易失性存儲器中。
35.權(quán)利要求34所述的系統(tǒng),其中私有密鑰包括與直接證明族密鑰對的公共密鑰相關(guān)的直接證明私有密鑰。
全文摘要
向安裝在客戶端計算機系統(tǒng)中的現(xiàn)場的裝置傳遞直接證明私有密鑰可以以安全的方式來完成,而不需要該裝置中相當大的非易失性存儲器。在制造時生成唯一的偽隨機值并將其存儲在該裝置中。該偽隨機值被用來生成用于加密數(shù)據(jù)結(jié)構(gòu)的對稱密鑰,該數(shù)據(jù)結(jié)構(gòu)保存直接證明私有密鑰和與該裝置相關(guān)的私有密鑰摘要。在客戶端計算機系統(tǒng)可訪問的受保護在線服務(wù)器上存儲所得到的加密的數(shù)據(jù)結(jié)構(gòu)。當在客戶端計算機系統(tǒng)上初始化該裝置時,該系統(tǒng)檢查在該系統(tǒng)中是否存在本地化的加密的數(shù)據(jù)結(jié)構(gòu)。如果不存在,該系統(tǒng)就利用安全協(xié)議從受保護在線服務(wù)器獲得相關(guān)的加密的數(shù)據(jù)結(jié)構(gòu)。該裝置利用從其存儲的偽隨機值再生的對稱密鑰對該加密的數(shù)據(jù)結(jié)構(gòu)進行解密,以獲得直接證明私有密鑰。如果該私有密鑰是有效的,它就可以用于客戶端計算機系統(tǒng)中該裝置隨后的驗證處理。
文檔編號H04L9/08GK101019369SQ200580030718
公開日2007年8月15日 申請日期2005年7月8日 優(yōu)先權(quán)日2004年7月14日
發(fā)明者J·蘇頓二世, E·布里克爾, C·哈爾, D·格勞羅克 申請人:英特爾公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1