專利名稱:接入控制處理器的制作方法
本申請是2000年5月26日提交的第09/580,303號美國專利申請的部分繼續(xù)申請。
背景技術:
本發(fā)明一般涉及安全接入系統(tǒng),尤其涉及在與條件接入系統(tǒng)相關聯(lián)的內容接收機中的安全信息。
有線電視(TV)提供器借助條件接入(CA)系統(tǒng)把視頻流分發(fā)給用戶。CA系統(tǒng)從有線電視提供器的頭端(headend)把視頻流分發(fā)給與用戶相關聯(lián)的機頂盒。頭端包括接收視頻流并把它們分發(fā)到CA系統(tǒng)中的機頂盒的硬件。根據(jù)有線電視提供器發(fā)送到機頂盒的授權信息,允許選擇機頂盒對某些視頻流進行解碼。以相似的方法,其它視頻節(jié)目提供器使用衛(wèi)星拋物面天線把視頻內容無線地分發(fā)到機頂盒。
向所有機頂盒廣播視頻節(jié)目,但是只給予這些機頂盒的子設備接入特定的視頻節(jié)目。例如,即使每個機頂盒可以接收拳擊比賽的加密數(shù)據(jù)流,但是只允許已經預訂付費觀看的那些機頂盒用戶觀看拳擊比賽。一旦用戶預訂按觀看付費節(jié)目,就以加密的形式把授權消息廣播到所有機頂盒。只有授權消息指定的特定機頂盒可以對加密的授權消息進行解密。在加密的授權消息中有一個密鑰,該密鑰將對每個按觀看付費節(jié)目進行解密。當機頂盒實時接收按觀看付費節(jié)目時,機頂盒用該密鑰對它進行解密。某些系統(tǒng)用標志表示授權消息。
只有在最近,具有多個小時的存儲量的視頻才變成現(xiàn)實。把每個視頻節(jié)目作為壓縮的MPEG2數(shù)據(jù)流發(fā)送到機頂盒。一個小時的視頻相當于約1千兆字節(jié)的壓縮數(shù)據(jù)。由于當今多個千兆的存儲量是很普通的,所以現(xiàn)在可以存儲多個小時的視頻。對比之下,傳統(tǒng)CA系統(tǒng)設想內容是短暫的,而且不能存儲。換言之,傳統(tǒng)系統(tǒng)的設計是假設視頻節(jié)目太大以致用任何時間周期都無法保存。熟悉本技術領域的人員會理解,存儲多個千兆視頻節(jié)目的能力引起對于在CA系統(tǒng)中的另外的安全措施的需求。
某些系統(tǒng)使個人計算機與電視機結合以顯示內容。諸如WebTVTM之類的產品把網(wǎng)(web)瀏覽和電子郵件特征與電視機結合。在其它系統(tǒng)中,把個人計算機(PC)連接到互聯(lián)網(wǎng)服務提供器(ISP),所述互聯(lián)網(wǎng)服務提供器提供網(wǎng)瀏覽和電子郵件特征的內容。諸如電子郵件程序之類的軟件程序趨向于小型化和便于存儲。熟悉本技術領域的人員會理解,這些PC機不提供合適的安全性,致使它們容易受到病毒和黑客的影響。
如上所述,傳統(tǒng)CA系統(tǒng)只檢查視頻流的授權。隨著較大存儲量和較小的互聯(lián)網(wǎng)有關程序的出現(xiàn),可以使內容無限期地存儲和駐留在用戶處。需要另外的安全措施來保持對這個內容的控制。
附圖簡述以下結合所附的圖描述本發(fā)明
圖1是方框圖,示出內容傳遞系統(tǒng)的一個實施例;圖2是示出機頂盒的一個實施例的方框圖,所述機頂盒連接到它的環(huán)境;圖3是示出一個過程的實施例的流程圖,用于按第一安全等級分發(fā)目標;圖4是示出一個過程的實施例的流程圖,用于按第二安全等級分發(fā)目標;圖5是方框圖,描繪許可消息的一個實施例;圖6是方框圖,示出軟件消息的一個實施例;圖7是方框圖,示出簽名組的一個實施例,所述簽名組包括許可消息和軟件消息的一部分;圖8是方框圖,示出“權利”消息的一個實施例;圖9是方框圖,示出在功能單元之間的交互的實施例;圖10是描繪一個過程的實施例的流程圖,用于按第三安全等級裝載目標;圖11是示出一個過程的實施例的流程圖,用于按第四安全等級裝載目標;圖12是描繪一個過程的另一個實施例的流程圖,用于按第四安全等級裝載目標;圖13是示出一個過程的實施例的流程圖,用于按第五安全等級檢查連續(xù)運行的目標;圖14A是示出一個過程的實施例的流程圖,用于按第六安全等級免費預檢目標;圖14B是示出一個過程的另一個實施例的流程圖,用于按第六安全等級免費預檢目標;圖15A是示出一個過程的實施例的流程圖,用于按安全等級7監(jiān)測返回到頭端的報告;
圖15B是示出一個過程的實施例的流程圖,用于按安全等級7監(jiān)測安全檢查;圖15C是示出一個過程的另一個實施例的流程圖,用于按安全等級7監(jiān)測安全檢查;圖16A是一個過程的實施例的流程圖,用于按第八安全等級產生部分加密的目標;圖16B是描繪一個過程的實施例的流程圖,用于使用執(zhí)行標志來實現(xiàn)第八安全等級;圖16C是描繪一個過程的實施例的流程圖,用于使用部分下載來實現(xiàn)第八安全等級;圖17是方框圖,示出在機頂盒中的不同目標之間的關系。
特定實施例的描述以后的描述只提供較佳示例實施例,但不想用以限制本發(fā)明的范圍、應用或配置。相反,以下描述的較佳示例實施例將向熟悉本技術領域的人員提供實施本發(fā)明的較佳示例實施例的一個說明??梢岳斫?,可以對功能和元件配置進行各種變化而不偏離所附權利要求書所限定的本發(fā)明的精神和范圍。
本發(fā)明確認在電視(TV)機頂盒中正確地執(zhí)行安全措施。在正常操作期間,在機頂盒中的各種功能上執(zhí)行安全檢查。向頭端報告這些安全檢查的結果。屏蔽(shadow)過程獨立地驗證對安全檢查的執(zhí)行和報告。
在圖中,相似的組成部分和/或特征可以用相同的標號。此外,通過在標號后面跟隨一個破折號和區(qū)分相似組成部分的第二標號可以區(qū)分相同類型的各種組成部分。如果在說明中只使用第一標號,則描述可應用于具有相同第一標號的任何一個相似的組成部分而不管第二標號。
首先參考圖1,圖中示出內容傳遞系統(tǒng)100的一個實施例的方框圖。傳遞系統(tǒng)100根據(jù)所滿足的某些條件把內容選擇地提供給許多用戶。在系統(tǒng)100中包括頭端104、許多機頂盒108、本地編程接收機112、衛(wèi)星拋物面天線116以及互聯(lián)網(wǎng)120。
頭端104接收內容并把該內容分發(fā)給用戶。內容可以包括視頻、音頻、交互視頻、軟件、固件和/或數(shù)據(jù)。從多種源接收這個內容,所述源可以包括衛(wèi)星拋物面天線116、本地編程接收機112、微波接收機、分組交換網(wǎng)、互聯(lián)網(wǎng)120等。每個機頂盒108具有唯一的地址,所述唯一的地址允許把授權信息發(fā)送到各個機頂盒108。如此,一個機頂盒108-1可能有權利擁有某個特定的內容,而另一個108-2可能無權擁有。在頭端104內調節(jié)機頂盒108的子設備的設備有權利處理某些特定內容。
一般通過包含多個內容流的模擬載波信道以數(shù)字形式分發(fā)內容。使所有內容流一起多路復用到根據(jù)模擬載波信道調制的一個數(shù)字流中。通過分組識別(PID)信息跟蹤各單獨的內容流,致使可以根據(jù)各個內容流的唯一的PID信息取出個別內容流。在系統(tǒng)100的實施例中約有一百二十個模擬載波信道。其它實施例可以用傳遞機構分發(fā)內容,所述傳遞機構包括衛(wèi)星拋物面天線、微波天線、RF發(fā)射機、分組交換網(wǎng)、蜂窩數(shù)據(jù)調制解調器、載波電流、電話線路和/或互聯(lián)網(wǎng)。
接著參考圖2,圖中示出顯示系統(tǒng)200的實施例的方框圖。這個實施例通過多種安全機構提供目標和資源安全的多個等級。在顯示系統(tǒng)200中包括機頂盒108、網(wǎng)絡208、打印機212、電視(TV)顯示器216以及無線輸入裝置218。使這些項目如此地結合,致使用戶能夠欣賞通過內容提供器傳統(tǒng)地分發(fā)的內容。內容可以包括視頻、音頻、軟件、固件、交互電視、數(shù)據(jù)、文本和/或其它信息。在本實施例中,內容提供器是有線電視提供器或多個系統(tǒng)操作器(MSO)。
網(wǎng)絡208用作機頂盒108和有線電視提供器的頭端104之間傳送信息的輸送管道。在本實施例中,網(wǎng)絡208具有一百二十個模擬信道和雙向控制數(shù)據(jù)信道。一般,模擬信道攜帶內容而控制數(shù)據(jù)信道攜帶控制和授權信息。每個模擬載波信道具有多路復用到一個數(shù)據(jù)流的許多數(shù)字信道,其中,通過分組識別符(PID)來區(qū)分各數(shù)字信道。雙向控制信道是帶外信道,它用一個頻率向機頂盒108廣播數(shù)據(jù),而用另一個頻率從機頂盒108接收數(shù)據(jù)。使用本技術領域中眾知的存儲-和-傳遞方法,可以使返回數(shù)據(jù)排隊,以降低高峰使用期間的過載。其它實施例可以使用有線調制解調器、數(shù)字用戶線路(DSL)、蜂窩數(shù)據(jù)、衛(wèi)星鏈路、微波鏈路、載波電流輸送、或用于控制信息和內容兩者的其它網(wǎng)絡連接,其中,使內容格式化為分組交換數(shù)據(jù)。
打印機212是任選的附件,某些用戶可以購買并添加到他們的顯示系統(tǒng)200上。當為個人計算機任務使用機頂盒108時,打印機212允許打印諸如電子郵件、網(wǎng)頁、單據(jù)信息等數(shù)據(jù)。如將在下面進一步說明,通過許可檢查來調整使用諸如打印機之類的外圍設備的能力。使用這個調整特征,與機頂盒108兼容的打印機212不工作,除非得到正確的許可為該機頂盒108啟動打印機212。
電視顯示器216向用戶顯示相應于內容的音頻、文本和/或視頻。顯示器216一般接收調制在載波上的模擬視頻信號,所述載波相應于信道3、信道4或組合信道。例如,機頂盒108產生調制到合適信道上的NTSC信號。其它實施例可以使用視頻監(jiān)視器或數(shù)字顯示器來代替電視顯示器216。使用數(shù)字顯示器將減輕對于通過機頂盒108的模擬轉換的需求,因為諸如液晶顯示器之類的數(shù)字顯示器使用數(shù)字信息來形成所顯示的圖像。
無線輸入裝置218允許在用戶和機頂盒108之間的交互。裝置218可以是遠程控制器、鼠標、鍵盤、游戲控制器、光筆輸入板或其它輸入機構。在輸入裝置218上的紅外收發(fā)器與在機頂盒108上的相似收發(fā)器進行通信,以允許無線通信。在其它實施例中,可以使用RF鏈路或有線鏈路來代替紅外收發(fā)器。
機頂盒108具有執(zhí)行目標和資源的鑒別和許可的組成部分。目標是諸如軟件、驅動器、固件、數(shù)據(jù)、視頻或音頻之類的數(shù)字信息的任何收集。軟件可以包括軟件程序和/或一個軟件動態(tài)鏈路庫或許多軟件動態(tài)鏈路庫。資源是目標按指定進行操作所需要的任何東西,諸如另外的目標或物理裝置。在機頂盒108中包括控制器220、存儲器228、打印機端口232、網(wǎng)絡端口236、接入控制處理器240、顯示接口244以及紅外(IR)端口248。這些塊經過總線230相互通信,在總線上,每個塊具有不同的地址,以在總線230上唯一地識別它。一般,機頂盒108是一個獨立的裝置,但是也可以和電視顯示器216、計算機、信息設備或個人視頻記錄器(PVR)結合在一起。
控制器220使用可信或安全操作系統(tǒng)管理機頂盒108的操作。在控制器220中執(zhí)行諸如數(shù)字目標解密和解除壓縮之類的功能,以及諸如交換用戶的電視信道和向用戶顯示菜單之類的功能。在控制器220中包括處理器、加密引擎、本地存儲器以及在計算機系統(tǒng)中通用的其它項目。
在其它實施例中,為了密鑰保護或密碼處理的目的,控制器220還可以包含附加的安全微處理器。這在要求高度安全的某些系統(tǒng)中可能是合適的。
機頂盒108包括存儲器228的塊。存儲器228是固態(tài)存儲器,它可以包括RAM、ROM、閃存以及其它類型的易失性和非-易失性存儲器。把目標和資源存儲在存儲器中,用于在較晚時間運行。在執(zhí)行期間,把程序裝載到存儲器228中,并在存儲器228中執(zhí)行,而且還使用存儲器228,用于中間結果暫存器空間??梢园衙荑€、序列號和許可存儲在非-易失性閃爍存儲器中。
本實施例包括打印機端口232,用于連接到任選的打印機212。除非許可,程序不可得到打印機端口232的資源。如下進一步說明,每個目標必須具有使用諸如打印機端口232之類的資源的許可。借助有線或無線傳送機構,以串行或并行的格式,把數(shù)據(jù)從打印機端口232發(fā)送到打印機212。
通常規(guī)定,檢查點是確認功能單元的鑒別和/或許可狀態(tài)的時間上的一個點或處理的步驟。當請求打印時碰到一個檢查點。檢查點對請求打印的目標進行許可和鑒別。當在另一個目標上運行鑒別和/或許可(例如,操作系統(tǒng)檢查正在運行的應用程序的鑒別和許可)時,把檢查點放置在一個目標中。理想地,當目標的目的變得顯露時執(zhí)行檢查點。在打印機端口232的情況下,當使用它打印一些東西時,它的目的變得顯露。相應地,當打印任何東西時,觸發(fā)一個檢查點來檢查使用打印機端口232資源的目標。一般,用于打印的檢查點是在操作系統(tǒng)中的。
其它類型的目標將具有相應于一個檢查點的其它目的,以致當目的變得顯露時需要鑒別和/或許可。例如,可以把一個目標存儲在長期存儲器中。從長期存儲器讀出目標將觸發(fā)一個檢查點。當把目標裝載到短期固態(tài)存儲器中時,碰到其它檢查點。當把目標從長期存儲器移動到短期存儲器中時,可以計算新的簽名。任何時候當從短期讀出目標,并通過控制器220處理時,可能碰到另一個檢查點。此外,如果把目標顯示在屏幕上或通過揚聲器再現(xiàn),則可能碰到另一個檢查點。各個實施例可能具有一個或多個這種檢查,所述檢查是機頂盒200在處理的不同階段執(zhí)行的。
網(wǎng)絡端口236允許機頂盒108和頭端104之間的雙向通信。在網(wǎng)絡端口236中包括調諧器和解調器,用于調諧到模擬載波信道和解調MPEG數(shù)據(jù)流以允許內容的-路傳遞。在網(wǎng)絡端口236中還包括控制數(shù)據(jù)收發(fā)機或有線調制解調器,它允許控制數(shù)據(jù)信息和/或內容的雙向通信??梢允褂么鎯蛡鬟f方法,以把控制數(shù)據(jù)路徑的裝載更均勻地分發(fā)到頭端104。
通過顯示接口244執(zhí)行調制,把數(shù)字視頻信號調制到與電視顯示器216兼容的模擬信號上。如上所述,電視顯示器216一般接收調制在信道3、信道4或組合信道上的信號。對于諸如LCD顯示器之類接收數(shù)字輸入的顯示器,顯示接口244執(zhí)行數(shù)字輸入所需要的任何格式。
紅外端口248與無線輸入裝置218進行雙向通信。在紅外端口248中包括紅外收發(fā)器,它把無線通信路徑提供給輸入裝置218。在紅外端口248中的其它電子線路把通過收發(fā)器接收的模擬信號轉換成相應的數(shù)字信號,并把相應的數(shù)字信號轉換成發(fā)送到收發(fā)器的模擬信號??刂破?20處理數(shù)字信號,以致用戶可以控制在機頂盒108中的某些功能。
接入控制處理器(ACP)240調整在機頂盒108中的安全功能。例如,ACP 240在控制器220的引導下,或獨立于控制器220而執(zhí)行鑒別和許可,這將在下面的討論中變得清楚。ACP 240包括處理器、RAM和ROM以執(zhí)行它的任務,所述處理器、RAM和ROM結合在一起以執(zhí)行獨立于控制器220的軟件。ACP 240還包括解密引擎和散列函數(shù)(hash function),用于對內容解密和計算簽名。把檢查點嵌入軟件運行中,所述軟件運行觸發(fā)ACP 240以執(zhí)行安全檢查。在本實施例中,在硬件中實施ACP 240,但是其它實施例可以在軟件中執(zhí)行ACP 240的功能。
ACP 240還可以屏蔽操作系統(tǒng)(OS)以保證操作系統(tǒng)的正確功能。通過監(jiān)視目標的發(fā)送(launch),ACP 240可以監(jiān)測哪個應用程序目標正在運行。如果需要,如果檢查點檢測到差錯或如果許可已期滿,則ACP 240可以切斷或停止運行應用程序的執(zhí)行。此外,ACP 240可以監(jiān)測存儲器228,以檢測在存儲器228中有任何未許可的應用程序。還應該監(jiān)測中間結果暫存器的大小,以檢測隱藏在暫存器中的應用程序。此外,ACP 240可以隨機地執(zhí)行在存儲器228中的目標上的檢查點,以確認它們的許可和/或可靠性。把ACP 240碰到的問題向操作系統(tǒng)或頭端104報告。用這些方法,ACP 240在機頂盒108中的作用是作為軟件安全保護泥塞(bot),以致檢測和報告異常的性能。
接著參考圖3,圖中示出一個過程的實施例的流程圖,用于按第一安全等級分發(fā)目標。在步驟304中開始該過程,其中在頭端104中制定授權消息。在授權消息中包括可以對相關聯(lián)的目標進行解密的密鑰。在步驟308中,經過網(wǎng)絡208把授權消息和目標發(fā)送到機頂盒108。在接收授權消息和目標之后,在步驟316中使它們相關在一起。在步驟320、324和328中,從授權消息獲取密鑰,并在把目標寫入存儲器228之前使用密鑰對目標進行解密。通過使用加密,這個過程提供目標的鑒別和許可兩者。
在某些實施例中,在把機頂盒108運送給用戶之前,在受控制的環(huán)境中把密鑰裝載到機頂盒108中。例如,在工廠中裝配期間,把對稱和不對稱密鑰裝載到機頂盒108中。在每個機頂盒108中可能存儲唯一的密鑰或共用的密鑰(global keys),以允許經過加密信道保護內容的多點傳輸或單點傳輸(singlecast)。可以使用這個信道以在以后添加、刪除和改變密鑰。通過使用密鑰,多個系統(tǒng)操作員(MSO)可以控制接入到內容而無需與用戶進行交互。
接著參考圖4,圖中示出一個過程的實施例的流程圖,用于按第二安全等級分發(fā)目標。在第二等級的安全中,使用簽名來鑒別下載的目標。換言之,當下載時,第二等級的安全把檢查點施加在目標上。在簽名組上產生簽名,所述簽名組包括在步驟404中的頭端104中的部分許可消息和目標信息。許可消息是與目標消息有關的元數(shù)據(jù),而目標消息包含打算供機頂盒108用的目標。
在步驟408中,經過網(wǎng)絡208分別把在許可消息和目標中的簽名發(fā)送到機頂盒108。最好使用不對稱簽名(例如,基于RSA、DSA或ECC的),但是也可以使用對稱簽名(例如,DES或三重-DES)。在接收到簽名和目標,并在存儲目標之前,在步驟420和424中通過ACP 240計算和檢查簽名。如果計算的簽名和接收的簽名匹配,則在步驟428中存儲目標。另一方面,如果不匹配,則在步驟432中丟棄目標,處理環(huán)路返回步驟412,以等待另一個目標的拷貝。
參考圖5-7,以方框圖形式分別示出許可消息500、軟件消息600和簽名組700。在圖5的許可消息500中包括許可標頭504、許可數(shù)據(jù)結構508、簽名512以及第一檢查和516。許可消息500具有用于鑒別和許可軟件消息600的信息。目標標頭604、軟件目標608和第二檢查和612形成圖6的軟件消息。軟件消息600的作用是作為軟件目標608的傳送器。簽名組700包括安排成終端對終端的許可消息500和軟件消息600的組成部分。尤其,圖7的簽名組700包括許可標頭504、許可數(shù)據(jù)結構508、目標標頭604、以及軟件目標608。在整個簽名組700上計算簽名512。
許可標頭504表示許可消息500的組成。在許可標頭504中包括子類型識別符和消息版本。子類型識別符使各種類型的許可消息500相互區(qū)分。在本實施例中,存在相應于軟件目標和資源的許可消息子類型。軟件目標子類型具有相應的軟件消息600,但是資源子類型沒有。相應地,使用子類型識別符來確定是否存在與許可消息500相關聯(lián)的軟件消息600。對于給定的系統(tǒng),可能有數(shù)種類型的軟件目標子類型和資源子類型,而消息版本允許區(qū)分各種類型。
許可數(shù)據(jù)結構508提供到機頂盒108的功能單元的要求。功能單元是軟件目標或資源。在相應于軟件目標的許可消息子類型的情況下,許可數(shù)據(jù)結構508包含目標或功能單元識別符、軟件版本、成本信息、權利信息、壽命信息以及一個或多個程序層(program tier)。目標識別符對于每個軟件目標608是唯一的,并允許把許可消息500賦予它相應的軟件消息600。版本信息包括在數(shù)據(jù)結構508中,以表示軟件目標608的版本。
使用部分許可數(shù)據(jù)結構508來確定到機頂盒108的軟件目標608的可用性。成本信息向機頂盒108表示,并且有時向用戶表示,與軟件目標608相關聯(lián)的價格。使用授權信息來確定是否許可特定機頂盒108接收軟件目標608。如果用對稱密鑰對軟件目標608進行加密,則授權信息可以包括密鑰。如果不許可機頂盒108接收軟件目標608,則當接收時不需要處理相應的軟件目標608。壽命信息允許定出軟件目標608的終止期限,以防止在某個日期或時間之后使用。使用程序層把軟件目標608的許可限制到預定的層,致使機頂盒108只能訪問在預定層中的軟件目標608。
使用簽名512來驗證許可消息500和相應的軟件消息600兩者的一部分是可信的。在整個簽名組上運行諸如SHA-1或MD5之類的散列函數(shù),此后,通過諸如RSA、ECC和DSA之類的簽字算法運行結果以產生簽名。另一方面,可以對于散列函數(shù)使用簡單的CRC算法,此后,可以通過諸如三重-DES或DES之類的加密算法發(fā)送結果以產生簽名512。當匯編許可消息500時,在把簽名512插入許可消息500之前,頭端104在整個簽名組700上計算簽名512。機頂盒108根據(jù)許可和軟件消息500、600兩者的接收而計算簽名組700的簽名。一旦計算了簽名,就把所接收簽名512對照許可和軟件消息500、600兩者的鑒別部分進行檢查。如果簽名不匹配,則因為機頂盒108假定軟件消息600是從不合適的源來的而丟棄軟件消息600。除了其它原因之外,某些實施例可能使用多個簽名來支持在系統(tǒng)100中的不同機頂盒108。
用線性或非-線性算法計算第一和第二檢查和516、612。當數(shù)據(jù)經過網(wǎng)絡216傳送到機頂盒108時,這些檢查和516、612驗證數(shù)據(jù)的完整性。例如,檢查和可能是循環(huán)冗余檢查(CRC),它對于在消息中的每個字節(jié)執(zhí)行無進位的二進制加法。當正在發(fā)送消息500時,消息假脫機系統(tǒng)208計算檢查和516,并把檢查和516附到消息500的結束處。相反,機頂盒108在接收消息500時計算檢查和,并對照在所接收消息500中的檢查和516來檢查計算的檢查和。如果計算的檢查和與接收的檢查和不匹配,則在發(fā)送中發(fā)生差錯。丟棄有差錯的消息500、600,此后,頭端104可能發(fā)送替代消息500、600。某些實施例可能使用數(shù)字簽名而不是檢查和。
目標標頭604包括軟件消息600的屬性。在目標標頭604中包括標頭長度、軟件目標長度、目標識別符、軟件版本以及域識別符。標頭長度和軟件目標長度分別表示目標標頭604的長度和軟件目標608的長度。如上所述,目標識別符提供唯一的代碼,所述代碼允許把許可消息500賦予軟件消息600。軟件版本表示軟件目標的版本。把域識別符分配給不同的有線提供器,致使可能接收軟件目標608的所有機頂盒108可以篩選與它們的域相關聯(lián)的軟件目標608。
軟件目標608包括設計系統(tǒng)200的內容以傳遞到機頂盒108。在軟件目標中可以嵌入數(shù)種類型的信息,諸如可執(zhí)行的程序、固件升級、運行-時間程序(例如,Java或ActiveX)、編程調度、單據(jù)信息、視頻、音頻或數(shù)據(jù)??梢跃o接在鑒別和許可之后立即使用軟件目標608或在較晚時間使用。此外,可以對許可進行編程以在某個時間量之后期滿。
特別參考圖7,圖中示出簽名組700。組700包括許可消息500和軟件消息600兩者的一部分。在簽名組700中包括用于計算簽名512的所有數(shù)據(jù)。因為簽名512需要來自許可消息500和軟件消息600兩者的組成部分,所以失敗的簽名檢查表示不能夠驗證許可消息500和軟件消息600中之一是從可信的源始發(fā)的??尚诺脑词钱a生簽名512的頭端104。如果有多個簽名512,則機頂盒108選擇它認為能鑒別簽名組700的至少一個簽名512。
接著參考圖8,在圖中以方框圖形式示出“權利”消息800的實施例。權利消息800傳遞權利以使用功能單元。功能單元可以是目標或資源。一般,每個機頂盒108有一個權利消息800,它指定對于所有功能單元的任何權利。對照權利檢查從與目標和資源相關聯(lián)的許可消息500來的要求,以確定是否許可與其它目標或資源進行交互。權利消息800允許把新權利從遠處添加到與機頂盒108相關聯(lián)的功能單元。雖然未示出,但是授權消息800一般包括數(shù)字簽名,以驗證在傳送期間消息800的完整性。在某些實施例中,可以使用檢查和來代替數(shù)字簽名。
權利標頭804包括授權消息800的屬性。在權利標頭804中包括標頭長度、權利數(shù)據(jù)結構長度、機頂盒108識別符以及域識別符。標頭長度和權利數(shù)據(jù)結構長度分別表示權利標頭804和權利數(shù)據(jù)結構808的長度。為了鑒別的目的,機頂盒108識別符提供唯一的代碼,它允許把權利消息800賦予系統(tǒng)100中的特定的機頂盒108。
使用在權利數(shù)據(jù)結構808中的信息把權利傳遞到所有功能單元。給定的功能單元可以具有使用數(shù)個其它功能單元的權利。在權利數(shù)據(jù)結構808中包含這些權利。每個功能單元識別符列出層權利,使用所述層權利把權利賦予特定的功能單元。功能單元可以已經在機頂盒108中,或可以在較晚時間下載。
接著參考圖9,以方框圖形式示出功能單元之間的交互。與機頂盒108相關聯(lián)的功能單元包括機頂盒資源904、打印機驅動器目標908、電子郵件目標912以及打印機端口資源914。在這些功能單元的正常交互期間,碰到觸發(fā)許可檢查的檢查點。下表使權利和要求與圖9中的每個功能單元相關。功能單元識別符的作用是使目標消息600與權利消息800相關。
表
機頂盒資源904對于電子郵件目標912是高級的。當裝載電子郵件目標912時,在目標912中的檢查點檢查正確的權利。通過電子郵件目標912本身的要求920-2定義正確的權利。如果電子郵件權利916_1符合電子郵件目標要求920-2的標準,則電子郵件目標912繼續(xù)執(zhí)行通過檢查點。在與電子郵件權利916-1和電子郵件目標要求920-2相關聯(lián)的功能單元904、912分別裝載它們之后,ACP 240實際執(zhí)行鑒別。
在用戶收到機頂盒904之后,用戶可以添加任選的打印機212。在本實施例中,打印的能力是一個附加的特征,在所有機頂盒904中都不包括這個特征。如果打印機212是內容提供者許可購買的,則從頭端104在權利消息800中把打印機驅動器權利916-2、916-4以及打印機端口權利916-3發(fā)送到機頂盒904。
某些實施例可以把權利提供給能夠使用打印機端口920-3的功能單元的子集。例如,可以把打印機驅動器權利916-4給予電子郵件目標912,但是機頂盒資源904沒有接收到打印機驅動器權利916-2。如此,只有電子郵件目標916-2可以使用打印機端口920-3,而其它目標不能使用。
把打印機212掛上打印機端口914可以觸發(fā)在電視顯示器216上顯示請求包括打印機212的秘密代碼的消息。在用戶輸入密碼之后,就向頭端104請求啟動打印機212的權利消息800。一旦頭端104接收并驗證密碼,就發(fā)送根據(jù)密碼在密鑰中加密的一組啟動的權利消息800。在本實施例中,在工廠內裝載打印機驅動器目標908,但是其它實施例可能當需要時使用目標消息600來裝載這個目標908。
當電子郵件目標912正在運行時,用戶可以嘗試打印電子郵件消息。在打印之前,顯示鑒別正確的權利916的數(shù)個檢查點。電子郵件目標912用要求打印的信息呼叫打印機驅動器908。在打印機驅動器908中的檢查點停止處理,直到檢測到許可電子郵件目標912。把購買打印機時下載的打印機驅動器權利916-4和用于鑒別的打印機驅動器要求920-1一起裝載到ACP 240。假定鑒別是成功的,則打印機驅動器目標908使打印機212使用的打印信息格式化,并把它傳遞到打印機端口資源914。
打印機端口資源914是與連接到打印機212的電纜連接的硬件端口。一旦把信息發(fā)送到打印機端口資源914,檢查點就暫停處理,以檢查打印機驅動器目標908已經正確許可。把要求920-3和權利916-3裝載到ACP 240用于鑒別。一旦鑒別打印機驅動器目標908的使用,就使其余的打印任務對于用于打印的打印機端口資源914假脫機。
在某些實施例中,一個功能單元的權利916可以由另一個功能單元來繼承??梢园褭嗬?16傳遞到可能使用該功能單元的其它目標608。例如,起初可以使使用打印機端口232的權利916單獨與電子郵件目標912相關聯(lián),當用戶購買打印機212時,把該權利916傳遞到電子郵件目標912。在較晚時間,頭端104可以對可能使用打印機端口232的所有其它功能單元或功能單元的子集許可繼承權利916。如此,另外的功能單元可以使用打印特征。
接著參考圖10,圖中描繪一個過程的實施例,用于按第三安全等級裝載目標。在發(fā)送之前,本實施例鑒別網(wǎng)絡操作器是目標的源。在第一步驟1004中,控制器220從存儲器228的非-易失性部分讀出許可和目標消息500、600。在步驟1008中把目標消息600裝載到ACP 240,而在步驟1012中裝載許可消息500。
一旦裝載目標和許可消息600、500兩者,則ACP 240可得到簽名組700的所有組成部分。在步驟1016中,ACP 240計算在簽名組700上的簽名。在步驟1024中,ACP 240按照在許可消息500中的簽名512是否與計算的簽名匹配而作出確定。如果匹配,則許可目標608,并通過OS(操作系統(tǒng))把目標608裝載到存儲器228和允許執(zhí)行。另一方面,如果簽名不匹配,則ACP 240丟棄目標608,并把出錯通知操作系統(tǒng)。存儲期間的不可靠、非法翻印代替目標608或病毒腐蝕目標608都會引起簽名512的不匹配。
參考圖11,圖中示出一個過程的實施例,用于按第四安全等級裝載目標。在發(fā)送目標608之前,本實施例檢查許可機頂盒108使用目標。類似于上述等級1的安全性,本實施例使用加密來得到許可檢查??梢园褜ΨQ或不對稱密鑰用于加密。在第一步驟1104中,以加密形式把目標消息600寫入存儲器228的非-易失部分。在某些實施例中,從網(wǎng)絡208接收加密形式的目標消息600,致使在存儲之前不需要另外的加密步驟。
當要求裝載目標608時,在步驟1108中從非-易失性存儲器228取得許可和目標消息500、600。許可消息500包括對目標消息600進行解密所必需的密鑰。在步驟1112中,把密鑰和目標消息600裝載到ACP。在步驟1116中對目標608進行解密。如果解密所使用的密鑰不是許可用于目標608的那個密鑰,則解密過程將不成功,并且所產生的結果是不可解密的。另一方面,在步驟1120中如果密鑰是正確的,則使明碼文本目標返回到用于執(zhí)行的操作系統(tǒng)。
在一個實施例中,把目標608以加密的形式裝載到易失性存儲器中。由于只把來自目標消息600的目標608存儲在存儲器中,所以目標608通過它自己加密??梢允褂孟嗤拿荑€或不同的密鑰來執(zhí)行加密。當碰到接著的檢查點時,可以在存儲器中的經加密目標608上執(zhí)行許可。例如,當從存儲器讀出目標608用于再現(xiàn)或觀看時,對它進行解密以再次驗證許可。在許可過程期間不需要諸如輸入密碼之類的用戶交互。
接著參考圖12,在圖中示出一個過程的另一個實施例的流程圖,用于按第四安全等級裝載目標。在本實施例中,為了在裝載目標608之前確認目標608是得到許可的,檢查在許可消息500中的權利。在步驟1204中,從存儲器228讀出許可消息500。接著,在步驟1208中控制器220把許可消息500裝載到ACP 240。
一旦ACP 240具有許可消息500,就在步驟1212中檢查其中的授權信息。在步驟1216中,通過檢查授權信息,判斷目標608是否得到許可。如果許可目標608,則通過操作系統(tǒng)把它裝載到存儲器中并執(zhí)行。另一方面,如果不存在使用目標608的權利,則在步驟1224中把許可嘗試失敗通知操作系統(tǒng),并丟棄目標608。
雖然上面沒有表述,但是一般大約在與執(zhí)行等級3的鑒別的同時,并在裝載目標608之前,執(zhí)行等級4的許可。在鑒別之前執(zhí)行許可,因為許可是一個較快的過程。在執(zhí)行鑒別和許可之后,返回到操作系統(tǒng)的狀態(tài)是不許可、許可但是不鑒別或許可和鑒別。
參考圖13,在圖中描繪一個過程的實施例的流程圖,用于按第五安全等級連續(xù)地檢查運行的目標。第五安全等級和第六安全等級(下面描述)涉及通過時間或應用觸發(fā)的檢查點??梢岳斫?,還應該對正在運行的目標進行鑒別,以保證未曾對它們進行替代或修改。此外,對許可的周期性驗證允許已經連續(xù)運行一段時間的應用的期限終止。可以使用預定的周期,也可以使用不預定的變化周期。
在步驟1304中開始所述過程,其中,從存儲器228讀出目標608。在裝載目標608之前,目標608具有第一簽名,但是在把目標608裝載到存儲器228中之后,經裝載的目標608的簽名可能變化。熟悉本技術領域的人員會理解,地址從虛擬地址轉換到物理地址,致使簽名可能變化。相應地,在步驟1308中重新計算簽名,以產生表示經裝載的目標的第二簽名。要注意,應該如此地把目標608裝載和保存在存儲器228中致使第二簽名不改變。例如,經裝載的目標不應該具有使簽名改變的自己-修改代碼。然而,當改變發(fā)生時,某些實施例可能允許修改成第二簽名。
操作系統(tǒng)具有觸發(fā)周期性的鑒別和許可的以規(guī)定時間間隔調度的檢查點。在步驟1312中,過程等待下一個經調度的檢查點。一般,這些經調度的檢查點至少每周或每月發(fā)生。當每月支付有線電視服務時,需要在結帳周期之后檢查未經許可的繼續(xù)運行的應用,然而,可以使用任何時間間隔。在步驟1316中,通過把許可消息500、經裝載的目標和第二簽名裝載到ACP 240而執(zhí)行鑒別和許可。使用第二簽名進行鑒別。
在步驟1320中判斷步驟1316中執(zhí)行的鑒別和許可兩者是否成功。如果成功,則過程環(huán)路返回到步驟1312,在該步驟中,過程等待下一個檢查點。另一方面,當許可或鑒別檢查失敗時,從存儲器228中取出目標并丟棄。最好,ACP 240是確定經調度的檢查點的時間源。ACP 240對于設置時鐘倒退以避免許可期滿的襲擊是較不靈敏的。此外,ACP 240不運行可能改變時間的應用程序軟件,而需要安全命令來改變時間。安全命令可以使用加密或簽名來保證鑒別任何時間改變??梢允褂糜诮饷艿拿荑€期滿,或可以發(fā)送新的授權消息800,使之重寫和除去使用目標的權利而終止許可期限。
雖然前述實施例依靠時間周期來觸發(fā)檢查點,但是其它實施例可以用其它方法觸發(fā)檢查點。例如,可以用計數(shù)器來監(jiān)測應用而觸發(fā)檢查點。在預定的裝載數(shù)或預定的累計運行時間之后,檢查點可能要求重新驗證目標。
接著參考圖14A,在圖中示出一個過程的實施例的流程圖,用于允許按安全等級6自由地預檢目標。第六等級的安全允許根據(jù)在需要購買之前的某些示例而使用軟件。如在本技術領域中眾知,在用戶可能購買軟件之前,他要求試用軟件。相應地,第六等級的安全允許在請求購買之前對軟件使用一段時間。
在步驟1404中開始所述過程,在該步驟中,從存儲器228的存儲部分取得目標608。在步驟1408中,把目標608裝載到存儲器228的執(zhí)行部分,在那里啟動目標608的執(zhí)行。在步驟1412中開始減法計數(shù)(countdown)定時器,該定時器進行減法計數(shù)到零,以標志試驗周期的結束??梢岳斫?,另外,也可以用加法計數(shù)定時器來確定試驗周期的期滿。在步驟1416中,用戶對目標608取樣直到試驗周期結束。在步驟1420中,當減法計數(shù)定時器期滿或到達它的為零的下邊界時,通過通知來確定取樣周期的結束。當定時器期滿時,試驗周期的臨時許可也期滿。
在步驟1424中,給予用戶購買目標608的選擇,同時推遲應用程序的許可。購買將使許可恢復原狀。配制一個購買屏幕,并通過機頂盒向用戶顯示,以提示目標608的購買。如果沒有選擇購買,則在步驟1432中從存儲器228中取出目標608并丟棄。另一方面,如果同意購買,則在步驟1428中,使目標608保留在存儲器228中,并使授權信息更新以反映購買和許可。
其它實施例可以使用能永遠運行的削弱演示軟件(crippled demonstrationsoftware),但是將丟失在購買版本中存在的某些特征。如果用戶喜歡削弱版本,則用戶很可能要購買全部版本才能得到丟失的特征。購買非削弱的目標608并認可缺少的特征。要注意,與在圖13中所描繪的方法相似,在某些實施例中,全部版本可能受使用應用程序的權利的期限支配。
接著參考圖14B,在圖中示出一個過程的另一個實施例的流程圖,用于允許按安全等級6自由地預檢目標。在本實施例中,通過許多用戶或某些其它測量值來定義目標的試驗周期。例如,在要求購買之前軟件程序可以裝載兩次。
在步驟1436中開始所述過程,在該步驟中,從存儲器228的存儲部分取得目標608。在步驟1440中,把目標608裝載到存儲器228的程序執(zhí)行部分,在那里進行執(zhí)行。在步驟1444中開始加法應用計數(shù)器,當使用目標時,該計數(shù)器開始進行加法計數(shù)。可以理解,另外的減法計數(shù)器也可以確定何時到達應用極限。在步驟1448中,用戶對目標608取樣,并且在步驟1452中,取樣導致應用計數(shù)器遞增。在本實施例中的每個應用計數(shù)相應于程序裝載或某些其它動作。在步驟1456中,當應用計數(shù)器到達它的上邊界時,通過通知來確定取樣周期的結束。當?shù)竭_極限時,試驗周期許可期限終止。
在步驟1460中,給予用戶購買目標608的選擇,同時推遲應用程序的許可。購買將使許可恢復原狀。配制一個購買屏幕,并通過機頂盒108向用戶顯示,以提示目標608的購買。如果沒有選擇購買,則在步驟1468中從存儲器228中取出目標608并丟棄。另一方面,如果同意購買,則在步驟1464中,使目標保留在存儲器中,并使授權信息更新以反映購買和許可。
雖然上述實施例測量整個目標608的應用,但是其它實施例可以以更高級的方法來監(jiān)測應用。目標608的個別功能可以有測定的接入。例如,在要求購買打印能力之前可以允許電子郵件程序打印20個電子郵件消息。
參考圖15A,在圖中示出一個過程的實施例的流程圖,用于按安全等級7監(jiān)測返回到頭端104的報告。在頭端104中的監(jiān)測計算機期望在系統(tǒng)100中的每個ACP240通過網(wǎng)絡208把安全報告周期性地發(fā)送回頭端104。假定在預定時間周期中沒有發(fā)送回報告的那些ACP 240是不能正常工作的ACP 240,它可能表示有黑客,否則是不能正常工作的機頂盒108。在本實施例中,頭端期望每天至少有一個安全報告。在圖15A中只示出用于監(jiān)測單個機頂盒108的過程,但是可以理解,在系統(tǒng)100中,在大量機頂盒108上并行地執(zhí)行該過程。
在步驟1502中,把返回報告定時器設置到一天的初始值。在設置之后,返回報告定時器開始按時間進行減法計數(shù)。對于屬于該過程的機頂盒108,在步驟1506中,頭端104監(jiān)測來自機頂盒108的任何返回報告。在步驟1510中,執(zhí)行測試以確定是否已經接收到安全報告。如果接收到報告,則處理繼續(xù)進行到步驟1546,在該步驟中,為任何識別的安全問題分析報告。當存在安全問題時,在步驟1518中可以禁止機頂盒1518。當不存在安全問題時,處理環(huán)路返回到步驟1502。
如果在步驟1510之前沒有接收到報告,則處理繼續(xù)進行到步驟1514,在該步驟中,執(zhí)行進一步的測試來確定返回報告定時器是否已經期滿。如果定時器尚未期滿,則處理環(huán)路返回到步驟1506。如果定時器已經期滿,則在步驟1518中禁止相應于期滿定時器的機頂盒108。期滿定時器將表示ACP 240不再正確地報告安全問題。在步驟1518中,可以發(fā)送禁止機頂盒3的密鑰功能的新權利消息800,諸如紅外端口資源,以禁止機頂盒108。此外,可以在機頂盒108上顯示一個消息,通知用戶與用戶支援部門聯(lián)系,以重新-啟動紅外端口資源。
雖然本實施例根據(jù)相反的安全報告來禁止整個機頂盒,但是某些實施例可以只禁止引起安全問題的目標608。如果在機頂盒108中的操作系統(tǒng)(OS)在存儲器中損壞,例如,不能正確地響應接著的檢查點,則當觀察到檢查點趨向于不執(zhí)行之后,ACP 240將報告這個差錯。頭端104可以向機頂盒108發(fā)送一個命令,以重新裝載操作系統(tǒng),希望可以去除這個差錯。如果接收到進一步的報告,則可能禁止機頂盒108。
接著參考圖15B,在圖中示出一個過程的實施例的流程圖,用于按安全等級7通過機頂盒108報告安全檢查。當碰到和應該碰到檢查點時,ACP 240監(jiān)測目標608和操作系統(tǒng)的正確操作。例如,當任何時候裝載、發(fā)送或訪問目標608時,某些實施例就執(zhí)行檢查點。ACP 240應弄清楚要執(zhí)行鑒別和/或許可,并且有相反的結果作用在其上。在安全報告中向頭端104報告不能正確地處理檢查點。
在步驟1522中,設置返回報告定時器。返回報告定時器設置機頂盒108一般把安全報告發(fā)送回頭端104的周期。在本實施例中,ACP 240每小時發(fā)送報告。把這些報告附加到來自操作系統(tǒng)和控制器220的鑒別和許可差錯報告中。在步驟1526中,ACP 240獨立地確定操作系統(tǒng)和目標608何時應該碰到檢查點。在步驟1530和1534中,ACP 240確定是否根據(jù)檢查點執(zhí)行鑒別和/或許可。如果每個測試都失敗,則ACP 240進一步確定控制器220是否把差錯向頭端104回報。把ACP 240包括在鑒別和/或許可過程中,并可以確定何時執(zhí)行這些過程。通過ACP 240檢查系統(tǒng)總線230上的話務可以進行差錯報告的監(jiān)測,以觀察網(wǎng)絡端口208是否正確地發(fā)送差錯報告。
如果忽略檢查點或不根據(jù)其作用,則在步驟1542中立即把安全報告發(fā)送到頭端104。安全報告包括自從最后的返回報告定時器周期開始以來發(fā)生的所有差錯。如果正確地執(zhí)行檢查點,則處理繼續(xù)進行到步驟1538,在該步驟中,測試一小時報告返回周期的期滿。在步驟1542中,當定時器期滿時,ACP 240發(fā)送安全報告,否則,處理環(huán)路從步驟1538返回到步驟1526,進行進一步的監(jiān)測。在本實施例中,ACP 240在其余的機頂盒108上執(zhí)行簡單的檢查,以獨立地檢查安全問題,并且還把這些問題向頭端104回報。
參考圖15C,以流程圖的形式描繪過程的另一個實施例,用于按安全等級7監(jiān)測安全檢查。在本實施例中,ACP 240屏蔽操作系統(tǒng),對經常碰到的檢查點進行兩次檢查。在步驟1504中開始所述過程,其中,記錄最后操作系統(tǒng)檢查點的時間。由于使ACP 240包括在本實施例的鑒別和許可過程中,所以ACP 240可以跟蹤檢查點的執(zhí)行。在步驟1508中,開始減法計數(shù)定時器。我們再次注意,這個計數(shù)器可以是加法計數(shù)而不是減法計數(shù)。
在步驟1512中,判斷ACP 240是否觀察到檢查點。如果觀察到檢查點,則處理環(huán)路返回到步驟1504,在該步驟中,使減法計數(shù)定時器復位,以致再次從起始處開始。另一方面,如果沒有觀察到檢查點,則在步驟1516中執(zhí)行定時器的檢查。如果計數(shù)器尚未期滿,則處理環(huán)路返回到步驟1512,再次測試檢查點的觀察。當定時器期滿而沒有到達檢查點時,處理繼續(xù)進行到步驟1520,在該步驟中,ACP 240向頭端104回報差錯。
雖然上述實施例討論在單個目標608上對檢查點的測試,但是可以理解,可以以上述方法對于在機頂盒108中的每個目標608發(fā)生檢查點的測試,致使并行地執(zhí)行許多所描繪的過程。在某些實施例中,可以對每個目標608設計定制的準則,以便檢測在對于該目標608為唯一的執(zhí)行中的差錯。此外,我們注意到,通??尚诺幕虬踩牟僮飨到y(tǒng)可能不需要ACP 240以這種嚴格的方法來檢測異常的性能。檢查操作系統(tǒng)的正常功能(即,檢查正規(guī)的檢查點)添加安全的額外的層,以阻擋黑客、盜版、病毒和存儲器差錯。
參考圖16A,在圖中示出一個過程的實施例的流程圖,用于按安全的第8等級產生部分加密的目標。對目標的一部分進行加密,以防止未許可的目標發(fā)送,直到購買目標608。例如,可以得到目標608的削弱的版本,直到購買而導致標志的解密,以便重新配制目標608的未-削弱的版本。對標志進行解密有效地許可未-削弱版本的使用,致使可以以明文的形式得到整個目標608。在本實施例中,目標608用于標志的一部分小于整個目標608的大小的一半。
在步驟1602中開始所述處理,其中,選擇目標608的一部分,以進行加密而作為標志。選擇所述部分,致使目標608缺少所述部分而不允許目標608的執(zhí)行。在步驟1606中,對所取出的部分進行加密而作為標志??梢詧?zhí)行對稱或不對稱加密,然而,本實施例使用對稱加密。在步驟1610中,把削弱的或安全的目標發(fā)送到機頂盒108。在安全目標中包括標志和明文形式的目標608的余留部分。在步驟1614中,經過安全信道把對稱密鑰發(fā)送到機頂盒108。
如果用戶購買目標608,則對標志進行解密,并且重新插入目標608,致使重新配制的目標是可執(zhí)行的。在步驟1618中把表示產生購買的一個消息從機頂盒108發(fā)送到頭端104。在步驟1622中,用戶的帳戶正確地作為購買目標608的借方。在步驟1626中,發(fā)送許可使用目標的更新權利消息800。雖然本實施例從頭端104得到最終的許可,但是某些實施例可以免除這個許可而立即開始使用目標。例如,在存儲-和-傳遞系統(tǒng)中,來自頭端104的許可可能是不切實際的。
接著參考圖16B,在圖中示出一個過程的實施例的流程圖,用于使用標志來得到安全的第8等級。本實施例使用密文標志來控制目標608的許可。密文標志是目標608的加密部分,是目標608的正常操作或它的某些子-功能所必需的。對密文標志進行解密產生插入到目標608中的明文標志,致使目標按明文形式重新配制。
在步驟1604中,通過從頭端接收密文標志和目標608的明文余留部分而開始所述過程。雖然本實施例依靠頭端104產生密文標志,但是某些實施例可以在接收到目標608之后在機頂盒108中執(zhí)行標志的加密。在步驟1608中,把明文余留部分和密文標志存儲在存儲存儲器228中。在步驟1612中,接收對密文標志進行解密所需要的密鑰,并存儲在ACP 240中。
在步驟1616中,過程進行等待,直到用戶購買目標608。在步驟1618中,從目標608中除去密文標志,并發(fā)送到ACP 240,用于進行解密。在步驟1620和1624中,使所產生的明文標志返回到操作系統(tǒng),并結合到目標608中,以構成目標608功能。在步驟1628中,向頭端104報告購買。在執(zhí)行目標608之前,可以要求來自頭端104的以權利消息800形式的進一步許可。通過只對目標608的一部分而不是對整個目標608進行加密,加速了解密過程。
上述討論涉及在操作系統(tǒng)上運行應用程序或目標608。這些概念可以等效地應用于運行在JavaTM虛擬機(JVM)(它運行在操作系統(tǒng)的頂部)上的JavaTM應用程序。聯(lián)系圖17說明上位(superordination)和下位(subordination)的概念以幫助這種抽象觀念。上位和下位定義哪個目標608有責任把檢查點放置在另一個目標上。在與其它目標608和資源發(fā)生的正常交互期間,把檢查點放置在目標608上。
參考圖16C,在圖中示出一個過程的另一個實施例的流程圖,用于使用部分下載來得到安全的第8等級。本實施例把目標分成明文部分和明文余留部分。頭端104分發(fā)明文余留部分,但是在分發(fā)明文部分之前等待購買。沒有明文部分削弱了目標608,致使不可能對它執(zhí)行。在本實施例中,明文部分的大小小于明文余留部分的大小的十分之一。
在步驟1650中,通過機頂盒108接收目標608的明文余留部分,并在步驟1654中存儲在存儲器228中。不處置明文余留部分,除非在步驟1658中的用戶購買而使用它。借助網(wǎng)絡208向頭端104返回購買報告。一旦根據(jù)購買請求執(zhí)行任何驗證,頭端104就發(fā)送在步驟1666中接收的丟失的明文部分。使用安全信道把明文部分發(fā)送到購買目標608的機頂盒108。
在步驟1670中,結合明文部分和余留部分,以在機頂盒108處重新配制目標608。本實施例進一步要求來自頭端104的新權利消息800,以啟動目標的使用。新權利消息800將代替老權利消息800,并提供使用目標608的權利。
參考圖17,在圖中示出機頂盒108的某些功能單元。朝向圖17的底部的功能單元對于接近圖17的頂部的功能單元是上位。就是說,朝向圖17的頂部的功能單元對于在圖中較低處的那些功能單元是下位。上位功能單元的責任是把檢查點放置在下位功能單元上。例如,硬件1704把檢查點放置在下位階層以上的BIOS 1708、OS 1712等上。BIOS 1708把檢查點放置在OS 1712上,但是不放在硬件1704上。在相同分類階層中的功能單元,當它們進行交互時,可以把檢查點放置在在該階層中的另一個功能單元上。例如,應用程序1716可以要求在驅動器1718上的檢查點的執(zhí)行。
設計上位功能單元來啟動連同ACP 240的檢查點的執(zhí)行,并且設計下位目標使檢查點放置在它們上面。例如,在執(zhí)行和/或同時周期性運行期間,BIOS 1708要求在引導過程期間執(zhí)行在OS 1712上的檢查點。當安裝或正常操作期間的練習時,驅動器目標1718受檢查點的支配。任何時候當訪問在文件中的數(shù)據(jù)時,數(shù)據(jù)文件目標1722受檢查點的支配。任何時候當瀏覽器應用程序1716解譯HTML目標1728時,作為檢查點的一部分再檢查HTML目標1728。
根據(jù)上述說明,不費力地明白了本發(fā)明的許多優(yōu)點。獨立地監(jiān)測安全機構的正確操作。此外,ACP直接向頭端報告安全觀察。獨立觀察防止黑客、病毒和存儲器差錯破壞機頂盒的安全功能。
上面已經聯(lián)系特定設備和方法描述本發(fā)明的原理,可以清楚地理解,說明書只是借助例子描述本發(fā)明,而不是作為對本發(fā)明的限制。
權利要求
1.一種用于使與內容接收機相關聯(lián)的信息安全的方法,所述內容接收機是條件接入系統(tǒng)的一部分,所述方法包括下列步驟選擇用于監(jiān)測的一個目標;獨立地確定目標應該在何時碰到觸發(fā)鑒別和許可中至少一個的檢查點;獨立地監(jiān)測執(zhí)行鑒別和許可中至少一個;從內容接收機發(fā)送有關監(jiān)測的信息。
2.如權利要求1所述的用于使與內容接收機相關聯(lián)的信息安全的一種方法,所述內容接收機是條件接入系統(tǒng)的一部分,其特征在于,進一步包括根據(jù)監(jiān)測步驟阻止目標的執(zhí)行的步驟。
3.如權利要求1所述的用于使與內容接收機相關聯(lián)的信息安全的一種方法,所述內容接收機是條件接入系統(tǒng)的一部分,其特征在于確定步驟包括用接入控制處理器確定目標應該在何時碰到檢查點的步驟;以及接入控制處理器獨立于控制器而操作。
4.如權利要求1所述的用于使與內容接收機相關聯(lián)的信息安全的一種方法,所述內容接收機是條件接入系統(tǒng)的一部分,其特征在于監(jiān)測步驟包括用接入控制處理器監(jiān)測執(zhí)行鑒別和許可中至少一個的步驟;以及接入控制處理器獨立于控制器而操作。
5.如權利要求1所述的用于使與內容接收機相關聯(lián)的信息安全的一種方法,所述內容接收機是條件接入系統(tǒng)的一部分,其特征在于,發(fā)送步驟包括從接入控制處理器發(fā)送信息的步驟。
6.如權利要求1所述的用于使與內容接收機相關聯(lián)的信息安全的一種方法,所述內容接收機是條件接入系統(tǒng)的一部分,其特征在于,進一步包括下列步驟中的至少一個步驟改變目標的許可;改變不同于目標的功能單元的許可;從易失性存儲器刪除目標;從非-易失性存儲器刪除目標;從內容接收機刪除目標;以及停止目標的執(zhí)行。
7.如權利要求1所述的用于使與內容接收機相關聯(lián)的信息安全的一種方法,所述內容接收機是條件接入系統(tǒng)的一部分,其特征在于,進一步包括下列步驟定義一個周期,內容接收機應該在所述周期內執(zhí)行發(fā)送步驟;以及從遠處位置確定內容接收機是否已經執(zhí)行發(fā)送步驟。
8.用于使與內容接收機相關聯(lián)的信息安全的一種方法,所述內容接收機是條件接入系統(tǒng)的一部分,所述方法包括下列步驟選擇用于監(jiān)測的一個目標;確定目標應該在何時碰到觸發(fā)鑒別和許可中至少一個的檢查點;獨立地監(jiān)測執(zhí)行鑒別和許可中至少一個;根據(jù)監(jiān)測步驟阻止目標的執(zhí)行。
9.如權利要求8所述的用于使與內容接收機相關聯(lián)的信息安全的一種方法,所述內容接收機是條件接入系統(tǒng)的一部分,其特征在于,進一步包括把監(jiān)測信息從內容接收機發(fā)送到頭端的步驟。
10.如權利要求8所述的用于使與內容接收機相關聯(lián)的信息安全的一種方法,所述內容接收機是條件接入系統(tǒng)的一部分,其特征在于確定步驟包括用接入控制處理器確定目標應該在何時碰到檢查點的步驟;以及接入控制處理器獨立于控制器而操作。
11.如權利要求8所述的用于使與內容接收機相關聯(lián)的信息安全的一種方法,所述內容接收機是條件接入系統(tǒng)的一部分,其特征在于監(jiān)測步驟包括用接入控制處理器監(jiān)測執(zhí)行鑒別和許可中至少一個的步驟;以及接入控制處理器獨立于控制器而操作。
12.如權利要求8所述的用于使與內容接收機相關聯(lián)的信息安全的一種方法,所述內容接收機是條件接入系統(tǒng)的一部分,其特征在于,發(fā)送步驟包括從接入控制處理器發(fā)送信息的步驟。
13.如權利要求8所述的用于使與內容接收機相關聯(lián)的信息安全的一種方法,所述內容接收機是條件接入系統(tǒng)的一部分,其特征在于,進一步包括下列步驟定義一個周期,內容接收機應該在所述周期內執(zhí)行發(fā)送步驟;以及從遠處位置確定內容接收機是否已經執(zhí)行發(fā)送步驟。
14.如權利要求8所述的用于使與內容接收機相關聯(lián)的信息安全的一種方法,所述內容接收機是條件接入系統(tǒng)的一部分,其特征在于,包括下列步驟中的至少一個步驟改變目標的許可;改變除目標以外的功能單元的許可;從易失性存儲器刪除目標;從非-易失性存儲器刪除目標;從內容接收機刪除目標。
15.一種用于在遠處控制在內容接收機中的功能單元的條件接入系統(tǒng),所述條件接入系統(tǒng)包括位于遠離內容接收機處的監(jiān)測計算機;在內容接收機中的功能單元;把監(jiān)測計算機耦合到內容接收機的分發(fā)網(wǎng)絡;在內容接收機中的通用處理器;以及接入控制處理器,它監(jiān)測在通用處理器上的程序執(zhí)行和向監(jiān)測計算機報告安全異常情況。
16.如權利要求15所述的用于在遠處控制在內容接收機中的功能單元的條件接入系統(tǒng),其特征在于,頭端包括監(jiān)測計算機。
17.如權利要求15所述的用于在遠處控制在內容接收機中的功能單元的條件接入系統(tǒng),其特征在于,從包括源和目標的組中選擇功能單元。
18.如權利要求15所述的用于在遠處控制在內容接收機中的功能單元的條件接入系統(tǒng),其特征在于,進一步包括多個內容接收機,其中,多個內容接收機中的每一個包括功能單元、通用處理器以及接入控制處理器。
全文摘要
根據(jù)本發(fā)明,揭示用于使與內容接收機相關聯(lián)的信息安全的一種方法,所述內容接收機是條件接入系統(tǒng)的一部分。在一個步驟中,選擇用于監(jiān)測的目標。獨立地確定目標應該在何時碰到檢查點。檢查點觸發(fā)鑒別和/或許可。獨立地監(jiān)測執(zhí)行鑒別和許可中至少一個。從內容接收機發(fā)送有關監(jiān)測的信息。
文檔編號H04N7/167GK1381130SQ01801451
公開日2002年11月20日 申請日期2001年5月2日 優(yōu)先權日2000年5月26日
發(fā)明者E·J·斯普蘭克, G·P·高芬二世 申請人:通用器材公司