專利名稱:保護(hù)系統(tǒng)中的信息的制作方法
背景本發(fā)明涉及系統(tǒng)中的信息保護(hù)。
電視節(jié)目和相關(guān)的數(shù)據(jù)可以通過多種不同的傳輸媒體被廣播,所述媒體可以包括有線網(wǎng)絡(luò),數(shù)字衛(wèi)星電視鏈路,以及其它有線或無線鏈路。其中消費(fèi)者付費(fèi)來收看他們喜歡觀看的特定節(jié)目或頻道(例如,電影頻道,按次付費(fèi)的節(jié)目等等)的收費(fèi)電視廣播已變得越來越流行。為了提供收費(fèi)電視業(yè)務(wù),條件接入系統(tǒng)被廣播臺(tái)使用,以使得這樣的收費(fèi)電視廣播能夠被授權(quán)觀眾觀看。
在條件接入系統(tǒng)中,廣播節(jié)目?jī)?nèi)容典型地按照某些條件接入加密協(xié)議被加密。另外,鑒權(quán)處理過程通常被執(zhí)行,以使得加密的內(nèi)容能夠被授權(quán)的接收機(jī)接收。鑒權(quán)處理過程可以包括發(fā)送指令到潛在地很大數(shù)目的可尋址接收機(jī)中的每個(gè)接收機(jī)(諸如,位于機(jī)頂盒中的接收機(jī))。
通過把作為目標(biāo)的或被尋址的鑒權(quán)信號(hào)連同加密的內(nèi)容一起發(fā)送到接收機(jī)來執(zhí)行鑒權(quán)。鑒權(quán)信號(hào)使得被尋址的接收機(jī)能夠按照條件接入?yún)f(xié)議解密被加密的內(nèi)容,這樣,可以產(chǎn)生節(jié)目?jī)?nèi)容的原始副本以便觀看。
然而,在條件接入系統(tǒng)中傳輸?shù)募用苄畔?huì)被未授權(quán)的解擾器相當(dāng)容易地繞過。這種未授權(quán)的接入使得業(yè)務(wù)提供者的收益受到損失,并且會(huì)由于額外的未預(yù)期的負(fù)載造成傳輸信號(hào)的降質(zhì)。因此,需要有一種對(duì)于廣播信號(hào)或其它傳輸信息的改進(jìn)的保護(hù)方案。
概要通常,按照一個(gè)實(shí)施例,在第一設(shè)備與第二設(shè)備之間保密地傳送內(nèi)容的方法,包括把第一和第二設(shè)備的標(biāo)識(shí)信息發(fā)送到第三設(shè)備。第三設(shè)備根據(jù)該標(biāo)識(shí)信息產(chǎn)生預(yù)定的消息。使用該預(yù)定的消息對(duì)第一和第二設(shè)備進(jìn)行鑒權(quán)。
從以下的說明和權(quán)利要求將明白其它特征和實(shí)施例。
附圖簡(jiǎn)述
圖1A是信息傳輸系統(tǒng)的實(shí)施例的方框圖。
圖1B是按照?qǐng)D1A系統(tǒng)中的實(shí)施例的接收機(jī)方框圖。
圖2顯示在圖1A系統(tǒng)中的通信路徑和存儲(chǔ)的信息。
圖3A-3B是按照?qǐng)D1A系統(tǒng)中保護(hù)通信的一個(gè)實(shí)施例的處理過程流程圖。
圖4是利用按照一個(gè)實(shí)施例的公共密鑰加密協(xié)議的離散對(duì)數(shù)型式的圖3A-3B的處理過程狀態(tài)圖。
圖5是利用按照另一個(gè)實(shí)施例的單向散列函數(shù)加密協(xié)議的圖3A-3B的處理過程狀態(tài)圖。
圖6和7是按照利用數(shù)字簽名協(xié)議來執(zhí)行實(shí)體鑒權(quán)和利用密鑰交換加密協(xié)議來導(dǎo)出會(huì)話密鑰的另一個(gè)實(shí)施例的圖3A-3B的處理過程狀態(tài)圖。
詳細(xì)說明在以下的說明中,闡述了大量細(xì)節(jié),以便了解本發(fā)明。然而,本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,本發(fā)明可以不用這些細(xì)節(jié)而被實(shí)施,以及有可能從描述的實(shí)施例作出多種變例或修改方案。
在本說明中,可以使用以下的術(shù)語。要被加密的消息可以被稱為明文,以及被加密的消息可被稱為密文。把密文轉(zhuǎn)換回明文的處理過程可被稱為解密。使消息保密的技術(shù)可被稱為加密,以及破譯密文的技術(shù)可被稱為密碼分析。因此,明文被加密而產(chǎn)生密文,然后后者被解密以產(chǎn)生原先的明文。加密算法,也被稱為加密程序,是用于加密或解密的數(shù)學(xué)函數(shù)。對(duì)于某些加密算法,可以有兩個(gè)相關(guān)的函數(shù)一個(gè)函數(shù)用于加密以及另一個(gè)函數(shù)用于解密。存在許多類型的加密算法,包括公共密鑰算法(也被稱為非對(duì)稱算法),它們被設(shè)計(jì)成使得用于加密的密鑰不同于用于解密的密鑰。在實(shí)施公共密鑰算法的系統(tǒng)中,加密密鑰可被稱為公共密鑰,以及解密密鑰可被稱為專用密鑰(也被稱為秘密的密鑰)。其它的加密算法包括密鑰交換算法,以及使用單向散列函數(shù)的算法。
一種加密技術(shù)使用會(huì)話密鑰來加密和解密通信。會(huì)話密鑰通常被使用于僅僅一個(gè)或有限數(shù)目的通信會(huì)話,然后被丟棄。將分開的密鑰用于不同的通信,使得密鑰不太可能被泄密。
參照?qǐng)D1A,信息傳輸系統(tǒng)可以是廣播系統(tǒng)(例如,電視節(jié)目或其它類型的視頻廣播系統(tǒng)),它包括業(yè)務(wù)提供者10和多個(gè)接收站點(diǎn)12(例如,接收TV節(jié)目的家庭)。在其它實(shí)施例中,信息傳輸系統(tǒng)可以包括其它類型的系統(tǒng),諸如包括網(wǎng)絡(luò)的系統(tǒng)(例如,局域網(wǎng)、廣域網(wǎng)、互聯(lián)網(wǎng)等等);用于發(fā)送音頻信號(hào)的系統(tǒng),諸如電話網(wǎng),或蜂窩或其它無線通信網(wǎng);或其中信息需要在通信信道上被發(fā)送的任何其它系統(tǒng)。在后面的說明中,參考了其中把電視節(jié)目或視頻內(nèi)容發(fā)送到多個(gè)接收站點(diǎn)的實(shí)施例;然而,應(yīng)當(dāng)理解,本發(fā)明并不限于這個(gè)方面,而是可以包括其它方面。
如圖1A所示,業(yè)務(wù)提供者10可以包括頭端系統(tǒng)14,它接收要被發(fā)送的內(nèi)容(明文),以及應(yīng)用按照某個(gè)信息保護(hù)協(xié)議(例如,條件接入?yún)f(xié)議)的加密算法來產(chǎn)生加密的信息(密文)。該加密的信息可以在傳輸媒體15(諸如,電纜鏈路16、衛(wèi)星鏈路18、電話線、地面鏈路、無線鏈路等等)上被發(fā)送。發(fā)送的信息被位于相應(yīng)的接收站點(diǎn)12的一個(gè)或多個(gè)接收機(jī)20接收。每個(gè)接收機(jī)20適合于按照特定的保護(hù)協(xié)議(諸如條件接入?yún)f(xié)議)解密接收的信息以重現(xiàn)原先的節(jié)目?jī)?nèi)容(明文),以便由一個(gè)或多個(gè)顯示單元22顯示。
接收機(jī)20可以包括主設(shè)備24,它可以是集成接收機(jī)設(shè)備(IRD),諸如機(jī)頂盒,它被耦合到“部署點(diǎn)”(POD)模塊26,諸如條件接入模塊(CAM)。POD模塊26可以是集成電路卡(例如,智能卡)或是可被插入到主設(shè)備24的一個(gè)插槽中的、或被電耦合到主設(shè)備24的其它電子裝置。正如下面進(jìn)一步描述的,為了保護(hù)在POD模塊26與主設(shè)備24之間通信的信息,可以實(shí)施副本或內(nèi)容保護(hù)(CP)協(xié)議。
在接收機(jī)20中的POD模塊26可被預(yù)先編程來解密某些類型的發(fā)送的信息(包括按照條件接入?yún)f(xié)議被加密的內(nèi)容)和譯碼從業(yè)務(wù)提供者10發(fā)送的授權(quán)消息,如果有的話。其它類型的主設(shè)備24可以包括電視機(jī)、錄像機(jī)(VCR)、個(gè)人計(jì)算機(jī)或具有從頭端系統(tǒng)14接收信息的集成接收機(jī)的其它設(shè)備。
由頭端系統(tǒng)14在鏈路15上發(fā)送的加密信息被接收機(jī)20中的POD模塊26接收。根據(jù)特定的接收機(jī)20是否已被授權(quán)去解擾接收的信息(例如,基于授權(quán)消息),POD模塊26可以解密接收信號(hào),以便產(chǎn)生明文。授權(quán)消息可以由頭端系統(tǒng)14例如響應(yīng)于在接收站點(diǎn)12觀看特定節(jié)目或頻道的用戶請(qǐng)求而被發(fā)送到接收機(jī)20。
為了按照本發(fā)明的某些實(shí)施例保護(hù)信息,在接收機(jī)20中可以利用副本或內(nèi)容保護(hù)(CP)方案,來防止或減小未授權(quán)用戶接入到信息傳輸系統(tǒng)的似然性。
為了防止未授權(quán)的接入,內(nèi)容保護(hù)方案利用加密協(xié)議來保護(hù)在接收機(jī)20中的POD模塊6與主設(shè)備24之間在鏈路28上傳輸?shù)男畔?。為了?yàn)證POD模塊26與主設(shè)備24的身份,根據(jù)由頭端系統(tǒng)14發(fā)送的特定的的綁定消息,在POD模塊26與主設(shè)備24之間執(zhí)行實(shí)體鑒權(quán)。此外,通過使用來自頭端系統(tǒng)14的這種消息,POD模塊與主設(shè)備24可以產(chǎn)生會(huì)話密鑰,用于加密和解密在POD模塊26與主設(shè)備24之間傳輸?shù)南?。?shí)際上,內(nèi)容保護(hù)方案把現(xiàn)有的條件接入系統(tǒng)(包括頭端系統(tǒng)14與POD模塊26)橋接或鏈接到在接收機(jī)20(包括POD模塊26與主設(shè)備24)中實(shí)施的副本保護(hù)系統(tǒng)。
因此,按照一個(gè)實(shí)施例,為了能夠在POD模塊26與主設(shè)備24之間進(jìn)行鑒權(quán),要涉及到第三實(shí)體,在本例中是頭端系統(tǒng)14。頭端系統(tǒng)14可以存儲(chǔ)一個(gè)或多個(gè)包含信息的數(shù)據(jù)庫,通過這些信息可以為設(shè)備24和26產(chǎn)生特定的綁定消息。綁定消息可以由頭端系統(tǒng)14響應(yīng)于來自接收機(jī)20的、對(duì)于條件接入-內(nèi)容保護(hù)綁定業(yè)務(wù)(它包括執(zhí)行實(shí)體鑒權(quán)和會(huì)話密鑰導(dǎo)出)的請(qǐng)求而被產(chǎn)生。隨機(jī)計(jì)數(shù)機(jī)制也可被嵌入鑒權(quán)處理過程,使得它對(duì)抗“中間人(man-in-the-middle)”和重放攻擊時(shí)更魯棒,其中在重放攻擊時(shí),在POD模塊26與主設(shè)備24之間傳輸?shù)南⒖杀蝗肭终弑O(jiān)視,以便破譯在接收機(jī)20中所利用的內(nèi)容保護(hù)方案的密碼。一旦實(shí)體鑒權(quán)被執(zhí)行以確保POD模塊26和主設(shè)備24都是被驗(yàn)證的單元,則共享的會(huì)話密鑰可被得出,用來保護(hù)在POD模塊26與主設(shè)備24之間的消息。
按照某些實(shí)施例的內(nèi)容保護(hù)系統(tǒng)利用許多可用的加密協(xié)議之一,它允許相當(dāng)?shù)统杀镜膶?shí)施方案??杀皇褂玫募用軈f(xié)議包括公共密鑰算法(例如,ElGamal消息鑒權(quán)碼);單向散列函數(shù)算法(例如,保密散列算法,諸如SHA-1);以及密鑰交換算法(例如,Diffie-Hellman算法)。其它類型的加密協(xié)議也可被使用,諸如Rivest-Shamir-Adleman(RSA)算法(公共密鑰算法);數(shù)字簽名算法(公共密鑰算法);消息提要算法,諸如MD4或MD5(單向散列函數(shù));以及其它算法。所列出的算法連同可被使用于本發(fā)明的某些實(shí)施例的許多其它類型的加密算法,在Bruce Schneier,“Applied Cryptography(應(yīng)用加密術(shù))”,John Wiley & Sons,Inc.(2d ed.,1996)中被描述。
參照?qǐng)D2,由本發(fā)明的某些實(shí)施例利用的實(shí)體鑒權(quán)處理過程利用可信任的第三方112,它能夠把在一個(gè)或多個(gè)接收站點(diǎn)12處的一個(gè)或多個(gè)主設(shè)備24和POD模塊26的公共的或秘密的密鑰通過保密信道114傳送到頭端系統(tǒng)14。例如,這種可信任的第三方可以是CableTelevison Laboratories Inc.(CableLabs)(有線電視實(shí)驗(yàn)室有限公司)或某些其它的多系統(tǒng)操作者(MSO)??尚湃蔚牡谌?12產(chǎn)生公共或?qū)S妹荑€表(和/或其它驗(yàn)證信息),它們由POD模塊26與主設(shè)備24的設(shè)備標(biāo)識(shí)符(例如,序列號(hào))相聯(lián)系。該密鑰表可以在保密信道114上被傳送到頭端系統(tǒng)14。通過這個(gè)密鑰表,頭端系統(tǒng)14可以產(chǎn)生被存儲(chǔ)在頭端系統(tǒng)的存儲(chǔ)介質(zhì)中的一個(gè)或多個(gè)數(shù)據(jù)庫。例如,在說明的實(shí)施例中,頭端系統(tǒng)14包括存儲(chǔ)與POD模塊26有關(guān)的驗(yàn)證信息的數(shù)據(jù)庫104,以及存儲(chǔ)與主設(shè)備24有關(guān)的驗(yàn)證信息的數(shù)據(jù)庫106。一個(gè)或多個(gè)數(shù)據(jù)庫被頭端系統(tǒng)14訪問以產(chǎn)生用于主設(shè)備24與POD模塊26的綁定消息,以及在某些實(shí)施例中,在實(shí)體鑒權(quán)處理過程期間驗(yàn)證主設(shè)備與POD模塊的標(biāo)識(shí)符。一旦實(shí)體鑒權(quán)被執(zhí)行,POD模塊26與主設(shè)備24還可以產(chǎn)生會(huì)話密鑰(它也可以基于由頭端系統(tǒng)發(fā)送的綁定消息)以保護(hù)相互通信。
在本說明中,信息傳輸系統(tǒng)可以被稱為條件接入/內(nèi)容保護(hù)(CA-CP)系統(tǒng)。按照一個(gè)實(shí)施例的CA-CP系統(tǒng)可包括多個(gè)部件,包括頭端系統(tǒng)14,它是對(duì)傳輸媒體15上傳輸?shù)膬?nèi)容進(jìn)行建立與加密的條件接入系統(tǒng)的一部分。頭端系統(tǒng)14也存儲(chǔ)一個(gè)或多個(gè)數(shù)據(jù)庫(例如。104和106),包含設(shè)備24與26的驗(yàn)證信息。CA-CP系統(tǒng)的另一個(gè)部件是傳輸媒體15,允許在頭端系統(tǒng)14與接收機(jī)20之間進(jìn)行雙向通信(通過上行路徑116和下行路徑118)。在雙向通信鏈路15上,接收機(jī)20可請(qǐng)求頭端系統(tǒng)14提供按照一個(gè)實(shí)施例的CA-CP綁定業(yè)務(wù)以允許設(shè)備24和26執(zhí)行實(shí)體鑒權(quán)。在從頭端系統(tǒng)14到接收機(jī)20的路徑118上的下行通信包括在條件接入?yún)f(xié)議下發(fā)送保護(hù)的內(nèi)容,以及作為CA-CP綁定業(yè)務(wù)的一部分而產(chǎn)生的消息。
在實(shí)體鑒權(quán)與會(huì)話密鑰導(dǎo)出被執(zhí)行后,POD模塊26可以按照CA協(xié)議解密從頭端系統(tǒng)14接收的密文以產(chǎn)生發(fā)送內(nèi)容的原始副本。接著在傳輸?shù)街髟O(shè)備24之前,POD模塊26通過使用按照CP協(xié)議導(dǎo)出的會(huì)話密鑰加密原始內(nèi)容,主設(shè)備24通過使用被存儲(chǔ)在主設(shè)備24中的會(huì)話密鑰解密發(fā)送的信息。在主設(shè)備24與POD模塊26之間的接口可以是開放應(yīng)用編程接口(API)。
再參照?qǐng)D3,圖上顯示執(zhí)行實(shí)體鑒權(quán)和會(huì)話密鑰導(dǎo)出的處理過程(也稱為綁定業(yè)務(wù))。接收機(jī)20在傳輸媒體15的上行路徑116上把主設(shè)備24與POD模塊26的授權(quán)域(或部分授權(quán)域)發(fā)送到頭端系統(tǒng)14(在302)。在POD模塊26中的POD授權(quán)域100可以包括POD模塊26的設(shè)備標(biāo)識(shí)符P_ID連同其它信息(如下面描述的),以及在主設(shè)備24中的主設(shè)備授權(quán)域102可以包括主設(shè)備24的設(shè)備標(biāo)識(shí)符H_ID連同其它信息。被發(fā)送到頭端系統(tǒng)14的授權(quán)域100和102(或部分的這樣的授權(quán)域)有效地提供對(duì)頭端系統(tǒng)執(zhí)行綁定業(yè)務(wù)(包括實(shí)體鑒權(quán)和會(huì)話密鑰導(dǎo)出)的請(qǐng)求。在其它實(shí)施例中,分開的消息或預(yù)先規(guī)定的標(biāo)志或其它指示可以構(gòu)成一個(gè)啟動(dòng)綁定業(yè)務(wù)的請(qǐng)求。
在頭端系統(tǒng)14中的控制器130使用在接收的鑒權(quán)域部分中的設(shè)備標(biāo)識(shí)符P_ID和H_ID,分別映射到在數(shù)據(jù)庫104和106中的相應(yīng)位置(在304)。在一個(gè)實(shí)施例中,控制器130可被實(shí)施為硬件和軟件的組合。硬件可以包括諸如微處理器的處理器、微控制器、以專用集成電路(ASIC)實(shí)施的有限狀態(tài)機(jī),或可編程門陣列(PGA)等等。硬件也可包括一個(gè)或多個(gè)存儲(chǔ)單元。在頭端系統(tǒng)14中的軟件可包括一個(gè)或多個(gè)例行程序,以響應(yīng)于來自一個(gè)或多個(gè)接收機(jī)20的請(qǐng)求,執(zhí)行條件接入運(yùn)行以及產(chǎn)生綁定消息。
標(biāo)識(shí)符P_ID映射到POD數(shù)據(jù)庫104中的存儲(chǔ)單元108,以及標(biāo)識(shí)符H_ID映射到主設(shè)備數(shù)據(jù)庫106中的存儲(chǔ)單元110。分別被存儲(chǔ)在POD數(shù)據(jù)庫104和主設(shè)備數(shù)據(jù)庫106的存儲(chǔ)單元108和110中的驗(yàn)證信息,可以包括與POD模塊26與主設(shè)備24有關(guān)的、一個(gè)或多個(gè)以下的項(xiàng)目專用或秘密密鑰;公共密鑰;預(yù)定的簽名;或其它驗(yàn)證信息。被存儲(chǔ)在POD數(shù)據(jù)庫與主設(shè)備數(shù)據(jù)庫104和106中的驗(yàn)證信息可被頭端控制器130使用來為請(qǐng)求的接收機(jī)20產(chǎn)生綁定消息,以及可任選地,確認(rèn)實(shí)際上從授權(quán)的設(shè)備24和26發(fā)起的授權(quán)域。驗(yàn)證可以僅僅通過檢驗(yàn)與請(qǐng)求的接收機(jī)20的設(shè)備24和26有關(guān)的驗(yàn)證信息被存儲(chǔ)在數(shù)據(jù)庫104和106而被完成。替換地,驗(yàn)證可以通過比較接收的授權(quán)域部分的內(nèi)容與分別被存儲(chǔ)在數(shù)據(jù)庫104和106的存儲(chǔ)單元108和110中的驗(yàn)證信息,而被完成。如果頭端控制器130能夠驗(yàn)證(在306)設(shè)備24和26,則頭端系統(tǒng)14接著在傳輸媒體15的下行路徑118上把綁定消息發(fā)送到POD模塊26(在308)。如果頭端系統(tǒng)14不能驗(yàn)證請(qǐng)求的接收機(jī)20的至少一個(gè)設(shè)備24或26,則可以發(fā)送預(yù)定的錯(cuò)誤消息(在310)。
根據(jù)由頭端系統(tǒng)14發(fā)送的綁定消息,POD模塊26確定(在312)主設(shè)備24是否是被授權(quán)的設(shè)備。如果鑒權(quán)成功,則POD模塊26發(fā)送(在316)綁定信息到主設(shè)備24,以及產(chǎn)生和存儲(chǔ)(在318)會(huì)話密鑰以用于保護(hù)POD模塊26與主設(shè)備24之間的通信。然而,如果POD模塊26不能鑒權(quán)該主設(shè)備,則產(chǎn)生錯(cuò)誤消息(在314)。
在主設(shè)備24中,接收的綁定信息被使用來鑒權(quán)POD模塊26(在320)。如果鑒權(quán)不成功,則可以產(chǎn)生錯(cuò)誤消息(在322)。然而,如果鑒權(quán)成功,則主設(shè)備24產(chǎn)生和存儲(chǔ)(在324)會(huì)話密鑰,用于解密由POD模塊26接收的內(nèi)容。通過使用被分開地存儲(chǔ)在POD模塊26與主設(shè)備24中的、獨(dú)立地導(dǎo)出的會(huì)話密鑰,可以在接收機(jī)20中執(zhí)行在鏈路29上的保密通信(在324)。會(huì)話密鑰被存儲(chǔ)在主設(shè)備24與POD模塊26中的抗篡改的保密存儲(chǔ)單元中。
因此,正如所描述的,主設(shè)備24與POD模塊26能夠根據(jù)由頭端系統(tǒng)14發(fā)送到主設(shè)備24和POD模塊26的綁定消息互相鑒權(quán)。通過使用按照本發(fā)明的某些實(shí)施例的綁定處理過程,系統(tǒng)完整性可以通過減小所使用的保護(hù)協(xié)議被未授權(quán)用戶和設(shè)備繞過的似然性而被保持。另外,鑒權(quán)可以與無論哪個(gè)條件接入機(jī)制被頭端系統(tǒng)14利用無關(guān)地被實(shí)施。而且,本發(fā)明的某些實(shí)施例允許在綁定處理過程期間給POD模塊26與主設(shè)備24加上相當(dāng)?shù)偷挠?jì)算負(fù)擔(dān)。
參照?qǐng)D1B,圖上顯示主設(shè)備24與POD模塊26的部件和分層。每個(gè)主設(shè)備24與POD模塊26分別包括鏈路接口200和202,它們被耦合到鏈路28。在一個(gè)實(shí)例中,主設(shè)備24中的接口200可被耦合到一個(gè)插槽以容納POD模塊26,該P(yáng)OD模塊可以是一個(gè)諸如智能卡的電子卡。主設(shè)備24與POD模塊26也分別包括控制設(shè)備204和206,用來控制相應(yīng)設(shè)備的運(yùn)行。被存儲(chǔ)在存儲(chǔ)單元中的控制例行程序205和207可以是分別在控制設(shè)備204和206上可執(zhí)行的,用來完成各種任務(wù)。在POD模塊26中,控制例行程序207可以執(zhí)行從頭端系統(tǒng)14發(fā)送的條件接入密文的解密,按照綁定業(yè)務(wù)的實(shí)體鑒權(quán)和會(huì)話密鑰導(dǎo)出,以及按照內(nèi)容保護(hù)協(xié)議對(duì)在鏈路28上傳輸?shù)膬?nèi)容進(jìn)行加密。在主設(shè)備24中,控制例行程序205可以執(zhí)行按照綁定業(yè)務(wù)的實(shí)體鑒權(quán)和會(huì)話密鑰導(dǎo)出,通過鏈路28接收的內(nèi)容的解密,以及解密內(nèi)容的處理(包括用于顯示和/或其它操作)。
存儲(chǔ)單元208和210也分別被包括在設(shè)備24和26中,用來存儲(chǔ)信息,諸如授權(quán)域、從頭端系統(tǒng)14發(fā)起的綁定消息、來自頭端系統(tǒng)14的發(fā)送的內(nèi)容、軟件指令和數(shù)據(jù)等等??刂圃O(shè)備204和206可以是各種類型的控制設(shè)備,包括微處理器、微控制器、ASIC、PGA和其它可編程設(shè)備。存儲(chǔ)單元208和210可以是一個(gè)或多個(gè)各種類型的存儲(chǔ)器,諸如動(dòng)態(tài)隨機(jī)接入存儲(chǔ)器(DRAM)、靜態(tài)隨機(jī)接入存儲(chǔ)器(SRAM)、電可擦和可編程只讀存儲(chǔ)器(EEPROM)、快速存儲(chǔ)器和其它類型的存儲(chǔ)器,諸如硬盤驅(qū)動(dòng)器、軟盤驅(qū)動(dòng)器、光盤(CD)和數(shù)字視頻光盤(DVD)驅(qū)動(dòng)器。
為了執(zhí)行各種加密操作,主設(shè)備24與POD模塊26可以分別包括以下的單元算術(shù)處理單元212和214;異或(XOR)單元216和218;隨機(jī)數(shù)發(fā)生器220和222;以及計(jì)數(shù)器224和226。主設(shè)備24中的單元212,216,220和224可以被集成在一個(gè)單個(gè)可編程器件中,諸如控制設(shè)備204,或以分立單元被實(shí)施。POD模塊26中的單元214,218,222和226可以類似地被安排。這種單元也可以以軟件來實(shí)施,諸如作為控制例行程序205和207的一部分。替換地,由控制例行程序205和207完成的任務(wù)可以以硬件來實(shí)施。
由于敏感的信息被分別保存在主設(shè)備24與POD模塊26的存儲(chǔ)單元208和210中,所以要避免從外部接入到這些存儲(chǔ)單元。敏感的信息可以包括公共和專用密鑰,或在綁定處理過程中使用的其它信息,以及用于由內(nèi)容保護(hù)協(xié)議保護(hù)的通信的、任何導(dǎo)出的會(huì)話密鑰。
下面將描述信息傳輸系統(tǒng)的實(shí)施例,它實(shí)施用于綁定業(yè)務(wù)的性能的、以下的加密算法之一ElGamal算法,它是公共密鑰算法的離散對(duì)數(shù)版本(圖4);SHA-1算法,它是單向散列函數(shù)算法(圖5);以及Diffie-Hellman密鑰交換算法和數(shù)字簽名算法的組合(圖6-7)。然而,應(yīng)當(dāng)理解,本發(fā)明并不限于這樣描述的實(shí)施例,因?yàn)槠渌愋偷募用芩惴ㄒ部梢栽诹硗獾膶?shí)施例中被實(shí)施。
參照?qǐng)D4,圖上顯示對(duì)于按照一個(gè)實(shí)施例保護(hù)協(xié)議的狀態(tài)圖,它實(shí)施ElGamal算法來執(zhí)行實(shí)體鑒權(quán)和會(huì)話密鑰導(dǎo)出。在顯示的實(shí)施例中,包括三個(gè)分開的階段。在階段1,執(zhí)行包括POD模塊26與主設(shè)備24的內(nèi)容保護(hù)系統(tǒng)的建立。這可以在初始化期間發(fā)生,諸如當(dāng)POD模塊26被初始地插入主設(shè)備24時(shí),或當(dāng)主設(shè)備24被循環(huán)加上電源時(shí)。在階段1中包括五個(gè)狀態(tài),其中消息在主設(shè)備24、POD模塊26和頭端系統(tǒng)14中間被交換,以便把在主設(shè)備24與POD模塊26的授權(quán)域中的信息安全地傳遞到主設(shè)備24。在階段2,進(jìn)行實(shí)體鑒權(quán)和會(huì)話密鑰導(dǎo)出。在階段2中,包括三個(gè)狀態(tài)(6,7和8)。一旦階段2被完成,在POD模塊26與主設(shè)備24之間的通信就可以按照內(nèi)容保護(hù)協(xié)議被保護(hù),該內(nèi)容保護(hù)協(xié)議可包括加密算法,諸如利用被分開導(dǎo)出的、和被存儲(chǔ)在設(shè)備24和26中的對(duì)稱密碼算法。
如圖4所示,被存儲(chǔ)在主設(shè)備24的存儲(chǔ)單元208中的授權(quán)域可包括它的設(shè)備標(biāo)識(shí)符(H_ID)、它的專用密鑰H、它的公共密鑰GHmodN(GH的模N值)以及隨機(jī)數(shù)發(fā)生器(RNG)種子SH(在下面描述)。POD模塊26可以把以下的授權(quán)域存儲(chǔ)在它的存儲(chǔ)單元210中它的設(shè)備標(biāo)識(shí)符P_ID、它的專用密鑰P、它的公共密鑰GPmod N(GP的模N值)以及RNG種子SP。N是預(yù)定的質(zhì)數(shù),G是用作為發(fā)生器的、預(yù)定的隨機(jī)數(shù),以及mod N代表模N。在頭端系統(tǒng)14中,按照顯示的實(shí)施例,POD模塊公共密鑰GPmod N的倒數(shù)(G-Pmod N)作為驗(yàn)證信息被存儲(chǔ)在數(shù)據(jù)庫104中,以及主公共密鑰GHmod N的倒數(shù)(G-Hmod N)作為驗(yàn)證信息被存儲(chǔ)在數(shù)據(jù)庫106中。
在建立階段(階段1)期間,主設(shè)備24在狀態(tài)1產(chǎn)生隨機(jī)數(shù)MH,以及把以下的字符串{H_ID‖MH}通過鏈路28發(fā)送到POD模塊26。正如在本說明中使用的,術(shù)語“A‖B”表示在數(shù)據(jù)流中域A和B的級(jí)聯(lián)。在狀態(tài)2,POD模塊26產(chǎn)生它的隨機(jī)數(shù)Mp,以及導(dǎo)出公共計(jì)數(shù)器值Mo,它是Mp和MH的異或值
MO=MPMH.接著,POD模塊26把包含級(jí)聯(lián)的設(shè)備ID{P_ID‖H_ID}(它們是POD模塊26與主設(shè)備24的授權(quán)域的一部分)的數(shù)據(jù)流發(fā)送到頭端系統(tǒng)14。授權(quán)域部分是給頭端系統(tǒng)14的、關(guān)于綁定業(yè)務(wù)已被請(qǐng)求的指示。在狀態(tài)3,根據(jù)接收的數(shù)值P_ID和H_ID,頭端控制器130分別接入到數(shù)據(jù)庫104和106的存儲(chǔ)單元108和110,以便檢索驗(yàn)證信息G-Pmod N和G-Hmod N。在狀態(tài)3,頭端控制器130計(jì)算檢索的數(shù)值的模相乘,以得出綁定消息G-(P+H)mod NG-(P+H)modN=[G-PmodN[G-HmodN]modN.綁定消息在頭端系統(tǒng)14與接收機(jī)20之間的鏈路15上被發(fā)送回POD模塊26。在狀態(tài)4,POD模塊26執(zhí)行接收的數(shù)值G-(P+H)mod N與它的公共密鑰GPmod N的模相乘,得出G-Hmod NG-HmodN=[G-(P+H)modN][GPmodN]modN.然后POD模塊26把綁定消息G-(P+H)mod N與隨機(jī)數(shù)MP的級(jí)聯(lián){G-(P+H)mod N‖MP},通過鏈路28轉(zhuǎn)發(fā)到主設(shè)備24。
接著,在狀態(tài)5,主設(shè)備24通過執(zhí)行MP和MH的異或運(yùn)算也獨(dú)立地導(dǎo)出公共計(jì)數(shù)器值MO。此外,主設(shè)備24通過執(zhí)行由頭端系統(tǒng)14發(fā)送的綁定消息與主設(shè)備的公共密鑰的模相乘,而計(jì)算G-Pmod NG-PmodN=[G-(P+H)modN][GHmodN]modN狀態(tài)1-5完成建立階段,其中包括主設(shè)備24與POD模塊26的設(shè)備ID、隨機(jī)數(shù)MH和MP,并且綁定消息在主設(shè)備24、POD模塊26和頭端系統(tǒng)14之間進(jìn)行交換。
在建立階段后,在階段2,在POD模塊26與主設(shè)備24之間執(zhí)行實(shí)體鑒權(quán)和會(huì)話密鑰導(dǎo)出。一旦被鑒權(quán),POD模塊26與主設(shè)備24就被授權(quán)以按照在接收機(jī)20中被使用的內(nèi)容保護(hù)方案獨(dú)立地導(dǎo)出會(huì)話密鑰。在一個(gè)實(shí)施例中,導(dǎo)出的會(huì)話密鑰可包括1024比特的平均信息量,它對(duì)于為16個(gè)連續(xù)會(huì)話在POD模塊26與主設(shè)備24之間的內(nèi)容進(jìn)行加密是足夠的。在某些實(shí)施例中,在接收機(jī)20中被執(zhí)行的內(nèi)容保護(hù)協(xié)議利用包括會(huì)話密鑰的對(duì)稱加密算法。
在狀態(tài)6,它是鑒權(quán)和會(huì)話密鑰導(dǎo)出階段的第一狀態(tài),數(shù)值M被初始化為公共計(jì)數(shù)器值MO。接著,M通過增加1(或增加某個(gè)其它預(yù)定的數(shù)值)進(jìn)行更新M←M+1此外,POB模塊26也通過產(chǎn)生隨機(jī)整數(shù)s以及計(jì)算Gsmod N和M(G-H)smod N而使用修改的ElGamal算法來加密用于主設(shè)備24的M。流{Gsmod N‖M(G-H)smod N}從POD模塊26被發(fā)送到主設(shè)備24。
接著,在狀態(tài)7,主設(shè)備24把變量M也初始化到公共計(jì)數(shù)器值M0。另外,M通過使它增加1而被更新,以便由POD模塊26中的數(shù)值M同步它。主設(shè)備24通過首先產(chǎn)生隨機(jī)整數(shù)t,然后計(jì)算GtmodN和M(G-P)tmod N而使用更新的ElGamal算法來加密用于POD模塊26的M。然后主設(shè)備24把以下的流[Gtmod N‖M(G-P)tmod N]發(fā)送到POD模塊26。另外,在狀態(tài)7,主設(shè)備24也解密從POD模塊26發(fā)送的密文,通過執(zhí)行如下的模相乘而得出MtM1={[M(G-H)smodN]·(GsmodN)H}modN.如果參量M′等于參量M,則主設(shè)備24已鑒權(quán)POD模塊26,以及主設(shè)備24導(dǎo)出共享的密鑰k,它被如下地計(jì)算k=(GtsmodN)=[(GsmodN)tmodN].
接著,在狀態(tài)8,POD模塊26從主設(shè)備24接收密文,以及通過執(zhí)行如下的運(yùn)算而計(jì)算參量M′M′={[M(G-P)tmodN]·(GtmodN)P}modN.接著,把M′的數(shù)值與M進(jìn)行比較,如果相等,則POD模塊26鑒權(quán)主設(shè)備24,以及如下地導(dǎo)出共享的會(huì)話密鑰k
k=(GtsmodN)=[(GtmodN)smodN].
在完成實(shí)體鑒權(quán)和共享的密鑰導(dǎo)出后,最后的密鑰K是從會(huì)話密鑰k模目標(biāo)加密密鑰尺寸而計(jì)算的K=kmod(加密密鑰尺寸)這個(gè)運(yùn)算循環(huán)k的數(shù)據(jù)區(qū),直至耗盡k的熵(entropy)。
在確定共享的會(huì)話密鑰K以后,POD模塊26現(xiàn)在可按照內(nèi)容保護(hù)協(xié)議在接收機(jī)20中加密在鏈路28上發(fā)送的內(nèi)容。用來保護(hù)在主設(shè)備24與POD模塊26之間傳輸內(nèi)容的內(nèi)容保護(hù)協(xié)議在狀態(tài)9和10中被執(zhí)行,狀態(tài)9和10被包括在圖4的狀態(tài)圖的階段3。這種內(nèi)容可包括廣播視頻和音頻數(shù)據(jù)。
按照一個(gè)實(shí)施例,在狀態(tài)9,POD模塊26按照在頭端系統(tǒng)14與POD模塊26之間的條件接入?yún)f(xié)議解密從頭端系統(tǒng)14接收的輸送流。接著,POD模塊26按照對(duì)稱密碼使用導(dǎo)出的會(huì)話密鑰K來加密來自頭端系統(tǒng)14的內(nèi)容,以及把密文通過鏈路28轉(zhuǎn)發(fā)到主設(shè)備24。接著,在狀態(tài)10,主設(shè)備24按照對(duì)稱密碼使用導(dǎo)出的會(huì)話密鑰K來解密密文,得出原始數(shù)據(jù),它可以被主設(shè)備24進(jìn)一步處理(諸如,顯示給觀眾或其它操作)。
分別在主設(shè)備24與POD模塊26中的隨機(jī)數(shù)發(fā)生器220和222,適合于產(chǎn)生隨機(jī)數(shù)MH和t(在主設(shè)備24中)以及MP和s(在POD模塊26中)。隨機(jī)數(shù)可以是真實(shí)的隨機(jī)數(shù)或偽隨機(jī)數(shù),被使用來通過在主設(shè)備24與POD模塊26之間提供隨機(jī)化的口令而增強(qiáng)安全性。在一個(gè)實(shí)施例中,在每個(gè)設(shè)備24和26中使用的隨機(jī)數(shù)發(fā)生器(RNG)利用ElGamal加密機(jī)作為單向函數(shù),雖然也可預(yù)期其它產(chǎn)生隨機(jī)數(shù)的方法。加到隨機(jī)數(shù)發(fā)生器220或226的輸入包括可以是160比特串的RNG種子S(在POD模塊26中的SP和在主設(shè)備24中的SH),長(zhǎng)度上也可以是160比特的專用密鑰K(專用密鑰是在POD模塊26中的P和在主設(shè)備24中的H),以及一個(gè)b比特串c,其中160<b<1024。比特流c可以這樣地被選擇,以使得任何兩個(gè)接續(xù)的數(shù)值是不同的。
隨機(jī)數(shù)發(fā)生器220或222的輸出是由G(s,k,c)表示的比特串,在一個(gè)實(shí)施例中可以是1024比特串。在一個(gè)實(shí)施例中,隨機(jī)數(shù)發(fā)生器220或222可以如下地產(chǎn)生隨機(jī)數(shù)。起始地,規(guī)定一個(gè)參量u,它包括c的160個(gè)最低有效位u←clsb-160接著,通過用零填充比特串c得出1024比特消息塊X,而創(chuàng)建消息塊XX←c‖O1024-b.然后對(duì)RNG種子S和參量u執(zhí)行異或運(yùn)算,得出隨機(jī)數(shù)vv←su.然后用消息X、隨機(jī)數(shù)v和專用密鑰K執(zhí)行ElGamal加密步驟,得出消息YY←X(GK)vmodN.然后輸出G(s,K,c)被設(shè)置成等于加密的消息Y,后者是隨機(jī)數(shù)。
輸出G(s,K,c)是1024比特整數(shù)。在按照某些實(shí)施例的鑒權(quán)處理過程中,在POD模塊26中產(chǎn)生的隨機(jī)數(shù)是輸出G(s,P,c)lsb-160的160個(gè)最低有效位,以及在主設(shè)備24中產(chǎn)生的隨機(jī)數(shù)是輸出G(s,H,c)lsb-160的160個(gè)最低有效位。
按照另一個(gè)實(shí)施例,單向散列函數(shù)可被利用于在頭端系統(tǒng)14、主設(shè)備24和POD模塊26之間的綁定業(yè)務(wù)。單向散列函數(shù)算法的一個(gè)例子是保密散列算法(SHA),諸如SHA-1。
參照?qǐng)D5,用來保護(hù)在主設(shè)備24與POD模塊26之間的通信的、按照一個(gè)實(shí)施例的實(shí)體鑒權(quán)和密鑰導(dǎo)出處理過程使用了SHA-1算法。該處理過程被劃分成三個(gè)階段初始化階段(階段1);實(shí)體鑒權(quán)和密鑰導(dǎo)出階段(階段2);和通信階段(階段3),其中在POD模塊26與主設(shè)備24之間的數(shù)據(jù)交換被導(dǎo)出的會(huì)話密鑰保護(hù)。
可信任的第三方112(圖2)提供設(shè)備標(biāo)識(shí)符表以及用于信息傳輸系統(tǒng)的POD模塊26與主設(shè)備24的相應(yīng)秘密密鑰(例如,160比特秘密密鑰)和RNG種子(例如,160比特RNG種子)。秘密密鑰被存儲(chǔ)在POD和主設(shè)備數(shù)據(jù)庫104和106中的各個(gè)存儲(chǔ)單元,它們可以分別由POD設(shè)備標(biāo)識(shí)符(P_ID)和主設(shè)備標(biāo)識(shí)符(H_ID)尋址。
在本實(shí)施例中,用于POD模塊26的授權(quán)域被表示為{P_ID‖P‖SP},它包括POD模塊標(biāo)識(shí)符、秘密密鑰和RNG種子的級(jí)聯(lián)。同樣地,主設(shè)備的授權(quán)域被表示為{H_ID‖H‖SH}。POD模塊26和主設(shè)備24的秘密密鑰P和H分別被存儲(chǔ)在抗篡改的存儲(chǔ)單元210和208。
在初始化期間,在POD模塊26被插入到或被可操作地耦合到主設(shè)備24后,或在主設(shè)備24被循環(huán)加電后,POD模塊26與主設(shè)備24分別交換來自POD模塊26與主設(shè)備24的重新產(chǎn)生的隨機(jī)整數(shù)NP和NH。然后每個(gè)設(shè)備獨(dú)立地設(shè)置公共初始計(jì)數(shù)器值N0∶N0=NPH。
接著,在狀態(tài)1初始化后,主設(shè)備24把N設(shè)置為N0,然后把N加增量1(或某個(gè)其它預(yù)定的數(shù)值)。然后主設(shè)備24計(jì)算SHA-1(NH),它是NH的保密散列函數(shù),以及把以下的流{H_ID‖SHA-1(NH)}發(fā)送到POD模塊26。在狀態(tài)2,POD模塊26也把N設(shè)置為N0,然后把N加增量1(或某個(gè)其它值)。然后POD模塊26計(jì)算單向散列函數(shù)SHA-1(NP)。接著,POD模塊26把以下的流{P_ID‖H_ID‖N‖SHA-1(NH)‖SHA-1(NP)}發(fā)送到頭端系統(tǒng)14。這向頭端系統(tǒng)14表示已經(jīng)請(qǐng)求綁定業(yè)務(wù)。在狀態(tài)3,根據(jù)接收的P_ID和H_ID數(shù)值,頭端控制器130分別接入數(shù)據(jù)庫104和106中的存儲(chǔ)單元108和110,以便分別檢索POD模塊26與主設(shè)備24的秘密密鑰P和H。在檢索P和H以后,頭端控制器130計(jì)算SHA-1(NP)和SHA-1(NH),因?yàn)镻、H和N在頭端系統(tǒng)14中都是已知的。計(jì)算的SHA-1數(shù)值與接收的SHA-1數(shù)值進(jìn)行比較。如果兩個(gè)數(shù)值一致,則POD模塊26與主設(shè)備24被頭端系統(tǒng)14設(shè)備標(biāo)識(shí)為可信任的參預(yù)者。
在狀態(tài)3,頭端控制器130計(jì)算以下的數(shù)值,它們?cè)诮壎髦斜话l(fā)送回POD模塊26SHA-1[SHA-1(NH)P];SHA-1[SHA-1(NP)H];SHA-1(H‖N)+SHA-1(P);以及SHA-1(P‖N)SHA-1(H)。前兩項(xiàng)被使用于實(shí)體鑒權(quán),后兩項(xiàng)被使用于共享的密鑰導(dǎo)出。在狀態(tài)4,POD模塊26通過計(jì)算以下的散列函數(shù)來鑒權(quán)主設(shè)備24SHA-1[SHA-1(NH)P],由此,SHA-1(NH)從主設(shè)備24中被接收,以及P是POD模塊26的秘密密鑰。得出的數(shù)值與由頭端系統(tǒng)14發(fā)送的散列函數(shù)進(jìn)行比較。如果確定是一致的,則POD模塊26已鑒權(quán)主設(shè)備24。一旦被鑒權(quán),POD模塊26就導(dǎo)出密鑰kk=SHA-1(H‖N)SHA-1(P‖N).在以上的運(yùn)算中,項(xiàng)SHA-1(P‖N)是通過取來自頭端系統(tǒng)14的結(jié)果SHA-1(H‖N)SHA-1(P),以及執(zhí)行該結(jié)果與項(xiàng)SHA-1(P‖N)的異或運(yùn)算而被導(dǎo)出的。
依次地,POD模塊26把包括以下項(xiàng)的流轉(zhuǎn)發(fā)到主設(shè)備24SHA-1(NP),SHA-1[SHA-1(NP)H],SHA-1(P‖N)SHA-1(H)。
在狀態(tài)5,在從POD模塊26接收到綁定流后,主設(shè)備24計(jì)算以下項(xiàng)SHA-1[SHA-1(NP)H],由此,SHA-1(NP)從POD模塊26中被接收。
該結(jié)果與由POD模塊26轉(zhuǎn)發(fā)的同一散列函數(shù)(最初來自頭端系統(tǒng)14的)進(jìn)行比較。如果發(fā)現(xiàn)是一致的,則主設(shè)備24已鑒權(quán)POD模塊26,以及主設(shè)備24導(dǎo)出共享的密鑰kk=SHA-1(H‖N)SHA-1(P‖N).
在以上的運(yùn)算中,項(xiàng)SHA-1(P‖N)是通過執(zhí)行來自POD模塊26的以下的接收值SHA-1(P‖N)SHA-1(H)與散列函數(shù)SHA-1(H)的異或運(yùn)算而被導(dǎo)出的。異或運(yùn)算的結(jié)果是數(shù)值SHA-1(P‖N)。
一旦實(shí)體鑒權(quán)和共享的密鑰導(dǎo)出被POD模塊26與主設(shè)備24執(zhí)行,則最后的共享會(huì)話密鑰K就由每個(gè)設(shè)備通過取密鑰k對(duì)目標(biāo)加密密鑰尺寸的模而計(jì)算出K=k mod(加密密鑰尺寸)使用共享的會(huì)話密鑰K后,POD模塊26可加密在鏈路28上要被發(fā)送到主設(shè)備24的內(nèi)容。
這樣,在圖5的狀態(tài)6中,POD模塊26解密從頭端系統(tǒng)接收的、已通過使用條件接入?yún)f(xié)議被加密的數(shù)據(jù)流。然后POD模塊26通過使用會(huì)話密鑰按照對(duì)稱密碼加密原始內(nèi)容,以及在鏈路28上把加密的內(nèi)容轉(zhuǎn)發(fā)到主設(shè)備24。在狀態(tài)7,主設(shè)備24接收加密內(nèi)容,以及解密該內(nèi)容,導(dǎo)出該內(nèi)容的原始副本,供主設(shè)備24進(jìn)一步處理。
按照本實(shí)施例的隨機(jī)數(shù)發(fā)生器(RNG)220或222(在設(shè)備24或26中)可以利用SHA-1作為單向散列函數(shù)。在本實(shí)施例中,隨機(jī)數(shù)產(chǎn)生可以按照在Federal Information Processing Standards(FIPS)Publication(聯(lián)邦信息處理標(biāo)準(zhǔn)出版物)186,1994年5月19日(以及在fhttp//www.itl.nist.gov}可提供的)中描述的隨機(jī)數(shù)產(chǎn)生技術(shù)規(guī)范被實(shí)施執(zhí)行。加到RNG 220或222的輸入可以是160比特的RNG種子S(在POD模塊26中的SP和在主設(shè)備24中的SH)和一個(gè)b比特串c,其中160<b<512。RNG 220或222的輸出是被表示為G(s,c)的160比特串。
按照另一個(gè)實(shí)施例,在POD模塊26與主設(shè)備24之間的實(shí)體鑒權(quán)通過使用數(shù)字簽名算法被實(shí)施,以及會(huì)話密鑰按照Diffie-Hellman密鑰交換方案被導(dǎo)出。
參照?qǐng)D6,圖上顯示按照另一個(gè)實(shí)施例的鑒權(quán)和密鑰交換算法的狀態(tài)圖。在本實(shí)施例的主設(shè)備24中的授權(quán)域可包括{H_ID, (H_ID),H,H-1),其中H_ID是主設(shè)備24的ID, (H_ID)是由主設(shè)備24的專用密鑰H-1創(chuàng)建的H_ID的數(shù)字簽名,以及H是主設(shè)備24的公共密鑰。POD模塊26包括在它的授權(quán)域中的以下信息P_ID; (P_ID);P-1;P。
可被使用的數(shù)字簽名算法包括數(shù)字簽名標(biāo)準(zhǔn),正如由NationalInstitute of standards in Technology(NIST)(國(guó)家技術(shù)標(biāo)準(zhǔn)局)在它的Digital Signature Standard bulletin(數(shù)字簽名標(biāo)準(zhǔn)會(huì)刊)(1993年1月)中描述的。數(shù)字簽名標(biāo)準(zhǔn)(DSS)也被稱為聯(lián)邦信息處理標(biāo)準(zhǔn)(FIPT)186。DSS的變例是DSS的省略版本。另一個(gè)可被利用的數(shù)字簽名算法是Rivest-Shamir-Adleman(RSA)算法,正如由RSA DataSecurity Inc.在它們的網(wǎng)址{http//www.rsa.com/rsalabs}(1998年)中所描述的。
為了開始鑒權(quán)處理過程,主設(shè)備24在狀態(tài)1,把它的授權(quán)域的部分 發(fā)送到POD模塊26。接著,在狀態(tài)2,POD模塊26把它的授權(quán)域的部分 以及主設(shè)備24的授權(quán)信息發(fā)送到頭端系統(tǒng)14。在狀態(tài)3,頭端系統(tǒng)14把接收的授權(quán)域信息與被存儲(chǔ)在數(shù)據(jù)庫104和106中的數(shù)據(jù)進(jìn)行比較。P_ID被使用來檢索來自存儲(chǔ)單元108的信息,它存儲(chǔ)POD模塊26的公共密鑰P以及它的數(shù)字簽名 (P_ID)。同樣地,H_ID檢索來自數(shù)據(jù)庫106的存儲(chǔ)單元110的信息,它包括主設(shè)備24的公共密鑰H以及它的數(shù)字簽名 。這樣,在狀態(tài)3,頭端系統(tǒng)14根據(jù)對(duì)來自存儲(chǔ)單元108和110的檢索信息的比較,驗(yàn)證接收的授權(quán)域信息是來自授權(quán)設(shè)備的。
在狀態(tài)4,一旦頭端系統(tǒng)14驗(yàn)證設(shè)備26和24是有效的設(shè)備,頭端系統(tǒng)14就對(duì)主設(shè)備24的公共密鑰H使用對(duì)稱密碼方案來加密POD模塊26的公共密鑰P,以便導(dǎo)出EH[P]??赡艿膶?duì)稱密碼方案可以是數(shù)據(jù)塊密碼方案、數(shù)據(jù)流密碼方案和其它密碼方案。
然后頭端系統(tǒng)14把EH[P]發(fā)送回POD模塊26.在接收EH[P]后,POD模塊26就隱式地鑒權(quán)主設(shè)備24。為了允許主設(shè)備24鑒權(quán)POD模塊26,POD模塊26在狀態(tài)5,把以下的流 發(fā)送到主設(shè)備24。這允許主設(shè)備通過執(zhí)行運(yùn)算 而使用POD模塊的公共密鑰P來鑒權(quán)POD模塊26。P是由主設(shè)備24通過用主設(shè)備的密鑰H來解密EH[P]而被導(dǎo)出的。運(yùn)算VP[]是通過主設(shè)備24中的驗(yàn)證機(jī)按照數(shù)字簽名算法執(zhí)行的。
在狀態(tài)1-5中,完成實(shí)體鑒權(quán)以后,開始創(chuàng)建會(huì)話密鑰。在狀態(tài)7,POD模塊26與主設(shè)備24的每個(gè)分別產(chǎn)生它們各自的隨機(jī)數(shù)x和y,以及計(jì)算Gxmod N和Gymod N,其中N是公共模數(shù),以及G是公共的發(fā)生器.主設(shè)備24把Gymod N發(fā)送到POD模塊26,同樣地,POD模塊26把Gxmod N發(fā)送到主設(shè)備24.在狀態(tài)8,POD模塊26計(jì)算共享的會(huì)話密鑰kk=(Gymod N)xmod N=Gyxmod N。在狀態(tài)8,主設(shè)備24取從POD模塊26接收的數(shù)值,以及計(jì)算共享的密鑰kk=(Gxmod N)ymod N=Gyxmod N。共享的會(huì)話密鑰k由POD模塊26與主設(shè)備24用來保護(hù)在鏈路28上的通信。在POD模塊26按照有效負(fù)載的密碼算法(例如,條件接入算法)解密從頭端系統(tǒng)接收的數(shù)據(jù)以后,POD模塊26使用會(huì)話密鑰k來加密內(nèi)容,以及把加密的內(nèi)容轉(zhuǎn)發(fā)到主設(shè)備24,后者使用它的會(huì)話密鑰k的副本來解密加密內(nèi)容。
參照?qǐng)D7,為了進(jìn)一步增強(qiáng)保密,除了結(jié)合圖6描述的那些以外,可以實(shí)施幾個(gè)附加運(yùn)算。具體地,保密等級(jí)更新可以通過修改圖6上的狀態(tài)4和7而達(dá)到。
在圖7上,更新的保密方案包括除了狀態(tài)4和7以外、與圖6的那些運(yùn)算相同的運(yùn)算。在圖7的狀態(tài)4*中,在從POD模塊26與主設(shè)備24接收授權(quán)域信息以后,頭端系統(tǒng)14產(chǎn)生兩個(gè)加密的公共密鑰EH[P]和EP[H]。然后加密的公共密鑰被發(fā)送回POD模塊26,后者從EP[H]中提取主設(shè)備的公共密鑰H。當(dāng)流 由POD模塊26發(fā)送到主設(shè)備24時(shí),主設(shè)備24可從EH[P]中提取POD模塊26的公共密鑰P。由于設(shè)備24和26的公共密鑰和專用密鑰都被很好地保護(hù),中間人的攻擊在公共密鑰經(jīng)保密信道互相傳遞期間不大可能破譯系統(tǒng)。
通過把圖6的狀態(tài)7分割為三個(gè)狀態(tài)7a,7b和7c而修改狀態(tài)7。在本實(shí)施例中,POD模塊26與主設(shè)備24產(chǎn)生隨機(jī)化的口令xn和yn,以及隨機(jī)整數(shù)x和y,它們被使用來導(dǎo)出在設(shè)備26和24之間的共享的會(huì)話密鑰。此外,在狀態(tài)7a,POD模塊26與主設(shè)備24分別計(jì)算GxmodN和Gymod N。隨機(jī)數(shù)xn和yn在POD模塊26與主設(shè)備24之間交換。在狀態(tài)7b,POD模塊26通過使用POD模塊的專用密鑰P (yn||Gxmod N)計(jì)算第一相位Diffie-Hellman變量,而在來自主設(shè)備24的接收的口令yn上產(chǎn)生它的數(shù)字簽名。類似地,在狀態(tài)7b,主設(shè)備24產(chǎn)生 (xn||Gymod N)。各自的數(shù)字簽名連同Gxmod N和Gymod N一起在POD模塊26與主設(shè)備24之間交換。在狀態(tài)7c中接收后,POD模塊26與主設(shè)備24都驗(yàn)證簽名并提取第一相位Diffie-Hellman變量。成功的驗(yàn)證導(dǎo)致POD模塊26與主設(shè)備24互相鑒權(quán)。接著,在狀態(tài)8,共享的會(huì)話密鑰k像圖6的實(shí)施例那樣被導(dǎo)出。
本發(fā)明的某些實(shí)施例可以具有一個(gè)或多個(gè)以下的優(yōu)點(diǎn)。脆弱性被局部化,以使得一個(gè)設(shè)備的泄密不會(huì)造成系統(tǒng)范圍的泄密。為了達(dá)到這個(gè)目標(biāo),按照某些實(shí)施例,使用和選擇局部加密變量,以使得在泄密事件下不威脅整個(gè)系統(tǒng)。此外,按照某些實(shí)施例的系統(tǒng)可以抵制消費(fèi)者級(jí)別的攻擊,這包括安裝繞過設(shè)備或接口產(chǎn)品。主設(shè)備24外面的電纜或設(shè)備的連接不會(huì)導(dǎo)致在主設(shè)備24中實(shí)施的副本保護(hù)方案的泄密。
按照某些實(shí)施例的系統(tǒng)的另一個(gè)特征是,條件接入系統(tǒng)(在本例中,包括主設(shè)備24與POD模塊26)可限制POD模塊與哪個(gè)主設(shè)備通信。條件接入系統(tǒng)能夠標(biāo)識(shí)和禁用可疑的主設(shè)備,這在某些實(shí)施例中是通過只要POD模塊26與主設(shè)備24已由頭端系統(tǒng)14基于由可信任的第三方提供的、在一個(gè)或多個(gè)存儲(chǔ)的數(shù)據(jù)庫中的數(shù)值的比較被驗(yàn)證,就從頭端系統(tǒng)14發(fā)送綁定消息而完成的。
實(shí)體鑒權(quán)和會(huì)話密鑰導(dǎo)出處理過程可以獨(dú)立于有效負(fù)載加密算法,諸如條件接入算法,而被執(zhí)行。鑒權(quán)和會(huì)話密鑰導(dǎo)出處理過程,以在主設(shè)備24與POD模塊26上可執(zhí)行的軟件相當(dāng)簡(jiǎn)單地實(shí)施,減少與硬件牽連的情況。在其它實(shí)施例中,鑒權(quán)密鑰導(dǎo)出處理過程可以以硬件實(shí)施。在按照某些實(shí)施例的CA-CP系統(tǒng)中,頭端系統(tǒng)14在系統(tǒng)破譯的情況下,能夠撤銷接入到主設(shè)備的授權(quán)。副本保護(hù)方案保護(hù)在POD模塊與主設(shè)備之間和在POD模塊與頭端系統(tǒng)之間的被暴露的總線。
各種軟件或固件(例如,由模塊、例行程序或其它層組成),包括應(yīng)用程序和例行程序,可被存儲(chǔ)在或被明確包含在信息傳輸系統(tǒng)中一個(gè)或多個(gè)機(jī)器可讀出的存儲(chǔ)介質(zhì)中。適合于有形地實(shí)施軟件和固件指令的存儲(chǔ)介質(zhì)可包括不同形式的存儲(chǔ)器,包括半導(dǎo)體存儲(chǔ)器器件,諸如動(dòng)態(tài)或靜態(tài)隨機(jī)存取存儲(chǔ)器、可擦除和可編程只讀存儲(chǔ)器(EPROM)、電可擦除和可編程只讀存儲(chǔ)器(EEPROM)和快速存儲(chǔ)器;磁盤,諸如硬盤、軟盤和可換磁盤;其它磁介質(zhì),包括磁帶;以及光介質(zhì),諸如CD或DVD盤。被存儲(chǔ)在一個(gè)或多個(gè)存儲(chǔ)介質(zhì)中的指令在被執(zhí)行時(shí)會(huì)使得信息傳輸系統(tǒng)執(zhí)行編程的行為。
軟件或固件可以以許多不同的方式之一被裝載到信息傳輸系統(tǒng)。例如,被存儲(chǔ)在一個(gè)或多個(gè)存儲(chǔ)介質(zhì)上,或通過網(wǎng)絡(luò)接口卡、調(diào)制解調(diào)器、或其它接口機(jī)制輸送的指令或其它代碼段,可被裝載到信息傳輸系統(tǒng)以及被執(zhí)行,以便完成編程的行為。在裝載或輸送處理過程中,被實(shí)現(xiàn)為載波的數(shù)據(jù)信號(hào)(通過電話線、網(wǎng)絡(luò)線路、無線鏈路、電纜等傳輸)可以傳送指令或代碼段到信息傳輸系統(tǒng)。
雖然結(jié)合有限數(shù)目的實(shí)施例揭示了本發(fā)明,但本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解可由此作出許多修改方案和變例。本發(fā)明的附屬權(quán)利要求覆蓋了本發(fā)明的精神和范圍內(nèi)的所有修改方案和變例。
權(quán)利要求
1.一種鑒權(quán)第一和第二設(shè)備的方法,包括在第三設(shè)備中,接收第一和第二設(shè)備的標(biāo)識(shí)符;在第三設(shè)備中,根據(jù)標(biāo)識(shí)符檢索信息;根據(jù)檢索的信息,從第三設(shè)備發(fā)送一個(gè)消息;以及在第一和第二設(shè)備中,根據(jù)該消息來驗(yàn)證第一和第二設(shè)備中另一個(gè)設(shè)備的標(biāo)識(shí)符。
2.權(quán)利要求1的方法,其中發(fā)送包括發(fā)送一個(gè)包括第一和第二設(shè)備的公共密鑰的消息。
3.權(quán)利要求2的方法,其中發(fā)送包括發(fā)送一個(gè)包括第一和第二設(shè)備的公共密鑰的倒數(shù)的消息。
4.權(quán)利要求1的方法,其中驗(yàn)證包括使用公共密鑰加密協(xié)議來執(zhí)行鑒權(quán)。
5.權(quán)利要求4的方法,其中驗(yàn)證包括使用公共密鑰加密協(xié)議的離散對(duì)數(shù)型式來執(zhí)行鑒權(quán)。
6.權(quán)利要求5的方法,其中驗(yàn)證包括使用ElGamal加密協(xié)議來執(zhí)行鑒權(quán)。
7.權(quán)利要求1的方法,還包括在第一和第二設(shè)備中產(chǎn)生隨機(jī)數(shù),其中驗(yàn)證包括使用在第一和第二設(shè)備的每一個(gè)中的隨機(jī)數(shù)。
8.一種在第一和第二設(shè)備之間保密地傳送內(nèi)容的方法,包括把第一和第二設(shè)備的標(biāo)識(shí)信息發(fā)送到第三設(shè)備;在第三設(shè)備中,根據(jù)標(biāo)識(shí)信息產(chǎn)生預(yù)定的消息;以及使用該預(yù)定的消息來鑒權(quán)該第一和第二設(shè)備。
9.一種與第一系統(tǒng)通信的設(shè)備,包括包括第一模塊和耦合到該第一模塊的第二模塊的接收機(jī),第一和第二模塊適合于發(fā)送標(biāo)識(shí)信息到第一系統(tǒng),以及根據(jù)由第一系統(tǒng)響應(yīng)于該標(biāo)識(shí)信息而產(chǎn)生和發(fā)送的預(yù)定信息互相鑒權(quán)。
10.權(quán)利要求8的設(shè)備,其中第一和第二模塊適合于通過使用公共密鑰協(xié)議來互相鑒權(quán)。
11.權(quán)利要求9的設(shè)備,其中公共密鑰協(xié)議包括ElGamal協(xié)議。
12.權(quán)利要求9的設(shè)備,其中接收機(jī)適合于接收由第一保密協(xié)議保護(hù)的、來自第一系統(tǒng)的內(nèi)容。
13.權(quán)利要求12的設(shè)備,其中第一和第二模塊適合于按照包括公共密鑰協(xié)議的離散對(duì)數(shù)型式的第二保密協(xié)議執(zhí)行鑒權(quán)。
14.一種系統(tǒng),包括適合于按照第一保密協(xié)議傳送內(nèi)容的條件接入系統(tǒng);用以傳送內(nèi)容的傳輸媒體;以及被耦合到傳輸媒體的接收機(jī),包括通過通信信道耦合的第一單元和第二單元,該第一和第二單元適合于提供第二保密協(xié)議以保護(hù)在第一和第二單元之間傳輸?shù)男畔ⅲ灰约霸摋l件接入系統(tǒng)適合于產(chǎn)生預(yù)定的消息,以及該第一和第二單元適合于根據(jù)預(yù)定的消息來互相鑒權(quán)。
15.權(quán)利要求14的系統(tǒng),其中接收機(jī)包括內(nèi)容保護(hù)系統(tǒng)。
16.權(quán)利要求15的系統(tǒng),其中條件接入系統(tǒng)包括傳輸頭端和接收機(jī)的第一單元。
17.權(quán)利要求14的系統(tǒng),其中第一和第二單元適合于根據(jù)預(yù)定的消息產(chǎn)生會(huì)話密鑰,以保護(hù)在通信信道上傳輸?shù)男畔ⅰ?br>
18.權(quán)利要求14的系統(tǒng),其中條件接入系統(tǒng)包括傳輸頭端,它適合于加密視頻內(nèi)容,以便通過傳輸媒體發(fā)送。
19.權(quán)利要求14的系統(tǒng),其中第一和第二單元適合于按照公共密鑰加密協(xié)議的離散對(duì)數(shù)型式來互相鑒權(quán)。
20.一種包括一個(gè)或多個(gè)機(jī)器可讀存儲(chǔ)介質(zhì)的產(chǎn)品,其中包含保護(hù)系統(tǒng)中第一和第二設(shè)備之間通信的指令,當(dāng)該指令被執(zhí)行時(shí)會(huì)使得系統(tǒng)把第一和第二設(shè)備的標(biāo)識(shí)符發(fā)送到外部系統(tǒng);從外部系統(tǒng)接收基于標(biāo)識(shí)符的預(yù)定的消息;以及根據(jù)該預(yù)定的消息來鑒權(quán)第一和第二設(shè)備。
全文摘要
一種在第一設(shè)備(24)和第二設(shè)備(26)之間保密地傳送內(nèi)容的方法和設(shè)備,包括把第一和第二設(shè)備的標(biāo)識(shí)信息發(fā)送到第三設(shè)備(14)。該第三設(shè)備(14)根據(jù)該標(biāo)識(shí)信息產(chǎn)生預(yù)定的消息。使用該預(yù)定的消息對(duì)第一和第二設(shè)備(24,26)進(jìn)行鑒權(quán)。
文檔編號(hào)H04N7/16GK1341310SQ00804314
公開日2002年3月20日 申請(qǐng)日期2000年1月12日 優(yōu)先權(quán)日1999年2月26日
發(fā)明者R·J·塔卡哈施, M·張 申請(qǐng)人:英特爾公司