專利名稱:數(shù)字作品保護系統(tǒng)、密鑰管理設(shè)備和用戶設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于記錄數(shù)字作品到記錄媒體、分發(fā)該記錄媒體、和從該分發(fā)的記錄媒體重現(xiàn)數(shù)字作品的技術(shù),以及具體地,涉及到管理用于內(nèi)容加密的密鑰信息以保護數(shù)字作品的技術(shù)。
背景技術(shù):
近年來隨著諸如數(shù)字處理、存儲和通信技術(shù)的發(fā)展,通過銷售或出租大容量記錄媒體來提供數(shù)字內(nèi)容(諸如電影)給用戶的業(yè)務(wù)變得很普遍。另外,其中數(shù)字內(nèi)容被廣播、被接收設(shè)備接收、被存儲在記錄媒體(諸如可記錄的數(shù)字光盤)、然后被重現(xiàn)設(shè)備重現(xiàn)的系統(tǒng)成為越來越普通。
在提供這樣的業(yè)務(wù)或系統(tǒng)中,必須保護內(nèi)容的版權(quán),以及在版權(quán)持有人同意的限度內(nèi)執(zhí)行重現(xiàn)、復(fù)制等等,使得該內(nèi)容不被非法使用。
通常,數(shù)字作品以以下方式被保護,以免未獲版權(quán)持有人同意而進行非法復(fù)制。記錄設(shè)備用加密密鑰加密數(shù)字內(nèi)容,以及把加密的內(nèi)容記錄在盤上。只有具有相應(yīng)于加密密鑰的解密密鑰的重現(xiàn)設(shè)備才能夠解密該加密的內(nèi)容。用于版權(quán)保護的協(xié)定由記錄設(shè)備的制造商和重現(xiàn)設(shè)備等連同版權(quán)持有人共同確定,以及在制造商遵守協(xié)定的條件下制造商得到加密密鑰或解密密鑰(此后簡稱為“密鑰”)。制造商必須嚴(yán)格管理所得到的密鑰,以免將它泄漏給第三方。
然而,即使在制造商嚴(yán)格地管理密鑰時,第三方仍將有可能非法得到密鑰。一旦密鑰被第三方暴露,第三方就可能散布該密鑰,制造非法地使用該內(nèi)容的記錄和/或重現(xiàn)設(shè)備,或創(chuàng)建非法地使用內(nèi)容的計算機程序,以及通過互聯(lián)網(wǎng)分發(fā)計算機程序,而不考慮由制造商和版權(quán)持有人同意的協(xié)定。希望在這樣的情形下版權(quán)持有人能夠使得所提供的內(nèi)容在密鑰暴露后對于已暴露的密鑰是無用的。
以下是響應(yīng)這個想法的最簡單的方法。
密鑰管理組織(此后簡稱為“組織”)具有一個密鑰集,由多個設(shè)備密鑰和多個媒體密鑰組成。該組織分別把設(shè)備密鑰之一和一個設(shè)備密鑰識別號指配給多個記錄設(shè)備和多個重現(xiàn)設(shè)備中的每一個,然后,給每個記錄設(shè)備和重現(xiàn)設(shè)備提供該相應(yīng)的設(shè)備密鑰和設(shè)備密鑰識別號。另外,該組織指配一個媒體密鑰給記錄媒體。接下來,該組織通過使用被指配給記錄設(shè)備和重現(xiàn)設(shè)備的每個設(shè)備密鑰來加密該媒體密鑰,以生成加密的媒體密鑰,并把相應(yīng)于所有設(shè)備密鑰的加密的媒體密鑰的列表和密鑰識別號存儲在記錄媒體上,作為密鑰信息。當(dāng)記錄媒體被裝載到記錄設(shè)備或重現(xiàn)設(shè)備時,該設(shè)備從記錄媒體中的密鑰信息中提取相應(yīng)于被指配給設(shè)備本身的密鑰識別號的加密的媒體密鑰,以及根據(jù)被分配給設(shè)備本身的設(shè)備密鑰,解密該提取的加密的媒體密鑰,以生成媒體密鑰。接著,記錄設(shè)備使用得到的媒體密鑰來加密內(nèi)容,并把最終得到的加密的內(nèi)容記錄在記錄媒體上。另一方面,重現(xiàn)設(shè)備使用得到的媒體密鑰,以相同的方式解密被加密的內(nèi)容。這樣,如果記錄設(shè)備或重現(xiàn)設(shè)備具有一個被合法地指配的設(shè)備密鑰,便總是能夠從記錄媒體得到相同的媒體密鑰,因此而保持設(shè)備之間的兼容性。
這里,假設(shè)特定的記錄設(shè)備或重現(xiàn)設(shè)備的設(shè)備密鑰已被暴露。當(dāng)在設(shè)備密鑰已被暴露后存儲密鑰信息到新的記錄媒體時,該組織創(chuàng)建不包括已暴露的設(shè)備密鑰的密鑰信息,以及把創(chuàng)建的密鑰信息存儲在記錄媒體。這樣,知道已暴露的設(shè)備密鑰的非法設(shè)備不能從密鑰信息得到正確的媒體密鑰,因為通過使用已暴露的設(shè)備密鑰來加密的一個加密媒體密鑰不被包括在記錄媒體中所存儲的密鑰信息中。結(jié)果,非法設(shè)備不能非法地使用內(nèi)容。例如,如果非法設(shè)備是記錄設(shè)備,則通過使用該記錄設(shè)備被記錄的加密內(nèi)容無法通過使用正確的密鑰被加密,所以,該加密的內(nèi)容不能通過使用合法的重現(xiàn)設(shè)備被解密。而且,如果非法設(shè)備是重現(xiàn)設(shè)備,該重現(xiàn)設(shè)備就不能得到正確的密鑰,且因此就不能正確地解密通過使用合法的記錄設(shè)備被記錄的已加密內(nèi)容。這樣,暴露的密鑰可被撤消。
然而,這個簡單方法的缺陷在于,當(dāng)有大量設(shè)備時,密鑰信息數(shù)據(jù)將大到不現(xiàn)實的程度。例如,假設(shè)某種特定類型的數(shù)字設(shè)備成為全世界范圍普及,并且全世界有幾十億臺這樣的設(shè)備。如果生成上述的加密內(nèi)容的加密算法是美國標(biāo)準(zhǔn)加密三重DES加密,則一個包括填充的媒體密鑰的長度是16字節(jié)。因此,被加密的媒體密鑰的尺寸也將是16字節(jié)。而且,如果四字節(jié)數(shù)值被用作為密鑰識別號,則密鑰信息的大小是20字節(jié)*10億設(shè)備=200億字節(jié)=20千兆字節(jié)??紤]到當(dāng)前可記錄光盤的容量,這麼大的數(shù)值是不現(xiàn)實的。
在這種系統(tǒng)中,有一個條件便是記錄媒體上記錄的密鑰信息的大小與記錄媒體的容量相比是非常小的。
滿足這個條件的系統(tǒng)的一個例子是在文件1“Digital ContentHogo-you Kagi Kanri Houshiki(Key Management Method forProtecting Digital Content)(用于保護數(shù)字內(nèi)容的密鑰管理方法)”,Nakano,Omori and Tatebayashi,Syposium on Cryptography andInformation Security 2001,SCIS2001,5A-5,Jan.2001中被公開的、一種使用樹結(jié)構(gòu)的數(shù)字作品保護密鑰管理方法。
在描述文件1中公開的方法之前,概略地描述樹結(jié)構(gòu)。
就形式而言,樹結(jié)構(gòu)是由至少一個節(jié)點組成的一個有限集T,以及被定義為滿足以下條件(a)只有一個節(jié)點被指定為樹結(jié)構(gòu)的根。
(b)其他節(jié)點(不包括根)被分成不具有m(m≥0)個共同部分的集T1,...,Tm。每個T1(i=1,...,m)是其高度是比T小“1”的另一個樹結(jié)構(gòu)。樹結(jié)構(gòu)T1,...,Tm是根的子樹。
而且,樹結(jié)構(gòu)T中的級(層)的數(shù)目按以下方式被定義。T的根是級0。取子樹Tj(根T的子樹)為例,根Tj的級將比T的級大1。
以下描述使用文件1中公開的樹結(jié)構(gòu)的數(shù)字作品保護密鑰管理方法。
在這個密鑰管理方法中,作為一個例子,該組織構(gòu)建具有四層的二叉樹結(jié)構(gòu),以及生成多個密鑰,其數(shù)目等于在構(gòu)建的樹結(jié)構(gòu)中的節(jié)點的數(shù)目。每個生成的設(shè)備密鑰被指配給樹結(jié)構(gòu)中的一個節(jié)點。該組織把每個播放器(此后,“播放器”是指上述的重現(xiàn)設(shè)備)與樹結(jié)構(gòu)中一個葉子相對應(yīng),以及把一個設(shè)備密鑰組分發(fā)給與葉子之一一一對應(yīng)的每個播放器。該組由多個設(shè)備密鑰組成,它們被指配給在從相應(yīng)的葉子到根的路徑上的節(jié)點。這樣,不同的設(shè)備密鑰組被分發(fā)給各個播放器。
這里,當(dāng)被指配給一個播放器的一個設(shè)備密鑰組被暴露時,該組織刪除被指配給被暴露的設(shè)備密鑰組中所包括的設(shè)備密鑰的節(jié)點。然后,該組織將其設(shè)備密鑰未暴露的播放器間最大數(shù)目的播放器所共有的公共密鑰指定為要被使用的下一個設(shè)備密鑰。
文件1顯示,按照這個方法,如果10億播放器中的任意10000個播放器要被撤消,那么大約3MB的密鑰信息將是足夠的。
文件2“Manipulation of Trees in Information Retrieval(信息檢索中的樹的操縱)”(G.Salton,Communication of ACM 5,1962),和文件3“Kihon Sanhou/Jouhou Kouzou (Basic Algorithm/Information Structure(基本算法/信息結(jié)構(gòu)))”,Knuth,trans.Yoneda & Kakehi,Saiensu-sha,1978,公開了線性地表示樹結(jié)構(gòu)的方法。樹結(jié)構(gòu)通過按照特定的法則來排列樹結(jié)構(gòu)中的每個節(jié)點,而被線性地表示。例如,文件3的第136頁顯示這些級被排列的次序。按照這個方法,這些級按從最低到最高的次序排列,以及在每個級中的節(jié)點按從左到右的次序排列。通過按照特定類型的法則來安排節(jié)點,播放器能夠根據(jù)線性排列的信息來構(gòu)建樹結(jié)構(gòu)。
雖然在這個用于數(shù)字作品保護的密鑰管理方法中被記錄在記錄媒體中的密鑰信息的大小確實滿足與記錄媒體的容量相比是非常小的條件,但是仍要求播放器能夠在所構(gòu)建的樹結(jié)構(gòu)中的密鑰包括被撤消密鑰的情形下有效地確定被指配給播放器的密鑰。
發(fā)明公開內(nèi)容響應(yīng)于上述的要求,本發(fā)明的目的是提供一種用戶設(shè)備可有效地確定被指配給該用戶設(shè)備的密鑰的數(shù)字作品保護系統(tǒng)、密鑰管理設(shè)備、用戶設(shè)備、密鑰管理設(shè)備、密鑰管理程序、和其上記錄有密鑰管理程序的記錄媒體。
為了達到上述的目的,本發(fā)明是由密鑰管理設(shè)備和至少一個用戶設(shè)備組成的數(shù)字作品保護系統(tǒng),密鑰管理設(shè)備具有至少一個與n進制樹(n是不小于2的整數(shù))有關(guān)的設(shè)備密鑰,以及指配一個或多個設(shè)備密鑰給每個用戶設(shè)備,每個用戶設(shè)備根據(jù)被指配的設(shè)備密鑰來加密或解密,該密鑰管理設(shè)備包括設(shè)備密鑰存儲單元,用來存儲與n進制樹中至少一個節(jié)點一一對應(yīng)的至少一個設(shè)備密鑰,在從根到葉子的至少一條路徑上的多個節(jié)點被撤消;密鑰信息生成單元,用來使用多個公共設(shè)備密鑰分別加密一個媒體密鑰,以生成多個加密的媒體密鑰,每個公共設(shè)備密鑰是該至少一個設(shè)備密鑰之一,它是與有效節(jié)點相對應(yīng)的以及被共同指配給至少一個用戶設(shè)備,并且該密鑰信息生成單元把生成的多個加密的媒體密鑰以與n進制樹結(jié)構(gòu)相關(guān)的次序?qū)懭氲接涗浢襟w;以及撤消信息生成單元,用來對除葉子外的每個撤消的節(jié)點生成一條撤消信息,表示被撤消節(jié)點的n個直接從屬節(jié)點中的每個節(jié)點是否分別被撤消,以得到多條撤消信息,和把得到的各條撤消信息按次序?qū)懭氲接涗浢襟w,以及每個用戶設(shè)備包括指定(specification)單元,用來從根據(jù)被指配給用戶設(shè)備的其中一個設(shè)備密鑰已被加密的多個加密的媒體密鑰中間,通過使用多條撤消信息,而指定一個加密的媒體密鑰;解密單元,用來根據(jù)被指配給用戶設(shè)備的設(shè)備密鑰、通過解密所指定的加密的媒體密鑰而生成媒體密鑰;以及加密/解密單元,用來執(zhí)行以下項目的至少一項(a)根據(jù)生成的媒體密鑰來加密內(nèi)容并把加密的內(nèi)容寫入到記錄媒體,以及(b)根據(jù)得到的媒體密鑰來解密從記錄媒體讀出的加密的內(nèi)容,以生成內(nèi)容。
按照所闡述的結(jié)構(gòu),密鑰管理設(shè)備把多個加密的密鑰和多條撤消信息按次序?qū)懭氲接涗浢襟w,以及用戶設(shè)備通過使用按次序?qū)懭氲亩鄺l撤消信息,從按次序?qū)懭氲亩鄠€加密的媒體密鑰中間指定加密的媒體密鑰。所以,用戶設(shè)備能夠有效地確定被指配給用戶設(shè)備的、加密的媒體密鑰。
而且,本發(fā)明是密鑰管理設(shè)備,它具有至少一個與n進制樹(n是不小于2的整數(shù))有關(guān)的設(shè)備密鑰,以及指配一個或多個設(shè)備密鑰給至少一個用戶設(shè)備,該密鑰管理設(shè)備包括設(shè)備密鑰存儲單元,用來存儲與n進制樹中至少一個節(jié)點一一對應(yīng)的至少一個設(shè)備密鑰,在從根到葉子的至少一條路徑上的多個節(jié)點被撤消;密鑰信息生成單元,用來分別使用多個公共設(shè)備密鑰來加密媒體密鑰,以生成多個加密的媒體密鑰,每個公共設(shè)備密鑰是該至少一個設(shè)備密鑰之一,它與有效的節(jié)點相對應(yīng)的以及被共同指配給至少一個用戶設(shè)備,并且該密鑰信息生成單元把生成的多個加密的媒體密鑰以與n進制樹的結(jié)構(gòu)相關(guān)的次序?qū)懭氲接涗浢襟w;以及撤消信息生成單元,用來對于除葉子外的每個撤消的節(jié)點生成一條撤消信息,表示該被撤消節(jié)點的n個直接從屬節(jié)點中的每個節(jié)點是否分別被撤消,以得到多條撤消信息,并把得到的各條撤消信息按次序?qū)懭氲接涗浢襟w。而且,本發(fā)明是用戶設(shè)備,它由具有與n進制樹(n是不小于2的整數(shù))有關(guān)的至少一個設(shè)備密鑰的密鑰管理設(shè)備指配給一個或多個設(shè)備密鑰,以及根據(jù)被指配的設(shè)備密鑰來加密或解密,其中密鑰管理設(shè)備(a)存儲與n進制樹中至少一個節(jié)點一一對應(yīng)的至少一個設(shè)備密鑰,在從根到葉子的至少一條路徑上的多個節(jié)點被撤消,(b)通過分別使用多個公共設(shè)備密鑰來加密媒體密鑰,以生成多個加密的媒體密鑰,每個公共設(shè)備密鑰是該至少一個設(shè)備密鑰之一,它是與有效的節(jié)點相對應(yīng)的以及被共同指配給至少一個用戶設(shè)備;并把生成的多個加密的媒體密鑰以與n進制樹的結(jié)構(gòu)相關(guān)的次序?qū)懭氲接涗浢襟w,(c)對于除葉子外的每個撤消的節(jié)點生成一條撤消信息,表示該被撤消節(jié)點的n個直接從屬節(jié)點的每個節(jié)點是否分別被撤消,以得到多條撤消信息,和把得到的各條撤消信息按次序?qū)懭氲接涗浢襟w,用戶設(shè)備包括指定單元,用來從根據(jù)被指配給用戶設(shè)備的其中一個設(shè)備密鑰加密的多個加密的媒體密鑰中間,通過使用多條撤消信息,而指定一個加密的媒體密鑰;解密單元,用來根據(jù)被指配給用戶設(shè)備的設(shè)備密鑰、通過解密所指定的加密的媒體密鑰而生成媒體密鑰;以及加密/解密單元,用來執(zhí)行以下項目的至少一項(d)根據(jù)生成的媒體密鑰來加密內(nèi)容和把加密的內(nèi)容寫入到記錄媒體,以及(e)根據(jù)得到的媒體密鑰來解密從記錄媒體讀出的加密的內(nèi)容,以生成內(nèi)容。
按照所闡述的結(jié)構(gòu),按照所闡述的結(jié)構(gòu),密鑰管理設(shè)備把多個加密的密鑰和多條撤消信息按次序?qū)懭氲接涗浢襟w,以及用戶設(shè)備通過使用按次序?qū)懭氲亩鄺l撤消信息,從按次序?qū)懭氲亩鄠€加密的媒體密鑰中間指定加密的媒體密鑰。所以,用戶設(shè)備能夠有效地確定被指配給用戶設(shè)備的、加密的媒體密鑰。
這里,在密鑰管理設(shè)備中,n進制樹可以由多個層組成,密鑰信息生成單元把多個加密的媒體密鑰寫入到記錄媒體的次序可以是從根側(cè)的層到葉側(cè)的層的層次序,根是開始點,以及撤消信息生成單元可以把各條撤消信息按次序?qū)懭氲接涗浢襟w。在用戶設(shè)備中,n進制樹可以由多個層組成,多個加密的媒體密鑰被寫入到記錄媒體的次序可以是從根側(cè)的層到葉側(cè)的層的層次序,根是開始點,各條撤消信息可以按次序被寫入到記錄媒體,以及指定單元可以通過使用按次序?qū)懭氲亩鄺l撤消信息而從按次序?qū)懭氲亩鄠€加密的媒體密鑰中間指定加密的媒體密鑰。
按照所闡述的結(jié)構(gòu),次序是從根側(cè)到葉側(cè)的層的次序,根是開始點。所以密鑰管理設(shè)備和用戶設(shè)備可以可靠地確定次序。
這里,密鑰信息生成單元把多個加密的媒體密鑰寫入到記錄媒體的次序可以是節(jié)點被放置在從根到葉子的路徑上的次序,根是開始點而每個節(jié)點按次序只被包括一次,以及撤消信息生成單元可以把各條撤消信息按次序?qū)懭氲接涗浢襟w。在用戶設(shè)備中,n進制樹可以由多個層組成,多個加密的媒體密鑰被寫入到記錄媒體的次序可以是節(jié)點被放置在從根到葉子的路徑上的次序,根是開始點,而每個節(jié)點按次序只被包括一次,以及各條撤消信息可按次序被寫入到記錄媒體,以及指定單元可以通過使用按次序?qū)懭氲亩鄺l撤消信息而從按次序?qū)懭氲亩鄠€加密的媒體密鑰中間指定加密的媒體密鑰。
按照所闡述的結(jié)構(gòu),次序是從根到葉子的路徑上的節(jié)點的次序,根作為開始點以及沒有任何節(jié)點按次序被重復(fù)地包括。所以,密鑰管理設(shè)備和用戶設(shè)備可以可靠地確定次序。
這里,在密鑰管理設(shè)備中,撤消信息生成單元可以對于除葉子外的每個撤消的節(jié)點生成一條撤消信息。在用戶設(shè)備中,對于除葉子外的每個撤消的節(jié)點可以生成一條撤消信息和將其寫入到記錄媒體,以及指定單元可以通過使用各條撤消信息來指定加密的媒體密鑰。
按照所闡述的結(jié)構(gòu),撤消信息是關(guān)于所有被撤消的節(jié)點生成的,所以,密鑰管理設(shè)備和用戶設(shè)備可以可靠地確定撤消節(jié)點。
這里,在密鑰管理設(shè)備中,撤消信息生成單元可以對于除葉子外的、其從屬節(jié)點都被撤消的每個被撤消節(jié)點生成一條專門的撤消信息,表示從屬節(jié)點都被撤消,對于被撤消的從屬節(jié)點抑制撤消信息的生成,以及對于除葉子外的、其n個從屬節(jié)點沒有被全部撤消的每個被撤消節(jié)點生成一條撤消信息,表示被撤消節(jié)點的n個從屬節(jié)點的每一個是否被分別撤消。在用戶設(shè)備中,可以對于除葉子外的、其從屬節(jié)點都被撤消的每個撤消的節(jié)點生成一條專門的撤消信息,表示從屬節(jié)點都被撤消;可以抑制對于被撤消的從屬節(jié)點的撤消信息的生成;可以對于除葉子外的、其n個從屬節(jié)點沒有被全部撤消的每個撤消的節(jié)點生成一條撤消信息,表示該被撤消節(jié)點的n個從屬節(jié)點的每一個是否分別被撤消,以及指定單元可以通過使用各條專門的撤消信息和各條撤消信息來指定加密的媒體密鑰。
按照所闡述的結(jié)構(gòu),生成專門的撤消信息來表示一個節(jié)點的所有從屬節(jié)點被撤消,所以,當(dāng)有許多節(jié)點,其從屬節(jié)點被全部撤消時,在記錄媒體上的空間可被節(jié)省。
附圖簡述
圖1是數(shù)字作品保護系統(tǒng)10的結(jié)構(gòu)的方框圖;圖2是密鑰管理設(shè)備100的結(jié)構(gòu)的方框圖;圖3是樹結(jié)構(gòu)表D100的數(shù)據(jù)結(jié)構(gòu)的例子;圖4是樹結(jié)構(gòu)表T100的概念圖;圖5是包括撤消的節(jié)點的樹結(jié)構(gòu)表T200的概念圖;圖6是顯示節(jié)點撤消圖案的例子的數(shù)據(jù)結(jié)構(gòu)圖;圖7是顯示包括多個加密的媒體密鑰的密鑰信息的例子的數(shù)據(jù)結(jié)構(gòu)圖;圖8是顯示記錄媒體設(shè)備300a的結(jié)構(gòu)的方框圖;圖9是顯示重現(xiàn)設(shè)備400a的結(jié)構(gòu)的方框圖;圖10是顯示用于指配設(shè)備密鑰給用戶設(shè)備的運行、用于生成密鑰信息和把密鑰信息寫入到記錄媒體的運行、以及用于用戶設(shè)備加密或解密內(nèi)容的運行,以及具體地顯示每個設(shè)備在設(shè)備密鑰被第三方非法暴露時的運行的流程圖;圖11是顯示在設(shè)備密鑰被第三方非法暴露后,用于撤消暴露的設(shè)備密鑰所相應(yīng)的、樹結(jié)構(gòu)中的節(jié)點的運行、用于生成新的密鑰信息和把生成的密鑰信息寫入到記錄媒體的運行、以及用于用戶設(shè)備加密或解密內(nèi)容的運行的流程圖;圖12是顯示由密鑰結(jié)構(gòu)構(gòu)建單元101生成樹結(jié)構(gòu)表和把生成的樹結(jié)構(gòu)表寫入到樹結(jié)構(gòu)存儲單元102的運行的流程圖;圖13是顯示由設(shè)備密鑰指配單元103輸出設(shè)備密鑰和ID信息到每個用戶設(shè)備的運行的流程圖;圖14是顯示由樹結(jié)構(gòu)更新單元105更新樹結(jié)構(gòu)的運行的流程圖;圖15是顯示由密鑰信息標(biāo)題生成單元106生成標(biāo)題信息的運行的流程圖;圖16是顯示由密鑰信息生成單元107生成密鑰信息的運行的流程圖;圖17是顯示由在記錄設(shè)備300a中的指定單元303從被存儲在記錄媒體500b中的密鑰信息中間指定一個加密的媒體密鑰的運行的流程圖;圖18顯示在撤消的用戶設(shè)備可能鄰近樹結(jié)構(gòu)中的特定葉子一側(cè)出現(xiàn)的情形例子中第一實施例的樹結(jié)構(gòu)的例子;
圖19是顯示在第二實施例中、在撤消的用戶設(shè)備鄰近樹結(jié)構(gòu)中的特定葉子一側(cè)出現(xiàn)的情形下專門的NRP的樹結(jié)構(gòu);圖20顯示樹結(jié)構(gòu)表D400的數(shù)據(jù)結(jié)構(gòu)的例子;圖21顯示標(biāo)題信息D500的數(shù)據(jù)結(jié)構(gòu)的例子;圖22顯示密鑰信息D600的數(shù)據(jù)結(jié)構(gòu)的例子;圖23是顯示由密鑰信息標(biāo)題生成單元106生成標(biāo)題信息的運行的流程圖,并在圖24繼續(xù);圖24是顯示由密鑰信息標(biāo)題生成單元106生成標(biāo)題信息的運行的流程圖,并在圖25繼續(xù);圖25是顯示由密鑰信息標(biāo)題生成單元106生成標(biāo)題信息的運行的流程圖,并在圖26繼續(xù);圖26是從圖25接續(xù)的、顯示由密鑰信息標(biāo)題生成單元106生成標(biāo)題信息的運行的流程圖;圖27是顯示由在記錄設(shè)備300a中的指定單元303從被存儲在記錄媒體500b中的密鑰信息中間指定一個加密的媒體密鑰的運行的流程圖;圖28是在第三實施例中顯示專門的NRP的樹結(jié)構(gòu);圖29顯示標(biāo)題信息D700的數(shù)據(jù)結(jié)構(gòu)的例子;圖30顯示密鑰信息D800的數(shù)據(jù)結(jié)構(gòu)的例子;圖31是顯示用于生成標(biāo)題信息的運行的流程圖,并在圖32繼續(xù);圖32是顯示用于生成標(biāo)題信息的運行的流程圖,并在圖33繼續(xù);圖33是顯示用于生成標(biāo)題信息的運行的流程圖,并在圖34繼續(xù);圖34是從圖33接續(xù)的、用于生成標(biāo)題信息的運行的流程圖;圖35是顯示由在記錄設(shè)備300a中的指定單元303從被存儲在記錄媒體500b中的密鑰信息中間指定一個加密的媒體密鑰的運行的流程圖;圖36是在第四實施例中顯示多個NRP如何安排的樹結(jié)構(gòu);圖37顯示樹結(jié)構(gòu)表D1000的數(shù)據(jù)結(jié)構(gòu)的例子;圖38顯示標(biāo)題信息D900的數(shù)據(jù)結(jié)構(gòu)的例子;圖39是顯示由樹結(jié)構(gòu)構(gòu)建單元101生成樹結(jié)構(gòu)表和把樹結(jié)構(gòu)表寫入到樹結(jié)構(gòu)存儲單元102的運行的流程圖;圖40是顯示由密鑰信息標(biāo)題生成單元106生成標(biāo)題信息的運行的流程圖,并在圖41繼續(xù);圖41是從圖40接續(xù)的、由密鑰信息標(biāo)題生成單元106生成標(biāo)題信息的運行的流程圖;圖42是顯示由在記錄設(shè)備300a中的指定單元303從被存儲在記錄媒體500b中的密鑰信息中間指定一個加密的媒體密鑰的運行的流程圖;圖43是顯示由密鑰信息標(biāo)題生成單元106生成標(biāo)題信息的運行的流程圖,并在圖44繼續(xù);圖44是顯示由密鑰信息標(biāo)題生成單元106生成標(biāo)題信息的運行的流程圖,并在圖45繼續(xù);圖45是顯示由密鑰信息標(biāo)題生成單元106生成標(biāo)題信息的運行的流程圖,并在圖46繼續(xù);圖46是從圖45接續(xù)的、顯示由密鑰信息標(biāo)題生成單元106生成標(biāo)題信息的運行的流程圖;圖47是顯示由在記錄設(shè)備300a中的指定單元303從被存儲在記錄媒體500b中的密鑰信息中間指定一個加密的媒體密鑰的運行的流程圖;圖48是顯示數(shù)字作品保護系統(tǒng)10f的結(jié)構(gòu)的方框圖;圖49是包括被指配給已撤消的設(shè)備KeyA、KeyB和KeyE的節(jié)點的樹結(jié)構(gòu)T700的概念圖;圖50是顯示標(biāo)題信息D1000和密鑰信息D1010的數(shù)據(jù)結(jié)構(gòu)圖;以及圖51是顯示由記錄設(shè)備300a的指定單元303指定加密的媒體密鑰的運行的流程圖。
用于實現(xiàn)本發(fā)明的最好模式1.第一實施例下面描述數(shù)字作品保護系統(tǒng)10作為本發(fā)明的第一實施例。
1.1數(shù)字作品保護系統(tǒng)10的結(jié)構(gòu)如圖1所示的、數(shù)字作品保護系統(tǒng)10包括密鑰管理設(shè)備100、密鑰信息記錄設(shè)備200、記錄設(shè)備300a,300b,300c,...(此后稱為“記錄設(shè)備300a等”),和重現(xiàn)設(shè)備400a,400b,400c,...(此后稱為“重現(xiàn)設(shè)備400a等”)。
密鑰管理設(shè)備100具有由密鑰信息記錄設(shè)備200預(yù)先記錄在記錄媒體500a上的密鑰信息,導(dǎo)致事先生成一個其上記錄有密鑰信息的記錄媒體500b。應(yīng)當(dāng)指出,記錄媒體500a是其上未記錄信息的、可記錄的媒體,諸如DVD-RAM(數(shù)字通用盤-隨機存取存儲器)。而且,密鑰管理設(shè)備100把用于解密密鑰信息的設(shè)備密鑰分別指配給每個記錄設(shè)備300a等和每個重現(xiàn)設(shè)備400a等,以及把指配的設(shè)備密鑰、用來標(biāo)識設(shè)備密鑰的設(shè)備密鑰識別信息、和用來標(biāo)識特定的記錄設(shè)備或重現(xiàn)設(shè)備的ID信息事先分發(fā)到記錄設(shè)備300a等和重現(xiàn)設(shè)備400a等中的每一個。
記錄設(shè)備300a加密數(shù)字化的內(nèi)容,以生成加密的內(nèi)容,和把生成的加密內(nèi)容記錄在記錄媒體500b上,導(dǎo)致生成記錄媒體500c。重現(xiàn)設(shè)備400a從記錄媒體500c讀出加密的內(nèi)容,以及解密讀出的加密內(nèi)容,得到原先的內(nèi)容。記錄設(shè)備300b等以與記錄設(shè)備300a相同的方式運行,以及重現(xiàn)設(shè)備400b等以與重現(xiàn)設(shè)備400a相同的方式運行。
應(yīng)當(dāng)指出,此后,“用戶設(shè)備”被用來指記錄設(shè)備300b等和重現(xiàn)設(shè)備400b等。
1.1.1密鑰管理設(shè)備100如圖2所示的、密鑰管理設(shè)備100包括樹結(jié)構(gòu)構(gòu)建單元101、樹結(jié)構(gòu)存儲單元102、設(shè)備密鑰指配單元103、撤消設(shè)備指派單元104、密鑰結(jié)構(gòu)更新單元105、密鑰信息標(biāo)題生成單元106、和密鑰信息生成單元107。
具體地,密鑰管理設(shè)備100是計算機,它包括微處理器、ROM(只讀存儲器)、RAM(隨機存取存儲器)、硬盤單元、顯示單元、鍵盤、和鼠標(biāo)。計算機程序被存儲在RAM或硬盤單元中。密鑰管理設(shè)備100通過微處理器按計算機程序運行而實現(xiàn)它的功能。
(1)樹結(jié)構(gòu)存儲單元102具體地,樹結(jié)構(gòu)存儲單元102由硬盤單元組成,如圖3所示,它具有樹結(jié)構(gòu)表D100。
樹結(jié)構(gòu)表D100相應(yīng)于作為一個例子在圖4上顯示的樹結(jié)構(gòu)T100,并且顯示了一種用于表達樹結(jié)構(gòu)T100的數(shù)據(jù)結(jié)構(gòu)。正如后面描述的,用于表達樹結(jié)構(gòu)T100的數(shù)據(jù)結(jié)構(gòu)由樹結(jié)構(gòu)構(gòu)建單元101生成,作為樹結(jié)構(gòu)表D100,以及被存儲在樹結(jié)構(gòu)存儲單元102。
<樹結(jié)構(gòu)T100>
如圖所示的、樹結(jié)構(gòu)T100是二叉樹,它具有5層層0到層4。因為樹結(jié)構(gòu)T100是二叉樹,所以在樹結(jié)構(gòu)T100中的每個節(jié)點(不包括葉子)通過兩條路徑被連接到在該節(jié)點的更下面的兩個節(jié)點。作為根的一個節(jié)點被包括在層0,兩個節(jié)點被包括在層1,四個節(jié)點被包括在層2,八個節(jié)點被包括在層3,以及作為葉子的16個節(jié)點被包括在層4。應(yīng)當(dāng)指出,“更下面”是指樹結(jié)構(gòu)的葉子一側(cè),而“更上面”是指樹結(jié)構(gòu)的根一側(cè)。
把樹結(jié)構(gòu)T100中的一個節(jié)點(不包括葉子)與它的直接從屬的節(jié)點相連接的兩條路徑中每條路徑都被指配一個號碼,左面的路徑被指配以“0”,以及右面的路徑被指配以“1”。這里,在圖4上,向下分支到節(jié)點的左面以連接左面節(jié)點的路徑被稱為左路徑。向下分支到節(jié)點的右面以連接右面節(jié)點的路徑被稱為右路徑。
給每個節(jié)點指配一個節(jié)點名稱。根節(jié)點的名稱是“根”。在從層1向下的層中的每個節(jié)點被給予字符串作為節(jié)點名稱。在字符串中的字符數(shù)目等于該層的號碼,并且它是通過按這個順序來排列指配給在從根的節(jié)點到該節(jié)點的相同路徑上每個節(jié)點的號碼而生成的。例如,在層1中的兩個節(jié)點的節(jié)點名稱分別是“0”和“1”。在層2中的四個節(jié)點的節(jié)點名稱分別是“00”,“01”,“10”和“11”。在層3中的八個節(jié)點的節(jié)點名稱分別是“000”,“001”,“010”,“011”,...,“101”,“110”和“111”。在層4中的8個節(jié)點的節(jié)點名稱分別是“0000”,“0001”,“0010”,“0011”,...,“1100”,“1101”,“1110”和“1111”。
<樹結(jié)構(gòu)表D100>
樹結(jié)構(gòu)表D100包括各條節(jié)點信息,其在數(shù)目上等于樹結(jié)構(gòu)T100中的節(jié)點。每條節(jié)點信息相應(yīng)于樹結(jié)構(gòu)T100中的一個節(jié)點。
每條節(jié)點信息包括設(shè)備密鑰和撤消標(biāo)志。
每個節(jié)點名稱標(biāo)識一條特定節(jié)點信息所對應(yīng)的節(jié)點。
每個設(shè)備密鑰被指配給相應(yīng)于一條節(jié)點信息的節(jié)點。
另外,每個撤消標(biāo)志表示相應(yīng)于該條節(jié)點信息的設(shè)備密鑰是否已被撤消。被設(shè)置為“0”的撤消標(biāo)志顯示設(shè)備密鑰未被撤消,而被設(shè)置為“1”的撤消標(biāo)志顯示設(shè)備密鑰被撤消。
每條節(jié)點信息按由以下的排序法則1顯示的次序被存儲在樹結(jié)構(gòu)表D100。當(dāng)記錄設(shè)備300a等和重現(xiàn)設(shè)備400a等從樹結(jié)構(gòu)表D100順序讀出節(jié)點信息時也應(yīng)用排序法則1。
(a)相應(yīng)于在每層中的節(jié)點的節(jié)點信息以樹結(jié)構(gòu)T100中的層號碼上升的次序被存儲在樹結(jié)構(gòu)表D100。具體地,首先相應(yīng)于層0中的一個根的一條節(jié)點信息被存儲,然后相應(yīng)于層1中的兩個節(jié)點的兩條節(jié)點信息,接著,相應(yīng)于層2中的四個節(jié)點的四條節(jié)點信息等等,以相同的方式被存儲。
(b)在每層內(nèi),相應(yīng)于層中每個節(jié)點的各條節(jié)點信息以節(jié)點名稱上升的次序被存儲。
具體地,各條節(jié)點信息按以下的次序被存儲在樹結(jié)構(gòu)表D100中,如圖3所示“根”,“0”,“1”,“00”,“01”,“10”,“11”,“000”,“001”,“010”,“011”,...,“101”,“110”,“111”,“0000”,“0001”,“0010”,“0011”,...,“1100”,“1101”,“1110”,“1111”。
這里,各條節(jié)點信息被存儲的次序由被包括在每條節(jié)點信息中的節(jié)點名稱表示。
(2)樹結(jié)構(gòu)構(gòu)建單元101樹結(jié)構(gòu)構(gòu)建單元101,如下面描述的,構(gòu)建用于管理設(shè)備密鑰的n進制數(shù)據(jù)結(jié)構(gòu),以及把構(gòu)建的樹結(jié)構(gòu)存儲在樹結(jié)構(gòu)存儲單元102中。這里,n是等于或大于2的整數(shù)。作為例子,n=2。
樹結(jié)構(gòu)構(gòu)建單元101首先生成帶有將“根”作為節(jié)點名稱的一條節(jié)點信息,以及把生成的這條節(jié)點信息寫入到樹結(jié)構(gòu)存儲單元102中的樹結(jié)構(gòu)表中。
接著,樹結(jié)構(gòu)構(gòu)建單元101生成標(biāo)識層1的兩個節(jié)點的節(jié)點名稱“0”和“1”,生成分別包括生成的節(jié)點名稱“0”和“1”的兩條節(jié)點信息,以及按所闡述的次序把兩條生成的節(jié)點信息寫入到樹結(jié)構(gòu)存儲單元102中的樹結(jié)構(gòu)表。
接著,樹結(jié)構(gòu)構(gòu)建單元101生成標(biāo)識層2的四個節(jié)點的四個節(jié)點名稱“00”,“01”,“10”和“11”,生成分別包括“00”,“01”,“10”和“11”的四條節(jié)點信息,以及按所闡述的次序把四條生成的節(jié)點信息加到樹結(jié)構(gòu)表。
此后,樹結(jié)構(gòu)構(gòu)建單元101按所闡述的次序生成層3和層4的節(jié)點信息,以及按上述相同的方式把生成的節(jié)點信息寫入到樹結(jié)構(gòu)表。
接著,樹結(jié)構(gòu)構(gòu)建單元101通過使用隨機數(shù)而生成對于樹結(jié)構(gòu)中的每個節(jié)點的設(shè)備密鑰,以及把生成的設(shè)備密鑰寫入到相應(yīng)于各個節(jié)點的樹結(jié)構(gòu)。
(3)設(shè)備密鑰指配單元103設(shè)備密鑰指配單元103,如下所述,選擇相應(yīng)于尚未被指配給用戶設(shè)備的葉子的設(shè)備密鑰和要要被指配設(shè)備密鑰的用戶設(shè)備,以及把選擇的設(shè)備密鑰輸出到用戶設(shè)備。
設(shè)備密鑰指配單元103具有變量ID,其長度是四比特。
設(shè)備密鑰指配單元103執(zhí)行下面描述的處理(a)到(f)16次。每次,變量ID具有以下的數(shù)值之一“0000”,“0001”,“0010”...,“1110”,和“1111”。通過執(zhí)行該處理16次,設(shè)備密鑰指配單元103指配ID信息和五個設(shè)備密鑰給16個用戶設(shè)備的每個用戶設(shè)備。
(a)設(shè)備密鑰指配單元103從樹結(jié)構(gòu)存儲單元102的樹結(jié)構(gòu)表中得到包括節(jié)點名稱“根”的該條節(jié)點信息,以及從得到的節(jié)點信息中提取設(shè)備密鑰。提取的設(shè)備密鑰是指配給根的設(shè)備密鑰。
(b)設(shè)備密鑰指配單元103從樹結(jié)構(gòu)存儲單元102的樹結(jié)構(gòu)表中得到包括作為變量ID的標(biāo)題比特的節(jié)點名稱的該條節(jié)點信息,以及從得到的節(jié)點信息中提取該設(shè)備密鑰。此后,這個設(shè)備密鑰被稱為設(shè)備密鑰A。
(c)設(shè)備密鑰指配單元103從樹結(jié)構(gòu)存儲單元102的樹結(jié)構(gòu)表中得到包括作為變量ID的頭兩個比特的節(jié)點名稱的該條節(jié)點信息,以及從得到的節(jié)點信息中提取設(shè)備密鑰。此后,這個設(shè)備密鑰被稱為設(shè)備密鑰B。
(d)設(shè)備密鑰指配單元103從樹結(jié)構(gòu)存儲單元102的樹結(jié)構(gòu)表中得到包括作為變量ID的頭三個比特的節(jié)點名稱的該條節(jié)點信息,以及從得到的節(jié)點信息中提取設(shè)備密鑰。此后,這個設(shè)備密鑰被稱為設(shè)備密鑰C。
(e)設(shè)備密鑰指配單元103從樹結(jié)構(gòu)存儲單元102的樹結(jié)構(gòu)表中得到包括作為變量ID的頭四個比特的節(jié)點名稱的該條節(jié)點信息,以及從得到的節(jié)點信息中提取設(shè)備密鑰。此后,這個設(shè)備密鑰被稱為設(shè)備密鑰D。
(f)設(shè)備密鑰指配單元103把ID信息、指配給根的設(shè)備密鑰、指配給每個節(jié)點的設(shè)備密鑰A,B,C,和D、以及五條設(shè)備密鑰識別信息寫入到用戶設(shè)備中的密鑰信息存儲單元。應(yīng)當(dāng)指出,ID信息是變量ID,而五條識別信息的設(shè)備密鑰分別標(biāo)識五個設(shè)備密鑰。
這樣,在每個用戶設(shè)備中的密鑰信息存儲單元存儲ID信息、五條設(shè)備密鑰識別信息、和五個設(shè)備密鑰,正如圖8上的一個例子顯示的。這里,五條設(shè)備密鑰識別信息和五個設(shè)備密鑰被相應(yīng)地存儲。每條設(shè)備密鑰識別信息是相應(yīng)的設(shè)備密鑰被指配到的層的號碼(層號)。
這樣,ID信息和五個設(shè)備密鑰被指配給16個用戶設(shè)備的每個用戶設(shè)備。
作為一個例子,圖4所示的樹結(jié)構(gòu)T100,如上所述,是具有5層的二叉樹,以及包括16個葉子。這里,假設(shè)有16個用戶設(shè)備,每個用戶設(shè)備相應(yīng)于其中一個葉子。每個用戶設(shè)備配備有設(shè)備密鑰,該設(shè)備密鑰被指配給在從相應(yīng)的葉子到根的路徑上的節(jié)點。例如,用戶設(shè)備1配備有5個設(shè)備密鑰IK1,KeyH,KeyD,KeyB,和KeyA。例如,用戶設(shè)備1還配備有ID信息“0000”,和用戶設(shè)備14還配備有ID信息“1101”。
(4)撤消設(shè)備指派單元104撤消設(shè)備指派單元104從密鑰管理設(shè)備100的管理者接收標(biāo)識要被撤消的至少一個用戶設(shè)備的至少一條條ID信息,以及把接收的ID信息輸出到密鑰結(jié)構(gòu)更新單元105。
(5)密鑰結(jié)構(gòu)更新單元105密鑰結(jié)構(gòu)更新單元105從撤消設(shè)備指派單元104接收至少一條ID信息,以及在接收ID信息后,對于至少一條ID信息的每條ID信息執(zhí)行以下的處理(a)到(d)。
(a)密鑰結(jié)構(gòu)更新單元105從樹結(jié)構(gòu)存儲單元102中的樹結(jié)構(gòu)表得到包括接收的ID信息的該條節(jié)點信息作為節(jié)點名稱,把撤消標(biāo)志“1”附著到所得到的節(jié)點信息,以及把附著有撤消標(biāo)志“1”的節(jié)點信息寫入到存儲有所得節(jié)點信息的、樹結(jié)構(gòu)表中的位置,因此,用附著有撤消標(biāo)志的節(jié)點信息覆蓋原先的該條節(jié)點信息。
(b)密鑰結(jié)構(gòu)更新單元105從樹結(jié)構(gòu)存儲單元102中的樹結(jié)構(gòu)表得到包括接收的ID信息的頭三個比特作為節(jié)點名稱的該條節(jié)點信息,把撤消標(biāo)志“1”附著到該條得到的節(jié)點信息,以及以與上述的相同的方式覆蓋樹結(jié)構(gòu)表中原先的該條節(jié)點信息。
(c)密鑰結(jié)構(gòu)更新單元105從樹結(jié)構(gòu)存儲單元102中的樹結(jié)構(gòu)表得到包括接收的ID信息的頭兩個比特作為節(jié)點名稱的該條節(jié)點信息,把撤消標(biāo)志“1”附著到該條得到的節(jié)點信息,以及以與上述的相同的方式覆蓋樹結(jié)構(gòu)表中原先的該條節(jié)點信息。
(d)密鑰結(jié)構(gòu)更新單元105從樹結(jié)構(gòu)存儲單元102中的樹結(jié)構(gòu)表得到包括“根”作為節(jié)點名稱的該條節(jié)點信息,把撤消標(biāo)志“1”附著到該條得到的節(jié)點信息,以及以與上述的相同的方式覆蓋樹結(jié)構(gòu)表中原先的該條節(jié)點信息。
正如已描述的,密鑰結(jié)構(gòu)更新單元105根據(jù)從撤消設(shè)備指派單元104接收的ID信息,撤消在樹結(jié)構(gòu)中從由接收的信息表示的葉子到根的路徑上所有的節(jié)點。
假設(shè)圖4所示的樹結(jié)構(gòu)T100中由ID信息“0000”,“1010”,和“1011”表示的用戶設(shè)備是要被撤消的,則最后得到的樹結(jié)構(gòu)T200是如圖5所示的樹結(jié)構(gòu),其中節(jié)點已按上述的方式被撤消。
而且,樹結(jié)構(gòu)表D100具有相應(yīng)于樹結(jié)構(gòu)T200的撤消標(biāo)志。
在樹結(jié)構(gòu)T200中,在從相應(yīng)于由ID信息“0000”表示的用戶設(shè)備1的葉子到根的路徑上所有的節(jié)點,在從相應(yīng)于由ID信息“1010”表示的用戶設(shè)備11的葉子到根的路徑上所有的節(jié)點,和在從相應(yīng)于由ID信息“1011”表示的用戶設(shè)備12的葉子到根的路徑上所有的節(jié)點,被標(biāo)記以叉號(×)。每個叉號表示撤消的節(jié)點。
在樹結(jié)構(gòu)表D100中相應(yīng)于其中一個撤消的節(jié)點的每條節(jié)點信息附著有一個撤消標(biāo)志。
(6)密鑰信息標(biāo)題生成單元106密鑰信息標(biāo)題生成單元106具有表示一個層的號碼的變量i,和表示該層中的節(jié)點名稱的變量j。
密鑰信息標(biāo)題生成單元106對于樹結(jié)構(gòu)中每個層執(zhí)行下述的處理(a)。每次密鑰信息標(biāo)題生成單元106執(zhí)行處理,表示層號碼的變量i具有數(shù)值“0”,“1”,“2”,或“3”。
(a)密鑰信息標(biāo)題生成單元106對于其層號由變量i表示的層中的每個節(jié)點執(zhí)行處理(a-1)到(a-3)。這里,作為處理(a-1)到(a-3)的目標(biāo)的節(jié)點名稱由變量j表示。
(a-1)密鑰信息標(biāo)題生成單元106從樹結(jié)構(gòu)存儲單元102中的樹結(jié)構(gòu)表得到包括通過聯(lián)合變量j與“0”而得到的節(jié)點名稱的該條節(jié)點信息和包括通過聯(lián)合變量j與“1”而得到的節(jié)點名稱的該條節(jié)點信息。
這樣得到的兩條節(jié)點信息相應(yīng)于直接從屬于(即,被連接到的和緊接在下面的)由變量j表示的目標(biāo)節(jié)點的兩個節(jié)點。
(a-2)密鑰信息標(biāo)題生成單元106檢驗被包括在兩條得到的節(jié)點信息中每條的撤消標(biāo)志是否為“0”。如果二者都不是“0”,則密鑰信息標(biāo)題生成單元106通過按照兩條節(jié)點信息被存儲在樹結(jié)構(gòu)表中的次序來安排分別包括在兩條得到的節(jié)點信息中的這兩個撤消標(biāo)志,而生成節(jié)點撤消圖案(此后稱為NRP)。
具體地,當(dāng)在兩條得到的節(jié)點信息中的撤消標(biāo)志分別是“0”和“0”時,密鑰信息標(biāo)題生成單元106不生成NRP。
而且,當(dāng)在兩條得到的節(jié)點信息中的撤消標(biāo)志分別是“1”和“0”時,密鑰信息標(biāo)題生成單元106生成NRP{10}。
當(dāng)在兩條得到的節(jié)點信息中的撤消標(biāo)志分別是“0”和“1”時,密鑰信息標(biāo)題生成單元106生成NRP{01}。
當(dāng)在兩條得到的節(jié)點信息中的撤消標(biāo)志分別是“1”和“1”時,密鑰信息標(biāo)題生成單元106生成NRP{11}。
(a-3)密鑰信息標(biāo)題生成單元106把生成的NRP輸出到密鑰信息記錄設(shè)備200。
以所描述的方式,密鑰信息標(biāo)題生成單元106對于層中的每個節(jié)點檢驗?zāi)繕?biāo)節(jié)點的兩個直接從屬的節(jié)點是否被撤消,以及當(dāng)兩個更下面的節(jié)點的任一個或二者被撤消時,生成如上所述的撤消圖案。在圖5所示的樹結(jié)構(gòu)T200中,每個生成的NRP被顯示在相應(yīng)的標(biāo)記有叉號的節(jié)點附近。
而且,由于密鑰信息標(biāo)題生成單元106在圖5所示的情形下,在上述的處理中輸出NRP,所以在圖6上作為一個例子顯示的多個NRP被生成和輸出。密鑰信息標(biāo)題生成單元106輸出這些NRP作為標(biāo)題信息。
在圖5所示的樹結(jié)構(gòu)T200中,用戶設(shè)備1、用戶設(shè)備11和用戶設(shè)備12被撤消。這里,處在從相應(yīng)于每個要被撤消的用戶設(shè)備的葉子到根的路徑上的節(jié)點(換句話說,在圖5上被標(biāo)記以叉號的節(jié)點)被稱為撤消的節(jié)點。而且,NRP通過以從左到右的次序組合節(jié)點的兩個子節(jié)點的狀態(tài)而做成。這里,“1”被使用來表示撤消的子節(jié)點,而“0”被使用來表示未撤消的子節(jié)點。對于n進制樹,每個撤消圖案是長度為n比特的信息。在樹結(jié)構(gòu)T200中根T201的兩個子節(jié)點被撤消,所以根T201的撤消圖案被表示為{11}。節(jié)點T202的撤消圖案被表示為{10}。節(jié)點T203是撤消的節(jié)點,但由于它是葉子,所以沒有任何子節(jié)點,它沒有撤消圖案。
如圖6所示作為一個例子,標(biāo)題信息D200由NRP{11},{10},{10},{10},{01},{10},和{11}組成,它們按所闡述的次序被包括在標(biāo)題信息D200中。
應(yīng)當(dāng)指出,在其中安排節(jié)點信息圖案的標(biāo)題信息D200中的位置被設(shè)置。這些位置按照上述的重復(fù)處理被設(shè)置。如圖6所示,NRP{11},{10},{10},{10},{01},{10},和{11}被分別安排在由“0”,“1”,“2”,“3”,“4”,“5”,和“6”定義的位置。
正如已描述的,密鑰信息標(biāo)題生成單元106提取至少一個撤消的節(jié)點的NRP,以及把提取的至少一個NRP作為密鑰信息的標(biāo)題信息輸出到密鑰信息記錄設(shè)備200。這里,密鑰信息標(biāo)題生成單元106按級的次序排列。換句話說,密鑰信息標(biāo)題生成單元106按從頂層到底層的次序排列多個NRP,以及按從左到右的次序排列同一個層的NRP。應(yīng)當(dāng)指出,NRP根據(jù)某種法則進行排列是足夠的。例如,在同一層中的NRP可以從右到左排列。
(7)密鑰信息生成單元107密鑰信息生成單元107具有表示層號的變量i,和表示層中的節(jié)點名稱的變量j,與密鑰信息標(biāo)題生成單元106相同。
密鑰信息生成單元107對于樹結(jié)構(gòu)中除0層外的每個層執(zhí)行下述的處理(a)。在對于每層執(zhí)行處理(a)時,表示層號的變量i持有數(shù)值“1”,“2”,或“3”。
(a)密鑰信息生成單元107對于其層號由變量i表示的層中的每個節(jié)點執(zhí)行處理(a-1)到(a-3)。這里,作為處理(a-1)到(a-3)的目標(biāo)的節(jié)點的名稱由變量j表示。
(a-1)密鑰信息生成單元107從樹結(jié)構(gòu)存儲單元102中的樹結(jié)構(gòu)表得到包括變量j作為節(jié)點名稱的該條節(jié)點信息,以及判斷在得到的節(jié)點信息中的撤消標(biāo)志是“1”還是“0”。
(a-2)當(dāng)撤消標(biāo)志是“0”時,密鑰信息生成單元107還判斷是否已使用相應(yīng)于被直接連接在目標(biāo)節(jié)點之上的節(jié)點的設(shè)備密鑰來執(zhí)行加密。
(a-3)當(dāng)沒有使用相應(yīng)于被直接連接在目標(biāo)節(jié)點之上的節(jié)點的設(shè)備密鑰執(zhí)行加密時,密鑰信息生成單元107從該條得到的節(jié)點信息提取設(shè)備密鑰,以及藉助于提取的設(shè)備密鑰、通過應(yīng)用加密算法E1,加密生成的媒體密鑰,以生成加密的媒體密鑰。
加密的媒體密鑰=E1(設(shè)備密鑰,媒體密鑰)這里,E(A,B)表示數(shù)據(jù)B通過應(yīng)用加密算法E、藉助于密鑰A被加密。
加密算法E1的一個例子是DES(數(shù)據(jù)加密標(biāo)準(zhǔn))。
接著,密鑰信息生成單元107把生成的加密的媒體密鑰輸出到密鑰信息記錄設(shè)備200。
應(yīng)當(dāng)指出,當(dāng)撤消標(biāo)志是“1”時,或當(dāng)加密被執(zhí)行時,密鑰信息生成單元107不執(zhí)行處理(a-3)。
由于密鑰信息生成單元107在圖5所示的情形下,如描述地重復(fù)執(zhí)行上述處理,諸如圖7的例子中顯示的那樣的多個加密的媒體密鑰被生成和輸出。密鑰信息生成單元107輸出多個加密的媒體密鑰作為密鑰信息D300。
應(yīng)當(dāng)指出,媒體密鑰被存儲在密鑰信息D300中的位置被設(shè)置。這些位置按上述的處理被設(shè)置。如圖7所示,加密的媒體密鑰E1(KeyR,媒體密鑰),E1(KeyG,媒體密鑰),E1(KeyI,媒體密鑰),E1(KeyL,媒體密鑰)和E1(IK2,媒體密鑰)分別被存儲在由”0”,”1”,”2”,”3”和”4”定義的位置。
1.1.2密鑰信息記錄設(shè)備200密鑰信息記錄設(shè)備200從密鑰信息標(biāo)題生成單元106接收標(biāo)題信息,從密鑰信息生成單元107接收密鑰信息,并把接收的標(biāo)題信息和密鑰信息寫入到記錄媒體500a。
1.1.3記錄媒體500a,b,和c記錄媒體500a是可記錄的媒體,諸如DVD-RAM,它不存儲任何種類的信息。
記錄媒體500b是由密鑰管理設(shè)備100和密鑰信息記錄設(shè)備200以先前描述的方式把附著有標(biāo)題信息的密鑰信息寫到其上的記錄媒體500a。
記錄媒體500c是由任何記錄設(shè)備300a等以先前描述的方式把加密的內(nèi)容寫到其上的記錄媒體500b。
如圖8所示,其上附著有標(biāo)題信息的密鑰信息和加密內(nèi)容被記錄在記錄媒體500c。
1.1.4記錄設(shè)備300a等圖8上顯示的記錄設(shè)備300a由密鑰信息存儲單元301、解密單元302、指定單元303、加密單元304、和內(nèi)容存儲單元305組成。應(yīng)當(dāng)指出,記錄設(shè)備300b等其有與記錄設(shè)備300a相同的結(jié)構(gòu),所以,省略其說明。
記錄設(shè)備300a包括微處理器、ROM、和RAM。計算機程序被存儲在RAM中。記錄設(shè)備300a通過微處理器按照計算機程序運行而實現(xiàn)它的功能。
記錄媒體500b被裝載到記錄設(shè)備300a。記錄設(shè)備300a根據(jù)被記錄設(shè)備300a本身存儲的ID信息來分析被存儲在記錄媒體500b上的標(biāo)題信息,用于指定要被解密的加密媒體密鑰和要被使用的設(shè)備密鑰的位置,以及使用指定的設(shè)備密鑰來解密該加密的媒體密鑰和因此得到媒體密鑰。接著,記錄設(shè)備300a藉助于得到的媒體密鑰加密數(shù)字化的內(nèi)容,以及把解密的內(nèi)容記錄在記錄媒體500b。
(1)密鑰信息存儲單元301密鑰信息存儲單元301具有用于存儲ID信息、五個設(shè)備密鑰、和用于分別標(biāo)識五個設(shè)備密鑰的五條設(shè)備密鑰標(biāo)識的區(qū)域。
(2)指定單元303指定單元303工作在以下的假設(shè)下在密鑰管理設(shè)備100中的密鑰信息標(biāo)題生成單元106遵循如前所述的排序法則1已生成密鑰信息的標(biāo)題信息。
指定單元303從密鑰信息存儲單元301讀出ID信息。指定單元303也從記錄媒體500b讀出標(biāo)題信息和密鑰信息。接著,指定單元303藉助于讀出的ID信息和讀出的標(biāo)題信息,通過從頂部順序地檢驗各條標(biāo)題信息,來指定一個加密的媒體密鑰在密鑰信息中的位置X,以及指定標(biāo)識在解密該加密的媒體密鑰時要被使用的設(shè)備密鑰的該條設(shè)備密鑰識別信息。應(yīng)當(dāng)指出,用于指定加密的媒體密鑰的位置X和指定該條設(shè)備密鑰識別信息的運行的細節(jié)在后面描述。
接著,指定單元303將指定的加密的媒體密鑰和指定的設(shè)備識別信息輸出到解密單元302。
(3)解密單元302解密單元302從指定單元303接收加密的媒體密鑰和設(shè)備密鑰識別信息。一接收加密的媒體密鑰和該條設(shè)備密鑰識別信息,解密單元302就從密鑰信息存儲單元301讀出由該條接收的設(shè)備密鑰識別信息所標(biāo)識的設(shè)備密鑰,以及藉助于讀出的設(shè)備密鑰、通過施加解密算法D1,解密接收的加密的媒體密鑰,以生成媒體密鑰。
媒體密鑰=D1(設(shè)備密鑰,加密的媒體密鑰)這里,D(A,B)表示藉助于密鑰A、通過施加解密算法D,解密加密的數(shù)據(jù)B,以生成原先的數(shù)據(jù)。
而且,解密算法D1相應(yīng)于加密算法E1,它是用于解密已通過施加加密算法E1被加密的數(shù)據(jù)的算法。
接著,解密單元302把生成的媒體密鑰輸出到密鑰信息更新單元304。
應(yīng)當(dāng)指出,圖8上顯示的每個塊通過連接線被連接到塊,但某些連接線被省略。這里,每條連接線代表信號和信息傳送時經(jīng)過的路徑。而且,在被連接到代表解密單元302的塊的連接線中,其上標(biāo)有密鑰標(biāo)記的線代表信息被傳送到解密單元302作為密鑰所經(jīng)過的路徑。這對于密鑰信息更新單元304是相同的,以及對于其他圖上的其他塊也是相同的。
(4)內(nèi)容存儲單元305內(nèi)容存儲單元305存儲作為數(shù)字作品的內(nèi)容,諸如數(shù)字化音樂。
(5)加密單元304加密單元304從解密單元302接收媒體密鑰,以及從內(nèi)容存儲單元305讀出內(nèi)容。接著,加密單元304藉助于接收的媒體密鑰、通過施加加密算法E2,加密讀出的內(nèi)容,以生成加密的內(nèi)容。
加密的內(nèi)容=E2(媒體密鑰,內(nèi)容)這里,加密算法E2,例如,是DES加密算法。
接著,加密單元304把生成的加密的內(nèi)容寫入到記錄媒體500b。這導(dǎo)致生成其上寫入加密的內(nèi)容的記錄媒體500c。
1.1.5重現(xiàn)設(shè)備400a,400b,400c圖9所示的重現(xiàn)設(shè)備400a由密鑰信息存儲單元401、指定單元402、解密單元403、解密單元404和重現(xiàn)單元405組成。應(yīng)當(dāng)指出,重現(xiàn)設(shè)備400b等具有與重現(xiàn)設(shè)備400a相同的結(jié)構(gòu),所以省略其說明。
重現(xiàn)設(shè)備400a具體包括微處理器、ROM、和RAM。計算機程序被存儲在RAM中。重現(xiàn)設(shè)備400a通過微處理器按照計算機程序運行而實現(xiàn)它的功能。
這里,密鑰信息存儲單元401、指定單元402、和解密單元403分別具有與密鑰信息存儲單元301、指定單元303、和解密單元302相同的結(jié)構(gòu),所以省略其說明。
記錄媒體500c被裝載到重現(xiàn)設(shè)備400a。重現(xiàn)設(shè)備400a根據(jù)重現(xiàn)設(shè)備400a本身存儲的ID信息,分析被存儲在記錄媒體500c上的標(biāo)題信息,以指定要被解密的加密媒體密鑰和要被使用的設(shè)備密鑰的位置,以及使用指定的設(shè)備密鑰來解密該指定的加密的媒體密鑰,以得到媒體密鑰。接著,重現(xiàn)設(shè)備400a藉助于得到的媒體密鑰來解密被存儲在記錄媒體500c上的加密的內(nèi)容,以重現(xiàn)內(nèi)容。
(1)解密單元404解密密鑰404從解密單元403接收媒體密鑰,從記錄媒體500c讀出加密的內(nèi)容,藉助于接收的媒體密鑰、通過施加解密算法D2,解密讀出的加密的內(nèi)容,以生成內(nèi)容,以及把生成的內(nèi)容輸出到重現(xiàn)單元405。
內(nèi)容=D2(媒體密鑰,加密的內(nèi)容)這里,解密算法D2相應(yīng)于加密算法E2,它是用于解密通過施加加密算法E2被加密的數(shù)據(jù)的算法。
(2)重現(xiàn)單元405重現(xiàn)單元405從解密單元404接收內(nèi)容,以及重現(xiàn)接收的內(nèi)容。例如,當(dāng)內(nèi)容是音樂時,重現(xiàn)單元405把內(nèi)容變換成音頻,以及輸出音頻。
1.2數(shù)字作品保護系統(tǒng)10的運行下面描述數(shù)字作品保護系統(tǒng)10的運行。
1.2.1用于指配設(shè)備密鑰、生成記錄媒體、和加密或解密內(nèi)容的運行這里,圖10的流程圖被使用來描述用于指配設(shè)備密鑰給每個用戶設(shè)備的運行、用于生成密鑰信息和把密鑰信息寫入到記錄媒體的運行、和由用戶設(shè)備加密或解密內(nèi)容的運行。具體地,描述直到設(shè)備密鑰被第三方非法暴露之前的運行。
在密鑰管理設(shè)備100中的樹結(jié)構(gòu)構(gòu)建單元101生成表示樹結(jié)構(gòu)的樹結(jié)構(gòu)表,以及把生成的樹結(jié)構(gòu)表寫入到樹結(jié)構(gòu)存儲單元102(步驟S101)。接著,樹結(jié)構(gòu)構(gòu)建單元101生成用于樹結(jié)構(gòu)的每個節(jié)點的設(shè)備密鑰,以及把與各個節(jié)點對應(yīng)的每個生成的設(shè)備密鑰寫入到樹結(jié)構(gòu)表中(步驟S102)。接著,設(shè)備密鑰指配單元103把設(shè)備密鑰、設(shè)備密鑰信息和ID信息輸出到相應(yīng)的用戶設(shè)備(步驟S103到S104)。用戶設(shè)備的密鑰信息存儲單元接收設(shè)備密鑰、設(shè)備密鑰識別信息和ID信息(步驟S104),以及記錄接收的設(shè)備密鑰、設(shè)備密鑰識別信息和ID信息(步驟S111)。
這樣,制造其上記錄有設(shè)備密鑰、設(shè)備密鑰識別信息和ID信息的用戶設(shè)備,以及把制造的用戶設(shè)備銷售給用戶。
接著,密鑰信息生成單元107生成媒體密鑰(步驟S105),生成密鑰信息(步驟S106),和通過密鑰信息記錄設(shè)備200把生成的密鑰信息輸出到記錄媒體500a(步驟S107到S108)。記錄媒體500a存儲密鑰信息(步驟S121)。
這樣,生成了其上記錄有密鑰信息的記錄媒體500b,然后,例如通過銷售,把該記錄媒體分發(fā)到用戶。
接著,其上記錄有密鑰信息的記錄媒體被裝載到用戶設(shè)備,以及用戶設(shè)備從記錄媒體讀出密鑰信息(步驟S131),使用讀出的密鑰信息來指定被指配給用戶設(shè)備本身的、加密的媒體密鑰(步驟S132),以及解密該媒體密鑰(步驟S133)。然后,用戶設(shè)備或者通過使用解密的媒體密鑰來加密內(nèi)容以及把加密的內(nèi)容寫入到記錄媒體500b,或者從記錄媒體500c讀出記錄的加密的內(nèi)容,以及通過使用媒體密鑰來解密讀出的加密的內(nèi)容,以生成內(nèi)容(步驟134)。
這樣,加密的內(nèi)容被用戶設(shè)備寫入到記錄媒體500b,以及被記錄在記錄媒體500c上的加密的內(nèi)容由用戶設(shè)備讀出和解密,然后被重現(xiàn)。
接著,第三方通過某種手段非法得到設(shè)備密鑰。第三方使內(nèi)容非法流通,以及制造和銷售非法的設(shè)備,它們是合法的用戶設(shè)備的假冒仿制品。
密鑰管理設(shè)備100的管理者或內(nèi)容的版權(quán)持有人發(fā)現(xiàn)內(nèi)容正在非法流通,或非法設(shè)備正在流通,所以知道設(shè)備密鑰已被泄漏。
1.2.2設(shè)備密鑰暴露后的運行這里,使用圖11的流程圖來描述在設(shè)備密鑰被第三方非法暴露后,用于撤消在樹結(jié)構(gòu)中相應(yīng)于暴露的設(shè)備密鑰的節(jié)點的運行、用于生成新的密鑰信息和把生成的密鑰信息寫入到記錄媒體的運行、和由用戶設(shè)備加密或解密內(nèi)容的運行。
密鑰管理設(shè)備100的撤消設(shè)備指派單元104接收有關(guān)至少一個要被撤消的用戶設(shè)備的至少一條ID信息,以及把接收的ID信息輸出到密鑰結(jié)構(gòu)更新單元105(步驟S151)。接著,密鑰結(jié)構(gòu)更新單元105接收ID信息,以及通過使用接收的ID信息來更新樹結(jié)構(gòu)(步驟S152)。密鑰信息標(biāo)題生成單元106生成標(biāo)題信息,以及把生成的標(biāo)題信息輸出到密鑰信息記錄設(shè)備200(步驟S153)。密鑰信息生成單元107生成媒體密鑰(步驟S154),生成密鑰信息(步驟S155),以及通過密鑰信息記錄設(shè)備200輸出生成的密鑰信息(步驟S156到157),該密鑰信息記錄設(shè)備把密鑰信息記錄在記錄媒體500a上(步驟S161)。
這樣,生成了其上記錄有密鑰信息的記錄媒體500b,然后,例如通過銷售,把它分發(fā)到用戶。
接著,其上記錄有密鑰信息的記錄媒體被裝載到用戶設(shè)備,以及用戶設(shè)備從記錄媒體讀出密鑰信息(步驟S171),使用讀出的密鑰信息來指定被指配給用戶設(shè)備本身的加密的媒體密鑰(步驟S172),以及解密該媒體密鑰(步驟S173)。然后,用戶設(shè)備或者通過使用解密的媒體密鑰來加密內(nèi)容以及把加密的內(nèi)容寫入到記錄媒體500b,或者讀出被記錄在記錄媒體500c上的加密的內(nèi)容,以及通過使用媒體密鑰來解密讀出的加密的內(nèi)容,以生成內(nèi)容(步驟174)。
這樣,加密的內(nèi)容被用戶設(shè)備寫入到記錄媒體500b,以及被記錄在記錄媒體500c上的加密的內(nèi)容由用戶設(shè)備讀出和解密,然后被重現(xiàn)。
1.2.3用于構(gòu)建和存儲樹結(jié)構(gòu)的運行這里,使用圖12的流程圖來描述由樹結(jié)構(gòu)構(gòu)建單元101生成樹結(jié)構(gòu)表和把樹結(jié)構(gòu)表寫入到樹結(jié)構(gòu)存儲單元102的運行。應(yīng)當(dāng)指出,這里描述的運行是圖10的流程圖的步驟S101的細節(jié)。
樹結(jié)構(gòu)構(gòu)建單元101生成包括“根”作為節(jié)點名稱的節(jié)點信息,以及把生成的節(jié)點信息寫入到樹結(jié)構(gòu)存儲單元102中的樹結(jié)構(gòu)表(步驟S191)。
接著,樹結(jié)構(gòu)構(gòu)建單元101對于層i(i=1,2,3,4)重復(fù)以下步驟S193到S194。
樹結(jié)構(gòu)構(gòu)建單元101生成2i個字符的串作為節(jié)點名稱(步驟S193),以及把包括2i個字符的串作為節(jié)點名稱的節(jié)點信息按次序?qū)懭氲綐浣Y(jié)構(gòu)表(步驟S194)。
1.2.4用于把設(shè)備密鑰和ID信息輸出到用戶設(shè)備的運行這里,使用圖13的流程圖來描述由設(shè)備密鑰指配單元103把設(shè)備密鑰和ID信息輸出到用戶設(shè)備的運行。應(yīng)當(dāng)指出,這里描述的運行是圖10的流程圖的步驟S103的細節(jié)。
設(shè)備密鑰指配單元103把變量ID改變?yōu)椤?000”,“0001”,“0010”,...,“1110”,和“1111”,以及對于每個變量ID重復(fù)以下步驟S222到S227。
設(shè)備密鑰指配單元103得到被指配給根的設(shè)備密鑰(步驟S222),得到被指配給其節(jié)點名稱是變量ID的頭一個比特的節(jié)點的設(shè)備密鑰A(步驟S223),得到被指配給其節(jié)點名稱是變量ID的頭兩個比特的節(jié)點的設(shè)備密鑰B(步驟S224),得到被指配給其節(jié)點名稱是變量ID的頭三個比特的節(jié)點的設(shè)備密鑰C(步驟S225),得到被指配給其節(jié)點名稱是變量ID的頭四個比特的節(jié)點的設(shè)備密鑰D(步驟S226),以及把指配給每個節(jié)點的設(shè)備密鑰A,B,C,和D輸出到用戶設(shè)備(步驟S227)。
1.2.5用于更新樹結(jié)構(gòu)的運行這里,使用圖14的流程圖來描述由密鑰結(jié)構(gòu)更新單元105更新樹結(jié)構(gòu)的運行。應(yīng)當(dāng)指出,這里描述的運行是圖11的流程圖的步驟S152的細節(jié)。
密鑰結(jié)構(gòu)更新單元105對于從撤消設(shè)備指派單元104接收的至少一條ID信息的每條ID信息執(zhí)行以下步驟S242到S246。
密鑰結(jié)構(gòu)更新單元105得到包括該條接收的ID信息作為節(jié)點名稱的該條節(jié)點信息,以及把撤消標(biāo)志“1”附著到得到的節(jié)點信息上(步驟S242)。
接著,密鑰結(jié)構(gòu)更新單元105得到包括該條接收的ID信息的頭三個比特作為節(jié)點名稱的該條節(jié)點信息,以及把撤消標(biāo)志“1”附著到得到的節(jié)點信息上(步驟S243)。
接著,密鑰結(jié)構(gòu)更新單元105得到包括該條接收的ID信息的頭兩個比特作為節(jié)點名稱的該條節(jié)點信息,以及把撤消標(biāo)志“1”附著到得到的節(jié)點信息上(步驟S244)。
接著,密鑰結(jié)構(gòu)更新單元105得到包括該接收的ID信息的頭一個比特作為節(jié)點名稱的該條節(jié)點信息,以及把撤消標(biāo)志“1”附著到該條得到的節(jié)點信息上(步驟S245)。
接著,密鑰結(jié)構(gòu)更新單元105得到包括“根”作為節(jié)點名稱的該條節(jié)點信息,以及把撤消標(biāo)志“1”附著到該條得到的節(jié)點信息上(步驟S246)。
1.2.6用于生成標(biāo)題信息的運行這里,使用圖15的流程圖來描述由密鑰信息標(biāo)題生成單元106生成標(biāo)題信息的運行。應(yīng)當(dāng)指出,這里描述的運行是圖11的流程圖的步驟S153的細節(jié)。
密鑰信息標(biāo)題生成單元106對于從層0到層3的每個層執(zhí)行步驟S262到S266,以及還對于每個層中的每個目標(biāo)節(jié)點執(zhí)行步驟S263到S265。
密鑰信息標(biāo)題生成單元106選擇目標(biāo)節(jié)點的兩個直接從屬的節(jié)點(步驟S263),檢驗兩個選擇的節(jié)點的每個節(jié)點是否具有附著到其上的撤消標(biāo)志,以生成一個NRP(步驟S264),以及輸出生成的撤消圖案(步驟S265)。
1.2.7用于生成密鑰信息的運行這里,使用圖16的流程圖來描述由密鑰信息生成單元107生成密鑰信息的運行。應(yīng)當(dāng)指出,這里描述的運行是圖11的流程圖的步驟S155的細節(jié)。
密鑰信息生成單元107對于從層1到層3的每個層執(zhí)行步驟S282到S287,以及還對于每個層中的每個目標(biāo)節(jié)點執(zhí)行步驟S283到S286。
密鑰信息生成單元107判斷撤消標(biāo)志“1”是否附著到目標(biāo)節(jié)點。當(dāng)撤消標(biāo)志“1”沒有附著時(步驟S283),密鑰信息生成單元107還判斷是否通過使用相應(yīng)于目標(biāo)節(jié)點的上級節(jié)點的設(shè)備密鑰執(zhí)行加密。當(dāng)沒有執(zhí)行加密時(步驟S284),密鑰信息生成單元107從樹結(jié)構(gòu)表得到相應(yīng)于目標(biāo)節(jié)點的設(shè)備密鑰(步驟S285),通過使用得到的設(shè)備密鑰來加密生成的媒體密鑰,以生成加密的媒體密鑰,以及輸出加密的媒體密鑰(步驟S286)。
當(dāng)撤消標(biāo)志“1”被附著到目標(biāo)節(jié)點時(步驟S283),或當(dāng)已執(zhí)行加密時(步驟S284),密鑰信息生成單元107不執(zhí)行步驟S285到S286。
1.2.8用于指定密鑰信息的運行這里,使用圖17的流程圖來描述由記錄設(shè)備300a的指定單元303從被存儲在記錄媒體500b上的密鑰信息指定加密的媒體密鑰的運行。應(yīng)當(dāng)指出,這里描述的運行是圖11的流程圖的步驟5172的細節(jié)。
還應(yīng)當(dāng)指出,由重現(xiàn)設(shè)備400a的指定單元402執(zhí)行的運行是與由指定單元303執(zhí)行的相同的,所以省略其說明。
指定單元303具有表示加密的媒體密鑰位置的變量X,表示與用戶設(shè)備本身有關(guān)的NRP的位置的變量A,表示一層中NRP的數(shù)目的變量W,和表示樹結(jié)構(gòu)中層的數(shù)目的變量D。這里,與用戶設(shè)備本身有關(guān)的NRP表示在樹結(jié)構(gòu)中處在從被指配給用戶設(shè)備的葉子到根的路徑上的節(jié)點的NRP。
指定單元303按照以下程序分析層i=0到層i=D-1。
指定單元303設(shè)置變量A=0,變量W=1,和變量i=0作為初始值(步驟S301)。
指定單元303比較變量i和數(shù)值D,以及當(dāng)變量i大于數(shù)值D時(步驟S302),用戶設(shè)備是撤消的設(shè)備,所以,指定單元303結(jié)束處理。
當(dāng)變量i小于或等于數(shù)值D時(步驟S302),指定單元303檢驗處在相應(yīng)于ID信息最高第i比特的數(shù)值的比特位置中的數(shù)值B是“0”還是“1”,以確定數(shù)值B相應(yīng)于NRP的左面比特和右面比特中的哪個比特(步驟S303)。這里,由于如圖4所示,“0”被指配給樹結(jié)構(gòu)中的左面路徑和“1”被指配給右面路徑,以及ID信息根據(jù)這個法則被組成,所以ID信息的最高第i比特的數(shù)值“0”相應(yīng)于第A個NRP的左面比特,而右面比特的數(shù)值“1”相應(yīng)于第A個NRP。
當(dāng)數(shù)值B=0時(步驟S303),指定單元303從至今被檢驗過的NRP中間,計數(shù)其比特不全具有數(shù)值“1”的NRP的數(shù)目,以及設(shè)置計數(shù)的數(shù)值作為變量X。這樣得到的變量X表示加密的媒體密鑰的位置。而且,在這個點的變量i是用于標(biāo)識設(shè)備密鑰的設(shè)備密鑰識別信息(步驟5307)。指定單元303然后結(jié)束處理。
當(dāng)數(shù)值B=1時(步驟S303),指定單元303計數(shù)在層i中的全部W個NRP中“1”的數(shù)目,以及把計數(shù)的數(shù)值設(shè)置為變量W。這樣得到的變量W表示在下一層i+1中的NRP的數(shù)目(步驟S304)。
接著,指定單元303計數(shù)從層i中的第一個NRP開始到相應(yīng)的比特位置的NRP的“1”的數(shù)目,以及把計數(shù)的數(shù)值設(shè)置為變量A。這里,相應(yīng)的比特位置的數(shù)值不被計數(shù)。這樣得到的變量A表示在下一層i+1中的NRP中間,與用戶設(shè)備本身有關(guān)的NRP的位置(步驟S305)。
接著,指定單元303計算變量i=i+1(步驟S306),把控制移到步驟S302,以及重復(fù)上述的處理。
1.2.9用于指定密鑰信息的運行的具體的例子下面描述在藉助于圖6和7所示的標(biāo)題信息和密鑰信息來指定加密的媒體密鑰之前圖5所示的未撤消用戶設(shè)備14運行的一個具體的例子。這里,假設(shè)用戶設(shè)備14被指配以ID信息“1101”,和設(shè)備密鑰“KeyA”,“KeyC”,“KeyG”,“KeyN”,和“IK14”。
<步驟1>由于被指配給用戶設(shè)備14的ID信息“1101”的最高位的數(shù)值是“1”,指定單元303檢驗第一個NRP{11}的右面比特(步驟S303)。
<步驟2>由于第一個NRP{11}的右面比特的數(shù)值是“1”,指定單元303繼續(xù)進行分析(步驟S303,B=1)。
<步驟3>指定單元303計數(shù)在層0中NRP{11}中的“1”的數(shù)目。由于計數(shù)的數(shù)值是“2”,指定單元303知道在下一個層1中有兩個NRP(步驟S304)。
<步驟4>指定單元303計數(shù)直至相應(yīng)的比特位置的NRP中的“1”的數(shù)目。應(yīng)當(dāng)指出,相應(yīng)的比特位置的數(shù)值不被計數(shù)。由于計數(shù)的數(shù)值是“1”,相應(yīng)于下一個層1的NRP處在層1的位置1(步驟S305)。
<步驟5>接著,由于從ID信息“1101”的頂部起的第二比特的數(shù)值是“1”,指定單元303檢驗層1中的第一個NRP{10}的右面比特(步驟S303)。
<步驟6>這里,由于層1中的第一個NRP{10}的右面比特的數(shù)值是“0”,指定單元303結(jié)束分析(步驟S303,B=0)。
<步驟7>指定單元303從至今分析過的NRP中間,計數(shù)其比特不全具有數(shù)值“1”的NRP的數(shù)目。應(yīng)當(dāng)指出,最后檢驗的NRP不被計數(shù)。由于計數(shù)的數(shù)值是“1”,所以加密的媒體密鑰處在密鑰信息中的位置1(步驟S307)。
<步驟8>如圖7所示,被存儲在在密鑰信息中的位置1處的加密的媒體密鑰是E1(KeyG,媒體密鑰)。
用戶設(shè)備14具有keyG。因此,用戶設(shè)備14能夠通過使用KeyG來解密該加密的媒體密鑰而得到媒體密鑰。
1.3結(jié)論如上所述,按照第一實施例,多個NRP接級次序被安排在事先存儲在記錄媒體上的密鑰信息的標(biāo)題信息中,導(dǎo)致密鑰信息在尺寸上是緊湊的。而且,播放器能夠有效地指定要被解密的加密的媒體密鑰。
2.第二實施例這里,第二實施例被描述為第一實施例的修改方案。
在第一實施例中,正如在圖18上作為一個例子顯示的,有可能撤消的用戶設(shè)備出現(xiàn)在樹結(jié)構(gòu)中特定的葉子周圍。在這種情形下,在密鑰管理設(shè)備100寫到記錄媒體上的密鑰信息的標(biāo)題信息中有許多NRP是{11}。在圖18所示的例子中,樹結(jié)構(gòu)T300的左半部的葉子都相應(yīng)于撤消的設(shè)備,所以,被包括在密鑰信息的標(biāo)題信息中的11個NRP的8個是{11}。
在圖18所示的例子中,因為樹結(jié)構(gòu)T300的左半部的所有設(shè)備都被撤消,所以,如果表示層1中的左面節(jié)點和它的所有從屬節(jié)點都是被撤消的節(jié)點,則不必記錄相應(yīng)于左半部上每個節(jié)點的NRP作為標(biāo)題信息。
為此,在第二實施例中,數(shù)字作品保護系統(tǒng)10b(未示出)能夠在被撤消設(shè)備圍繞特定葉子在一側(cè)出現(xiàn)的情形下,減小標(biāo)題信息的數(shù)據(jù)尺寸。
密鑰管理設(shè)備100生成NRP作為密鑰信息的標(biāo)題信息,正如第一實施例中描述的。這里,把一個比特加到NRP的頭部。附加的比特“1”是指,被指配到特定節(jié)點的子代節(jié)點的所有用戶設(shè)備是撤消的設(shè)備。在圖19上,不是所有的被指配到節(jié)點T401和節(jié)點T402的子代節(jié)點的設(shè)備都被撤消,所以頭一個比特是“0”,以及節(jié)點T401和T402分到被表示為{011}和{010}。由于被指配到節(jié)點T403的子代節(jié)點的所有設(shè)備都被撤消,節(jié)點T403的NRP被表示為{111}。密鑰管理設(shè)備100不把關(guān)于節(jié)點T403的子代節(jié)點的任何NRP寫入到記錄媒體。
2.1數(shù)字作品保護系統(tǒng)10b的結(jié)構(gòu)數(shù)字作品保護系統(tǒng)10b具有與數(shù)字作品保護系統(tǒng)10相似的結(jié)構(gòu)。這里,描述數(shù)字作品保護系統(tǒng)10b的特性與數(shù)字作品保護系統(tǒng)10的不同之處。
在第二實施例中,如圖19所示,用戶設(shè)備1到8和用戶設(shè)備12被撤消。
2.1.1密鑰管理設(shè)備100數(shù)字作品保護系統(tǒng)10b的密鑰管理設(shè)備100具有與第一實施例中描述的類似的結(jié)構(gòu)。這里,描述第二實施例的密鑰管理設(shè)備100的特性與第一實施例的密鑰管理設(shè)備100的不同之處。
(1)樹結(jié)構(gòu)存儲單元102樹結(jié)構(gòu)存儲單元102,作為一個例子,具有圖20所示的樹結(jié)構(gòu)表D400,而不是樹結(jié)構(gòu)表D100。
樹結(jié)構(gòu)表D400,作為一個例子,相應(yīng)于圖19所示的樹結(jié)構(gòu)T400,以及它是表示樹結(jié)構(gòu)T400的數(shù)據(jù)結(jié)構(gòu)。
樹結(jié)構(gòu)表D400包括多條節(jié)點信息,其數(shù)目等于樹結(jié)構(gòu)T400中的節(jié)點的數(shù)目。各條節(jié)點信息分別相應(yīng)于樹結(jié)構(gòu)T400中的節(jié)點。
每條節(jié)點信息包括節(jié)點名稱、設(shè)備密鑰、撤消標(biāo)志和NRP。
節(jié)點名稱、設(shè)備密鑰、和撤消標(biāo)志是如第一實施例中描述的,所以這里省略其說明。
NRP由三個比特組成。如上所述,最高的比特表示,被指配到由相應(yīng)節(jié)點名稱表示的子代節(jié)點的所有用戶設(shè)備是撤消的設(shè)備。較低的兩個比特的內(nèi)容是與第一實施例中描述的NRP相同的。
(2)密鑰信息標(biāo)題生成單元106當(dāng)NRP的頭一個比特是“1”時,密鑰信息標(biāo)題生成單元106生成一個NRP,表示被指配到該節(jié)點的子代節(jié)點的所有用戶設(shè)備是撤消的設(shè)備,以及把生成的NRP輸出到密鑰信息記錄設(shè)備200。應(yīng)當(dāng)指出,NRP的生成在后面詳細地描述。
密鑰信息標(biāo)題生成單元106,作為一個例子,生成圖21所示的標(biāo)題信息D500。標(biāo)題信息D500由NRP{011},{111},{010},{001}和{001}組成,它們以所闡述的次序被包括在標(biāo)題信息D500中。而且,如圖21所示,NRP{011},{111},{010},{001}和{001}被分別安排在由“0”,“1”,“2”,“3”和“4”定義的位置。
(3)密鑰信息生成單元107密鑰信息生成單元107,作為一個例子,生成圖22所示的密鑰信息D600。密鑰信息D600包括三個加密的媒體密鑰。加密的媒體密鑰是分別藉助于設(shè)備密鑰KeyG,KeyL,和IK11通過加密該媒體密鑰而生成的。
多個加密的媒體密鑰的每一個在密鑰信息D600中存儲的位置被設(shè)置。如圖22所示,加密的媒體密鑰E1(KeyG,媒體密鑰),E1(KeyL,媒體密鑰),和E1(IK11,媒體密鑰)分別被安排在密鑰信息D600中、由“0”,“1”,和“2”定義的位置。
2.1.2記錄設(shè)備300a記錄設(shè)備300a具有與第一實施例中描述的記錄設(shè)備300的類似的結(jié)構(gòu)。這里,描述記錄設(shè)備300a的特性與記錄設(shè)備300的不同之處。
(1)指定單元303指定單元303藉助于讀出的ID信息和讀出的標(biāo)題信息,通過從頂部順序地檢驗備條標(biāo)題信息,而指定密鑰信息中一個加密的媒體密鑰的位置X。應(yīng)當(dāng)指出,用于指定加密的媒體密鑰的位置X的運行的細節(jié)在后面描述。
2.2數(shù)字作品保護系統(tǒng)的運行下面的說明集中在數(shù)字作品保護系統(tǒng)10b的運行特性與數(shù)字作品保護系統(tǒng)10的不同之處。
2.2.1用于生成標(biāo)題信息的運行這里,圖23到圖26所示的流程圖被使用來描述由密鑰信息標(biāo)題生成單元106生成標(biāo)題信息的運行。應(yīng)當(dāng)指出,這里描述的運行是圖11的流程圖中步驟S153的細節(jié)。
密鑰信息標(biāo)題生成單元106對于從層0到層3的每個層執(zhí)行步驟S322到S327,以及還對于每個層的每個目標(biāo)節(jié)點執(zhí)行步驟S323到S326。
密鑰信息標(biāo)題生成單元106選擇目標(biāo)節(jié)點的兩個直接從屬的節(jié)點(步驟S323),檢驗兩個選擇的節(jié)點的每個節(jié)點是否具有附著到其上的撤消標(biāo)志,以生成一個NRP(步驟S324),把具有數(shù)值“0”的擴展比特附著到生成的NRP的頭部(步驟S325),以及把其上附著有擴展比特的NRP附著到相應(yīng)于樹結(jié)構(gòu)表中目標(biāo)節(jié)點的節(jié)點信息上(步驟S326)。
這樣,在步驟S321到S328的重復(fù)結(jié)束后,NRP以與第一實施例中描述的相同方式被附著到每條節(jié)點信息。這里,數(shù)值“0”(一比特)被附著到每個NRP的頭部。
接著,密鑰信息標(biāo)題生成單元106對于從層3到層0的每個層執(zhí)行步驟S330到S335,以及還對于每個層中的每個目標(biāo)節(jié)點執(zhí)行步驟S331到S334。
密鑰信息標(biāo)題生成單元106選擇直接在目標(biāo)節(jié)點之下且被連接到目標(biāo)節(jié)點的兩個節(jié)點(步驟S331),以及檢驗兩個選擇的節(jié)點的每個節(jié)點是否具有附著到其上的撤消標(biāo)志{111}。當(dāng)兩個選擇的節(jié)點是葉子時,密鑰信息標(biāo)題生成單元106檢驗撤消標(biāo)志是否被附著到兩個選擇的節(jié)點(步驟S332)。
只有當(dāng)兩個選擇的從屬節(jié)點都具有附著到其上的NRP{111}時,或在兩個選擇的節(jié)點是葉子的情形下只有當(dāng)兩個選擇的從屬節(jié)點都具有附著到其上的撤消標(biāo)志時(步驟S333),密鑰信息標(biāo)題生成單元106才把被附著到目標(biāo)節(jié)點的NRP的頭一個比特重寫為“1”(步驟S334)。
這樣,在密鑰信息標(biāo)題生成單元106完成重復(fù)步驟S329到S336后,{111}被附著到具有NRP{111}的兩個從屬節(jié)點的上級節(jié)點。
接著,密鑰信息標(biāo)題生成單元106對于從層2到層0的每個層執(zhí)行步驟S338到S343,以及還對于每個層中的每個目標(biāo)節(jié)點執(zhí)行步驟S339到S342。
密鑰信息標(biāo)題生成單元106選擇目標(biāo)節(jié)點的兩個直接從屬節(jié)點(步驟S339),以及檢驗兩個選擇的節(jié)點的每個節(jié)點是否具有附著到其上的撤消圖案{111}(步驟S340)。
只有當(dāng)兩個選擇的更下面的節(jié)點都具有附著到其上的撤消圖案{111}時(步驟S341),密鑰信息標(biāo)題生成單元106才從樹結(jié)構(gòu)表中刪除被附著到兩個選擇的更下面節(jié)點的各自的NRP(步驟S342)。
接著,密鑰信息標(biāo)題生成單元106按次序讀取和輸出被存儲在樹結(jié)構(gòu)表中的NRP(步驟S345)。
這樣,當(dāng)NRP的頭一個比特是“1”時,生成一個NRP,表示被指配給節(jié)點的子代節(jié)點的所有的用戶設(shè)備是撤消的設(shè)備。
2.2.2用于指定密鑰信息的運行這里,圖27所示的流程圖被使用來描述由在記錄設(shè)備300a中的指定單元303從被存儲在記錄媒體500b上的密鑰信息中指定一個加密的媒體密鑰的運行。應(yīng)當(dāng)指出,這里描述的運行是圖11的流程圖的步驟S172的細節(jié)。
還應(yīng)當(dāng)指出,由指定單元303指定加密的媒體密鑰的運行是與第一實施例中描述的類似的,所以,下面的說明集中在指定單元303的特性與第一實施例的指定單元的不同之處。
當(dāng)數(shù)值B=0時(步驟S303)時,指定單元303從至今被檢驗過的NRP中間,計數(shù)其較低的兩個比特不是都具有數(shù)值“1”的NRP的數(shù)目,以及將計數(shù)的數(shù)值設(shè)置在變量X中。這樣得到的變量X表示加密的媒體密鑰的位置(步驟S307a)。指定單元303然后結(jié)束處理。
當(dāng)數(shù)值B=1時(步驟S303),指定單元303計數(shù)在層i中的W個NRP中的所有“1”。然而,其最高比特是“1”的NRP不被計數(shù)。計數(shù)的數(shù)值被設(shè)置在變量W中。這樣得到的變量W表示在下一層i+1中的NRP的數(shù)目(步驟S304a)。
接著,指定單元303計數(shù)從第一個NRP開始到相應(yīng)的比特位置的NRP的“1”的數(shù)目,以及把計數(shù)的數(shù)值設(shè)置在變量A中。這里,相應(yīng)的比特位置的數(shù)值不被計數(shù)。這樣得到的變量A表示,在下一層i+1中的NRP中間,與用戶設(shè)備本身有關(guān)的NRP的位置(步驟S305a)。
2.2.3用于指定密鑰信息的運行的具體的例子下面描述在直到藉助于圖21和22所示的標(biāo)題信息和密鑰信息來指定加密的媒體密鑰之前圖19所示的未撤消用戶設(shè)備10運行的一個具體的例子。這里,假設(shè)用戶設(shè)備10被指配以ID信息“1001”,和設(shè)備密鑰“KeyA”,“KeyC”,“KeyF”,“KeyL”,和“IK10”。
<步驟1>由于被指配給用戶設(shè)備10的ID信息“1001”的最高位的數(shù)值是“1”,指定單元303檢驗第一個NRP{011}的兩個較低比特的右面比特(步驟S303)。
<步驟2>由于第一個NRP{011}的兩個較低比特的右面比特的數(shù)值是“1”,所以指定單元303繼續(xù)進行分析(步驟S303,B=1)。
<步驟3>指定單元303計數(shù)在層0中NRP{011}的兩個較低比特中的“1”的數(shù)目。由于計數(shù)的數(shù)值是“2”,所以指定單元303知道在下一個層1中有兩個NRP(步驟S304a)。
<步驟4>指定單元303計數(shù)直至相應(yīng)比特位置的NRP{011}的兩個較低比特中的“1”的數(shù)目。應(yīng)當(dāng)指出,相應(yīng)的比特位置的數(shù)值不被計數(shù)。由于計數(shù)的數(shù)值是“1”,相應(yīng)于下一個層1的NRP處在層1的位置1(步驟S305)。
<步驟5>接著,由于離ID信息“1001”頂部的第二比特的數(shù)值是“0”,所以指定單元303檢驗層1中的第一個NRP{010}的兩個較低比特的左面比特(步驟S303)。
<步驟6>這里,由于層1中的第一個NRP{010}的兩個較低比特的左面比特的數(shù)值是“1”,所以指定單元303繼續(xù)進行分析(步驟S303,B=1)。
<步驟7>指定單元303計數(shù)在層1中兩個NRP{111}和{010}的兩個較低比特中的“1”的數(shù)目。應(yīng)當(dāng)指出,其最高位是“1”的NRP不被計數(shù)。由于計數(shù)的數(shù)值是“1”,所以指定單元303知道在下一個層2中有一個NRP(步驟S304a)。
<步驟8>指定單元303計數(shù)直至相應(yīng)比特位置的NRP中的“1”的數(shù)目。應(yīng)當(dāng)指出,相應(yīng)比特位置的數(shù)值不被計數(shù)。由于計數(shù)的數(shù)值是“0”,所以在下一個層2的相應(yīng)NRP的位置是層2中的位置0(步驟S305a)。
<步驟9>由于ID信息“1001”的第三比特的數(shù)值是“0”,指定單元303檢驗層2中的第0個NRP{001}的兩個較低比特的左面比特(步驟S303)。
<步驟10>這里,由于層2中的第0個NRP的兩個較低比特的左面比特的數(shù)值是“0”,所以指定單元303結(jié)束分析(步驟S303,B=0)。
<步驟11>指定單元303從至今分析過的NRP中間,計數(shù)其比特不都是“1”的NRP的數(shù)目。應(yīng)當(dāng)指出,最近一次檢驗的NRP不被計數(shù)。由于計數(shù)的數(shù)值是“1”,所以加密的媒體密鑰的位置是在密鑰信息中的位置1(步驟S307a)。
<步驟12>如圖22所示,被存儲在密鑰信息中的位置1處的加密的媒體密鑰是E1(KeyL,媒體密鑰)。
用戶設(shè)備10具有keyL。因此,用戶設(shè)備10能夠通過使用KeyL解密該加密的媒體密鑰而得到媒體密鑰。
應(yīng)當(dāng)指出,在上述的第二實施例中,當(dāng)特定節(jié)點的子代節(jié)點的所有用戶設(shè)備被撤消時,被加上的比特是“1”。然而,在其中葉子的層號變化的樹結(jié)構(gòu)的情形下,加上的比特“1”也可被用作為表示該終端的標(biāo)志。
3.第三實施例在第二實施例中,方法被顯示為,當(dāng)撤消的終端出現(xiàn)在圍繞特定的葉子的一側(cè)時,通過加上一個比特到節(jié)點的NRP的頭部以表示子代都是被撤消的終端,而進一步減小標(biāo)題信息的尺寸。
在第三實施例中,不是加一個比特到NRP,而是使用具有特定圖案{00}的NRP來判斷節(jié)點的所有子代是否為撤消的終端。在這里使用{00}是因為它除了對于層0以外不被使用于任何層。下面描述數(shù)字作品保護系統(tǒng)10c(未示出),因此它比起第二實施例能夠進一步減小標(biāo)題信息的尺寸。
這里,如圖28所示,用戶設(shè)備1到用戶設(shè)備8,和用戶設(shè)備12被撤消。在第三實施例中,NRP是如第一實施例中顯示的,但當(dāng)特定節(jié)點的子代的所有用戶設(shè)備都是撤消的設(shè)備時,節(jié)點的NRP被表示為{00}。由于在圖28上節(jié)點T501的子代都是撤消的設(shè)備,所以節(jié)點T501的NRP被表示為{00}。
3.1數(shù)字作品保護系統(tǒng)10c的結(jié)構(gòu)數(shù)字作品保護系統(tǒng)10c具有與數(shù)字作品保護系統(tǒng)10相似的結(jié)構(gòu)。這里,描述數(shù)字作品保護系統(tǒng)10c的特性與數(shù)字作品保護系統(tǒng)10的不同之處。
3.1.1密鑰管理設(shè)備100數(shù)字作品保護系統(tǒng)10c的密鑰管理設(shè)備100具有與第一實施例中描述的密鑰管理設(shè)備100類似的結(jié)構(gòu)。這里,描述第三實施例的密鑰管理設(shè)備100的特性與第一實施例的密鑰管理設(shè)備100的不同之處。
(1)密鑰信息標(biāo)題生成單元106當(dāng)NRP是{00}時,密鑰信息標(biāo)題生成單元106生成一個NRP,表示被指配到節(jié)點的子代節(jié)點的所有用戶設(shè)備是撤消的設(shè)備,以及把生成的NRP輸出到密鑰信息記錄設(shè)備200。應(yīng)當(dāng)指出,生成的NRP在后面詳細地描述。
密鑰信息標(biāo)題生成單元106,作為一個例子,生成圖29所示的標(biāo)題信息D700。標(biāo)題信息D700由NRP{11},{00},{10},{01}和{01}組成,它們以所闡述的次序被包括在標(biāo)題信息D700中。而且,如圖29所示,NRP{11},{00},{10},{01}和{01}被分別安排在由“0”,“1”,“2”,“3”和“4”定義的位置。
(2)密鑰信息生成單元107密鑰信息生成單元107,作為一個例子,生成圖30所示的密鑰信息D800。密鑰信息D800包括三個加密的媒體密鑰。加密的媒體密鑰是分別藉助于設(shè)備密鑰KeyG,KeyL和IK11通過加密該媒體密鑰而生成的。
多個加密的媒體密鑰的每一個在密鑰信息D800中存儲的位置被設(shè)置。如圖30所示,加密的媒體密鑰E1(Key G,媒體密鑰),E1(Key L,媒體密鑰),和E1(IK11,媒體密鑰)分別被安排在密鑰信息D800中由“0”,“1”,和“2”定義的位置。
3.1.2記錄設(shè)備300a數(shù)字作品保護系統(tǒng)10c中的記錄設(shè)備300a具有與第一實施例中描述的記錄設(shè)備300類似的結(jié)構(gòu)。這里,描述記錄設(shè)備300a的特性與記錄設(shè)備300的不同之處。
(1)指定單元303指定單元303藉助于ID信息和標(biāo)題信息,通過從頂部順序地檢驗各條標(biāo)題信息,指定密鑰信息中一個加密的媒體密鑰的位置X。應(yīng)當(dāng)指出用于指定加密的媒體密鑰的位置X的運行的細節(jié)在后面描述。
3.2數(shù)字作品保護系統(tǒng)的運行下面的說明集中在數(shù)字作品保護系統(tǒng)10c的運行特性與數(shù)字作品保護系統(tǒng)10的不同之處。
3.2.1用于生成標(biāo)題信息的運行這里,圖31到圖34所示的流程圖被使用來描述由密鑰信息標(biāo)題生成單元106生成標(biāo)題信息的運行。應(yīng)當(dāng)指出,這里描述的運行是圖11的流程圖中步驟S153的細節(jié)。
密鑰信息標(biāo)題生成單元106對于從層0到層3的每個層執(zhí)行步驟S322到S327,以及還對于每個層中的每個目標(biāo)節(jié)點執(zhí)行步驟S323到S326a。
密鑰信息標(biāo)題生成單元106選擇目標(biāo)節(jié)點的兩個直接從屬的節(jié)點(步驟S323),檢驗兩個選擇的節(jié)點的每個節(jié)點是否具有附著到其上的撤消標(biāo)志,以生成一個NRP(步驟S324),以及把其上附著有擴展比特的NRP附著到相應(yīng)于目標(biāo)節(jié)點的、在樹結(jié)構(gòu)表中的節(jié)點信息上(步驟S326a)。
這樣,在步驟S321到S328的重復(fù)結(jié)束后,NRP以與第一實施例中描述的相同方式被附著到每條節(jié)點信息。
接著,密鑰信息標(biāo)題生成單元106對于從層3到層0的每個層執(zhí)行步驟S330到S335,以及還對于每個層中的每個目標(biāo)節(jié)點執(zhí)行步驟S331到S334a。
密鑰信息標(biāo)題生成單元106選擇目標(biāo)節(jié)點的兩個從屬節(jié)點(步驟S331),以及檢驗兩個選擇的節(jié)點的每個節(jié)點是否具有附著到其上的NRP{11}。應(yīng)當(dāng)指出,當(dāng)兩個選擇的節(jié)點是葉子時,密鑰信息標(biāo)題生成單元106檢驗兩個選擇的節(jié)點是否都具有附著到其上的撤消標(biāo)志(步驟S332)。
只有當(dāng)兩個選擇的從屬節(jié)點都具有附著到其上的NRP{11}時,或在兩個選擇的從屬節(jié)點是葉子的情形下,只有當(dāng)兩個選擇的從屬節(jié)點都具有附著到其上的撤消標(biāo)志時(步驟S333),密鑰信息標(biāo)題生成單元106才把被附著到目標(biāo)節(jié)點的NRP重寫為{00}(步驟S334a)。
當(dāng)密鑰信息標(biāo)題生成單元106按這種方式完成重復(fù)步驟S329到S336時,{00}被附著到具有NRP{11}的兩個從屬節(jié)點的上級節(jié)點。
接著,密鑰信息標(biāo)題生成單元106對于從層2到層0的每個層執(zhí)行步驟S338到S343,以及還對于每個層中的每個目標(biāo)節(jié)點執(zhí)行步驟S339到S342a。
密鑰信息標(biāo)題生成單元106選擇目標(biāo)節(jié)點的兩個從屬節(jié)點(步驟S339),以及檢驗兩個選擇的節(jié)點的每個節(jié)點是否具有附著到其上的撤消圖案{00}(步驟S340a)。
只有當(dāng)兩個選擇的從屬節(jié)點具有附著到其上的撤消圖案{00}時(步驟S341a),密鑰信息標(biāo)題生成單元106才從樹結(jié)構(gòu)表中刪除被附著到兩個選擇的從屬節(jié)點的各自的NRP(步驟S342a)。
接著,密鑰信息標(biāo)題生成單元106按次序讀取和輸出被存儲在樹結(jié)構(gòu)表中的NRP(步驟S345)。
這樣,當(dāng)NRP是{00}時,NRP被生成,表示被指配給節(jié)點的子代節(jié)點的所有用戶設(shè)備是撤消的設(shè)備。
3.2.2用于指定密鑰信息的運行這里,圖35所示的流程圖被使用來描述由在記錄設(shè)備300a中的指定單元303從被存儲在記錄媒體500b上的密鑰信息中指定一個加密的媒體密鑰的運行。應(yīng)當(dāng)指出,這里描述的運行是圖11的流程圖的步驟S172的細節(jié)。
應(yīng)當(dāng)指出,由指定單元303指定加密的媒體密鑰的運行是與第一實施例中描述的類似的,所以,下面的說明集中在運行的特性與第一實施例的不同之處。
當(dāng)數(shù)值B=0時(步驟S303),指定單元303從至今被檢驗過的NRP中間,計數(shù)其比特因此不是都具有數(shù)值“1”和不是都具有數(shù)值“0”的NRP的數(shù)目。應(yīng)當(dāng)指出,其比特都具有數(shù)值“0”的NRP的數(shù)目只對于層0被計數(shù)。指定單元303將計數(shù)的數(shù)值設(shè)置在變量X中。這樣得到的變量X表示加密的媒體密鑰的位置。而且,這點處的變量i是標(biāo)識設(shè)備密鑰的該條設(shè)備密鑰識別信息(步驟S307b)。指定單元303然后結(jié)束處理。
3.2.3用于指定密鑰信息的運行的具體的例子下面描述在直到藉助于圖29和30所示的標(biāo)題信息和密鑰信息來指定加密的媒體密鑰之前圖28所示的未撤消用戶設(shè)備10運行的一個具體的例子。這里,假設(shè)用戶設(shè)備10被指配以ID信息“1001”,和設(shè)備密鑰“KeyA”,“KeyC”,“KeyF”,“KeyL”,和“IK10”。
<步驟1>由于被指配給用戶設(shè)備10的ID信息“1001”的最高位的數(shù)值是“1”,指定單元303檢驗第一個NRP{11}的右面比特(步驟S303)。
<步驟2>由于第一個NRP{11}的右面比特的數(shù)值是“1”,指定單元303繼續(xù)進行分析(步驟S303,B=1)。
<步驟3>指定單元303計數(shù)在層0中NRP{11}中“1”的數(shù)目。由于計數(shù)的數(shù)值是“2”,指定單元303知道在下一個層1中有兩個NRP(步驟S304)。
<步驟4>指定單元303計數(shù)直至相應(yīng)比特位置的NRP中的“1”的數(shù)目。應(yīng)當(dāng)指出,相應(yīng)比特位置的數(shù)值不被計數(shù)。由于計數(shù)的數(shù)值是“1”,在下一個層1中相應(yīng)的NRP處在層1的位置1(步驟S305)。
<步驟5>接著,由于ID信息“1001”的第二最高位的數(shù)值是“1”,指定單元303檢驗層1中的第一個NRP{10}的右面比特(步驟S303)。
<步驟6>這里,由于層1中的第一個NRP{10}的右面比特的數(shù)值是“ 0”,指定單元303結(jié)束分析(步驟S303,B=1)。
<步驟7>指定單元303計數(shù)在層1中兩個NRP中的“1”的數(shù)目。應(yīng)當(dāng)指出,NRP{00}不被計數(shù)。由于計數(shù)的數(shù)值是“1”,指定單元303知道在下一個層2中有一個NRP(步驟S304)。
<步驟8>指定單元303計數(shù)直至相應(yīng)比特位置的NRP中的“1”的數(shù)目。應(yīng)當(dāng)指出,相應(yīng)的比特位置的數(shù)值不被計數(shù)。由于計數(shù)的數(shù)值是“0”,在下一個層2中相應(yīng)的NRP的位置是層2中的位置0(步驟S305)。
<步驟9>由于ID信息“1001”的第三比特的數(shù)值是“0”,指定單元303檢驗層2的位置0中的NRP{001}的兩個較低比特的左面比特(步驟S303)。
<步驟10>這里,由于層2中的第0個NRP{01}的兩個較低比特的左面比特的數(shù)值是“0”,指定單元303結(jié)束分析(步驟S303,B=0)。
<步驟11>指定單元303從至今分析過的NRP中間,計數(shù)其比特不都是“1”的NRP的數(shù)目。應(yīng)當(dāng)指出,最近一次檢驗的NRP不被計數(shù)。由于計數(shù)的數(shù)值是“1”,加密的媒體密鑰的位置是在密鑰信息中的位置1。
<步驟12>如圖30所示,被存儲在密鑰信息中的位置1處的加密的媒體密鑰是E1(KeyL,媒體密鑰)。
用戶設(shè)備10具有keyL。因此,用戶設(shè)備10能夠通過使用KeyL解密該加密的媒體密鑰而得到媒體密鑰。
4.第四實施例在第一實施例中,NRP以從頂層到底層的次序排列,以及同一層的NRP以從左到右的次序排列。
在第四實施例中,描述以另一個次序輸出NRP的數(shù)字作品保護系統(tǒng)10d(未示出)。
4.1數(shù)字作品保護系統(tǒng)10d的結(jié)構(gòu)數(shù)字作品保護系統(tǒng)10d具有與數(shù)字作品保護系統(tǒng)10相似的結(jié)構(gòu)。這里,描述數(shù)字作品保護系統(tǒng)10d的特性與數(shù)字作品保護系統(tǒng)10的不同之處。
4.1.1密鑰管理設(shè)備100數(shù)字作品保護系統(tǒng)10d的密鑰管理設(shè)備100具有與第一實施例中描述的類似的結(jié)構(gòu)。這里,描述第二實施例的密鑰管理設(shè)備100的特性與第一實施例的密鑰管理設(shè)備100的不同之處。
(1)樹結(jié)構(gòu)存儲單元102具體地,樹結(jié)構(gòu)存儲單元102由硬盤單元組成,以及如圖37所示,作為一個例子,具有圖37所示的樹結(jié)構(gòu)表D1000。
樹結(jié)構(gòu)表D1000,作為一個例子,相應(yīng)于圖36所示的樹結(jié)構(gòu)T600,以及它是表示樹結(jié)構(gòu)T600的數(shù)據(jù)結(jié)構(gòu)。正如后面描述的,用于表示樹結(jié)構(gòu)T600的數(shù)據(jù)結(jié)構(gòu)由樹結(jié)構(gòu)構(gòu)建單元101生成,作為樹結(jié)構(gòu)表D1000,以及被寫入到樹結(jié)構(gòu)存儲單元102。
<樹結(jié)構(gòu)T600>
如圖36所示,樹結(jié)構(gòu)T600是具有五個層的二叉樹,層0到層4。
在每層中包括的節(jié)點的數(shù)目是與樹結(jié)構(gòu)T100相同的。而且,被指配給從上邊的節(jié)點到下邊的節(jié)點的路徑的號碼是與樹結(jié)構(gòu)T100相同的。被標(biāo)記以叉號(×)的節(jié)點是撤消的節(jié)點。
作為樹結(jié)構(gòu)T600的根的節(jié)點的節(jié)點名稱是空白。其他節(jié)點的節(jié)點名稱是與樹結(jié)構(gòu)T100中相同的。
每個節(jié)點名稱是四數(shù)字表達式。作為根的節(jié)點的節(jié)點名稱是四個空白。節(jié)點名稱“0”具體地是字符“0”+一個空白+一個空白+一個空白。節(jié)點名稱“00”是字符“0”+字符“0”+一個空白+一個空白。節(jié)點名稱“101”是字符“1”+字符“0”+字符“1”+一個空白。節(jié)點名稱“1111”是字符“1”+字符“1”+字符“1”+字符“1”。其他名稱類似地形成。
在樹結(jié)構(gòu)T600中,每個節(jié)點附近的“{10}”等等表示NRP。而且,在每個節(jié)點附近圓圈中的數(shù)表示NRP被輸出的次序。
<樹結(jié)構(gòu)表D1000>
樹結(jié)構(gòu)表D1000包括多條節(jié)點信息,其數(shù)目等于樹結(jié)構(gòu)T1000中的節(jié)點的數(shù)目。每條節(jié)點信息相應(yīng)于樹結(jié)構(gòu)T1000中的其中一個節(jié)點。
每條節(jié)點信息包括設(shè)備密鑰和撤消標(biāo)志。節(jié)點名稱、設(shè)備密鑰、和撤消標(biāo)志是與樹結(jié)構(gòu)表D100中相同的,所以這里省略其說明。
每條節(jié)點信息按由以下的排序法則2表示的次序存儲在樹結(jié)構(gòu)表D1000。這個排序法則2在節(jié)點信息由記錄設(shè)備300a等和重現(xiàn)設(shè)備400a等從樹結(jié)構(gòu)表D1000中順序地讀出時被應(yīng)用。
(a)相應(yīng)于作為根的節(jié)點的該條節(jié)點信息被存儲在樹結(jié)構(gòu)表D1000的頂部。
(b)在相應(yīng)于特定節(jié)點的一條節(jié)點信息被存儲在樹結(jié)構(gòu)表D1000后,當(dāng)該節(jié)點具有兩個從屬節(jié)點時,該節(jié)點信息按以下方式排列。分別相應(yīng)于兩個從屬節(jié)點的左面節(jié)點的每個節(jié)點和在同一條路徑上所有另外的從屬左面節(jié)點的各條節(jié)點信息被存儲。然后,分別相應(yīng)于兩個從屬節(jié)點的右面節(jié)點和所有從屬于右面節(jié)點的另外的右面節(jié)點的各條節(jié)點信息被存儲。
(c)在(b)內(nèi),重新應(yīng)用(b)。
具體地,在圖37所示的樹結(jié)構(gòu)表D1000中的各條節(jié)點信息接以下次序被存儲
空白(表示根),“0”,“00”,“000”,“0000”,“0001”,“001”,“0010”,“0011”,“01”,“010”,...,“11”,“110”,“1100”,“1101”,“111”,“1110”,和“1111”。
(2)樹結(jié)構(gòu)構(gòu)建單元101樹結(jié)構(gòu)構(gòu)建單元101,如下所述,構(gòu)建用于管理設(shè)備密鑰的n進制數(shù)據(jù)結(jié)構(gòu),以及把構(gòu)建的樹結(jié)構(gòu)存儲在樹結(jié)構(gòu)存儲單元102。這里,n是等于或大于2的整數(shù)。作為例子,n=2。
由樹結(jié)構(gòu)構(gòu)建單元101構(gòu)建樹結(jié)構(gòu)和把構(gòu)建的樹結(jié)構(gòu)存儲到樹結(jié)構(gòu)存儲單元102的運行的細節(jié)在后面描述。
樹結(jié)構(gòu)構(gòu)建單元101藉助于隨機數(shù)生成樹結(jié)構(gòu)中每個節(jié)點的設(shè)備密鑰,以及把與各個節(jié)點對應(yīng)的每個生成的設(shè)備密鑰寫入到樹結(jié)構(gòu)表。
(3)密鑰信息標(biāo)題生成單元106密鑰信息標(biāo)題生成單元106生成多個NRP,以及把生成的NRP作為標(biāo)題信息輸出到密鑰信息記錄設(shè)備200。用于生成NRP的運行的細節(jié)在后面描述。
由密鑰信息標(biāo)題生成單元106生成標(biāo)題信息的一個例子在圖38上示出。圖38所示的標(biāo)題信息D900由NRP{11},{11},{11},{10},{01},{11},{10},{10},{10},{01},{11}組成,它們以所闡述的次序被包括在標(biāo)題信息D900中。
應(yīng)當(dāng)指出,每個節(jié)點信息圖案被放置的標(biāo)題信息D900中的位置被設(shè)置。如圖38所示,NRP{11},{11},{11},{10},{01},{11},{10},{10},{10},{01},{11}被分別安排在標(biāo)題信息D900中由“0”,“1”,“2”,“3”,“4”,“5”,“6”,“7”,“8”,“9”和“10”定義的位置中。
(4)密鑰信息生成單元107密鑰信息生成單元107通過使用相應(yīng)于未撤消的節(jié)點的每個設(shè)備密鑰來加密媒體密鑰,以與各條節(jié)點信息被存儲在上述的樹結(jié)構(gòu)表的相同次序生成加密的媒體密鑰,以及把生成的加密的媒體密鑰作為密鑰信息輸出。
下面說明由密鑰信息生成單元107生成和然后輸出的密鑰信息的一個例子。
密鑰信息由加密的媒體密鑰E1(IK2,媒體密鑰),E1(IK3,媒體密鑰),E1(IK6,媒體密鑰),E1(IK8,媒體密鑰),E1(KeyL,媒體密鑰),和E1(KeyG,媒體密鑰)組成,這些加密的媒體密鑰是分別藉助于設(shè)備密鑰“IK2”,“IK3”,“IK6”,“IK8”,“KeyL”和“KeyG”、通過加密媒體密鑰而生成的。加密的媒體密鑰E1(IK2,媒體密鑰),E1(IK3,媒體密鑰),E1(IK6,媒體密鑰),E1(IK8,媒體密鑰),E1(KeyL,媒體密鑰),和E1(KeyG,媒體密鑰)分別被安排在密鑰信息中由“0”,“1”,“2”,“3”,“4”,“5”和“6”定義的位置中。
4.1.2記錄設(shè)備300a數(shù)字作品保護系統(tǒng)10d的記錄設(shè)備300a具有與第一實施例中描述的類似的結(jié)構(gòu)。這里,描述第二實施例中記錄設(shè)備300a的特性與第一實施例的不同之處。
(1)指定單元303指定單元303藉助于讀出的ID信息和讀出的標(biāo)題信息,通過從頂部順序地檢驗各條標(biāo)題信息,而指定一個加密的媒體密鑰在密鑰信息中的位置X。應(yīng)當(dāng)指出用于指定加密的媒體密鑰的位置X的運行的細節(jié)在后面描述。
4.2數(shù)字作品保護系統(tǒng)10d的運行下面的說明集中在數(shù)字作品保護系統(tǒng)10d的運行特性與數(shù)字作品保護系統(tǒng)10的不同之處。
4.2.1用于構(gòu)建和存儲樹結(jié)構(gòu)的運行這里,使用圖39的流程圖來描述由樹結(jié)構(gòu)構(gòu)建單元101生成樹結(jié)構(gòu)表和把樹結(jié)構(gòu)表寫入到樹結(jié)構(gòu)存儲單元102的運行。應(yīng)當(dāng)指出,這里描述的運行是圖10的流程圖的步驟S101的細節(jié)。
樹結(jié)構(gòu)構(gòu)建單元101生成包括空白節(jié)點名稱的一條節(jié)點信息,以及把該條生成的節(jié)點信息寫入到樹結(jié)構(gòu)表(步驟S401)。
接著,樹結(jié)構(gòu)構(gòu)建單元101對于層i(i=1,2,3,4)重復(fù)以下步驟S403到S404。
樹結(jié)構(gòu)構(gòu)建單元101生成21個字符串作為節(jié)點名稱。具體地,當(dāng)i=1時,樹結(jié)構(gòu)構(gòu)建單元101生成21=2個字符串“0”和“1”。當(dāng)i=2時,樹結(jié)構(gòu)構(gòu)建單元101生成22=4個字符串“00”,“01”,“10”和“11”。當(dāng)i=3時,樹結(jié)構(gòu)構(gòu)建單元101生成23=8個字符串“000”,“001”,“010”,...和“111”。當(dāng)i=4時,樹結(jié)構(gòu)構(gòu)建單元101生成24=16個字符串“0000”,“0001”,“0010”,“0011”,...和“1111”(步驟S403)。接著,樹結(jié)構(gòu)構(gòu)建單元101把每個包括一個生成的節(jié)點名稱的各條節(jié)點信息寫入到樹結(jié)構(gòu)表(步驟S404)。
接著,樹結(jié)構(gòu)構(gòu)建單元101按節(jié)點名稱的上升次序重新排列樹結(jié)構(gòu)表中的各條節(jié)點信息,以及用新排列的各條節(jié)點信息覆蓋樹結(jié)構(gòu)表中的各條節(jié)點信息(步驟S406)。
這樣,生成諸如圖37所示的例子的樹結(jié)構(gòu)表。生成的樹結(jié)構(gòu)表D1000包括按上述的排序法則2的各條節(jié)點信息。應(yīng)當(dāng)指出,在這個階段,設(shè)備密鑰還未記錄在樹結(jié)構(gòu)表D1000中。
4.2.2用于生成標(biāo)題信息的運行這里,圖40到圖41的流程圖被使用來描述由密鑰信息標(biāo)題生成單元106生成標(biāo)題信息的運行。應(yīng)當(dāng)指出,這里描述的運行是圖11的流程圖中步驟S153的細節(jié)。
密鑰信息標(biāo)題生成單元106試圖從樹結(jié)構(gòu)表按照排序法則2一次讀出一條節(jié)點信息(步驟S421)。
一檢測到已完成所有的各條節(jié)點信息的讀取(步驟S422),密鑰信息標(biāo)題生成單元106就進到步驟S427。
當(dāng)密鑰信息標(biāo)題生成單元106沒有檢測到已完成所有各條節(jié)點信息的讀取,而代之以能夠讀出一條節(jié)點信息時(步驟S422),密鑰信息標(biāo)題生成單元106讀出相應(yīng)于該讀出的節(jié)點信息的目標(biāo)節(jié)點的兩個從屬節(jié)點的兩條節(jié)點信息(步驟S423)。
當(dāng)目標(biāo)節(jié)點具有從屬節(jié)點時(步驟424),密鑰信息標(biāo)題生成單元106檢驗相應(yīng)于兩個從屬節(jié)點的、讀出的兩條節(jié)點信息其上是否具有附著的撤消標(biāo)志,以及生成一個NRP(步驟S425)。然后,密鑰信息標(biāo)題生成單元106把生成的NRP加到相應(yīng)于目標(biāo)節(jié)點的該條讀出的節(jié)點信息上(步驟S426),以及返回到步驟S421,以重復(fù)處理。
當(dāng)目標(biāo)節(jié)點沒有較低的節(jié)點時(步驟424),密鑰信息標(biāo)題生成單元106返回到步驟S421,以重復(fù)處理。
接著,密鑰信息標(biāo)題生成單元106試圖從樹結(jié)構(gòu)表按照排序法則2的次序讀出各條節(jié)點信息(步驟S427)。
一檢測到已完成所有各條節(jié)點信息的讀取后(步驟S422),密鑰信息標(biāo)題生成單元106結(jié)束處理。
當(dāng)密鑰信息標(biāo)題生成單元106沒有檢測到已完成所有各條節(jié)點信息的讀取,而代之以能夠讀出一條節(jié)點信息時(步驟S428),密鑰信息標(biāo)題生成單元106檢驗該條讀出的節(jié)點信息其上是否具有附著的NRP,以及如果是的話(步驟S429),輸出附著的NRP(步驟S430)。密鑰信息標(biāo)題生成單元106然后返回到步驟S427,以重復(fù)該處理。
當(dāng)該條讀出的節(jié)點信息其上不具有附著的NRP時(步驟429),密鑰信息標(biāo)題生成單元106返回到步驟S427,以重復(fù)該處理。
4.2.3用于指定密鑰信息的運行這里,圖42的流程圖被使用來描述由記錄設(shè)備300a的指定單元303從被存儲在記錄媒體500b上的密鑰信息中指定加密的媒體密鑰的運行。應(yīng)當(dāng)指出,這里描述的運行是圖11的流程圖的步驟S172的細節(jié)。
還應(yīng)當(dāng)指出,由重現(xiàn)設(shè)備400a的指定單元402執(zhí)行的運行是與指定單元303的相同的,所以省略其說明。
指定單元303具有變量i、變量L、變量X、標(biāo)志F、數(shù)值D和指針A。變量i表示要被檢驗的ID信息的比特位置。變量L表示其中包括當(dāng)前正在被檢驗的NRP的層。變量X存儲在路徑岔開的點處的節(jié)點的層。標(biāo)志F(初始值F=0)是用來判斷是否檢驗NRP的。數(shù)值D表示樹結(jié)構(gòu)中層的數(shù)目。指針A表示要被檢驗的NRP的位置。
指定單元303設(shè)置變量i=0,變量L=0,標(biāo)志F=0,變量X=0,和指針A=0(步驟S1300)。
接著,指定單元303判斷變量L是否小于層的數(shù)目D-1。當(dāng)變量L大于或等于層的數(shù)目D-1時(步驟S1301),指定單元303把變量X的上一個層號輸入到變量L。變量X是后進先出的變量,從該變量輸出的數(shù)值被刪除。換句話說,如果層0、層2和層3依次輸入到變量X中,則層3被首先輸出且然后被刪除,接著輸出層2(步驟S1313)。指定單元303然后返回到步驟S1301,以重復(fù)該處理。
當(dāng)變量L小于層的數(shù)目D-1時(步驟S1301),指定單元303判斷是否有變量i=變量L。當(dāng)變量i不等于變量L時(步驟S1302),指定單元303進到步驟S1310。
當(dāng)變量i=變量L時(步驟S1302),指定單元303判斷是否有標(biāo)識F=0。當(dāng)標(biāo)記F不等于0時(步驟S1303),指定單元303把標(biāo)志F設(shè)置為0(步驟S1309),以及進到步驟S1310。
當(dāng)標(biāo)記F=0時(步驟S1303),指定單元303按照ID信息的最高第i比特的數(shù)值,檢驗相應(yīng)于第A個NRP的比特位置的數(shù)值B,以及設(shè)置變量i=i+1(步驟S1304)。
接著,指定單元303檢驗數(shù)值B是否=1,以及如果不是(步驟S1305),則判斷ID信息所指配給的設(shè)備沒有被撤消,以及結(jié)束處理。
當(dāng)數(shù)值B=1時(步驟S1305),指定單元303判斷變量i≠D-1是否成立,以及如果變量i等于1(步驟S1306),則判斷ID信息所指配給的設(shè)備被撤消,以及結(jié)束處理。
接著,當(dāng)變量i≠D-1時(步驟S1306),指定單元303判斷NRP是否為{11}以及ID信息的第i-1個數(shù)值是否為“1”。當(dāng)判斷是否定時(步驟S1307),則指定單元303進到步驟S1310。
當(dāng)判斷是肯定時(步驟S1307),則指定單元303設(shè)置標(biāo)志F=1(步驟S1308),設(shè)置L=L+1(步驟S1310),以及如果NRP是{11},指定單元303把NRP的層號存儲在變量X中(步驟S1311)。然后,指定單元303設(shè)置A=A+1(步驟S1312),以及返回到步驟S1310。
5.第五實施例在第四實施例中,NRP按照排序法則2進行排列。
在此后描述的第五實施例中,數(shù)字作品保護系統(tǒng)10e(未示出)以與第四實施例中數(shù)字作品保護系統(tǒng)10d相同的方式按照排序法則2排列和輸出NRP,而以與在撤消的設(shè)備圍繞特定的葉子一邊地出現(xiàn)時第二實施例中描述的數(shù)字作品保護系統(tǒng)10b中相同的方式減小標(biāo)題信息的數(shù)據(jù)量。
5.1數(shù)字作品保護系統(tǒng)10e的結(jié)構(gòu)數(shù)字作品保護系統(tǒng)10e具有與數(shù)字作品保護系統(tǒng)10d相似的結(jié)構(gòu)。這里,描述數(shù)字作品保護系統(tǒng)10e的特性與數(shù)字作品保護系統(tǒng)10d的不同之處。
5.1.1密鑰管理設(shè)備100數(shù)字作品保護系統(tǒng)10e的密鑰管理設(shè)備100具有與第四實施例中描述的密鑰管理設(shè)備100d類似的結(jié)構(gòu)。這里,描述密鑰管理設(shè)備100的特性與密鑰管理設(shè)備100d的不同之處。
(1)樹結(jié)構(gòu)存儲單元102樹結(jié)構(gòu)存儲單元102具有樹結(jié)構(gòu)表。樹結(jié)構(gòu)存儲單元102的樹結(jié)構(gòu)表具有與第四實施例中描述的樹結(jié)構(gòu)表D1000相同的結(jié)構(gòu),被包括在樹結(jié)構(gòu)表中的每條節(jié)點信息附加地包括NRP。
(2)密鑰信息標(biāo)題生成單元106密鑰信息標(biāo)題生成單元106生成多個NRP,以及把生成的NRP作為標(biāo)題信息輸出到密鑰信息記錄設(shè)備200。每個NRP由三個比特組成,正如在第二實施例中描述的。
用于生成NRP的運行的細節(jié)在后面描述。
5.1.2記錄設(shè)備300a數(shù)字作品保護系統(tǒng)10e的記錄設(shè)備300a具有與第四實施例中描述的記錄設(shè)備300a類似的結(jié)構(gòu)。這里,描述記錄設(shè)備300a的特性與第四實施例中描述的記錄設(shè)備300a的不同之處。
(1)指定單元303指定單元303藉助于ID信息和標(biāo)題信息,通過從頂部順序地檢驗各條標(biāo)題信息,而指定一個加密的媒體密鑰的位置X。應(yīng)當(dāng)指出用于指定加密的媒體密鑰的位置X的運行的細節(jié)在后面描述。
5.2數(shù)字作品保護系統(tǒng)10e的運行下面的說明集中在數(shù)字作品保護系統(tǒng)10e的運行特性與數(shù)字作品保護系統(tǒng)10d的不同之處。
5.2.1用于生成標(biāo)題信息的運行這里,圖43到圖46的流程圖被使用來描述由密鑰信息標(biāo)題生成單元106生成標(biāo)題信息的運行。應(yīng)當(dāng)指出,這里描述的運行是圖11的流程圖中步驟S153的細節(jié)。
密鑰信息標(biāo)題生成單元106試圖從樹結(jié)構(gòu)表按照排序法則2一次讀出一條節(jié)點信息(步驟S451)。
一檢測到已完成所有各條節(jié)點信息的讀取(步驟S452),密鑰信息標(biāo)題生成單元106就進到步驟S458。
當(dāng)密鑰信息標(biāo)題生成單元106沒有檢測到已完成所有各條節(jié)點信息的讀取,而代之以能夠讀出一條節(jié)點信息時(步驟S452),密鑰信息標(biāo)題生成單元106讀出兩條節(jié)點信息,該兩條節(jié)點信息相應(yīng)于與該讀出的節(jié)點信息相應(yīng)的目標(biāo)節(jié)點的兩個直接從屬的節(jié)點(步驟S453)。
當(dāng)目標(biāo)節(jié)點具有從屬節(jié)點時(步驟S454),密鑰信息標(biāo)題生成單元106檢驗相應(yīng)于兩個從屬節(jié)點的、讀出的兩條節(jié)點信息其上是否具有附著的撤消標(biāo)志,生成一個NRP(步驟S455),以及把數(shù)值“0”的擴展比特附著到生成的NRP的頭部(步驟S456)。然后,密鑰信息標(biāo)題生成單元106把其上附著有擴展比特的NRP加到相應(yīng)于目標(biāo)節(jié)點的該條節(jié)點信息上(步驟S457),以及返回到步驟S451,以重復(fù)該處理。
當(dāng)目標(biāo)節(jié)點沒有從屬節(jié)點時(步驟S454),密鑰信息標(biāo)題生成單元106返回到步驟S451,以重復(fù)該處理。
接著,密鑰信息標(biāo)題生成單元106試圖從樹結(jié)構(gòu)表按照排序法則2的次序讀出該條節(jié)點信息(步驟S458)。
一檢測到已完成各條節(jié)點信息的讀取(步驟S459),密鑰信息標(biāo)題生成單元106就進行到步驟S465。
當(dāng)密鑰信息標(biāo)題生成單元106沒有檢測到已完成各條節(jié)點信息的讀取,而代之以能夠讀出一條節(jié)點信息時(步驟S459),密鑰信息標(biāo)題生成單元106讀出相應(yīng)于該條讀出的節(jié)點信息的所有直接從屬的節(jié)點的所有各條節(jié)點信息(步驟S460)。
當(dāng)目標(biāo)節(jié)點具有從屬節(jié)點時(步驟S461),密鑰信息標(biāo)題生成單元106檢驗相應(yīng)于所有從屬節(jié)點的、所有讀出的各條節(jié)點信息其上是否具有附著的撤消標(biāo)志(步驟S462),以及只有當(dāng)所有的從屬節(jié)點其上具有附著的撤消標(biāo)志時(步驟S463),密鑰信息標(biāo)題生成單元106才用“1”重寫被附著到相應(yīng)于目標(biāo)節(jié)點的該條節(jié)點信息的NRP的最高位(步驟S464)。
接著,密鑰信息標(biāo)題生成單元106返回到步驟S458,以重復(fù)處理。
當(dāng)目標(biāo)節(jié)點沒有從屬節(jié)點時(步驟S461),密鑰信息標(biāo)題生成單元106返回到步驟S458,以重復(fù)處理。
接著,密鑰信息標(biāo)題生成單元106試圖從樹結(jié)構(gòu)表按照排序法則2一次讀出一條節(jié)點信息(步驟S465)。
一檢測到已完成所有各條節(jié)點信息的讀取(步驟S466),密鑰信息標(biāo)題生成單元106進到步驟S472。
當(dāng)密鑰信息標(biāo)題生成單元106沒有檢測到已完成所有各條節(jié)點信息的讀取,而代之以能夠讀出一條節(jié)點信息時(步驟S466),密鑰信息標(biāo)題生成單元106讀出所有各條節(jié)點信息,該所有各條節(jié)點信息相應(yīng)于與該條讀出的節(jié)點信息對應(yīng)的目標(biāo)節(jié)點的所有從屬節(jié)點(步驟S467)。
當(dāng)目標(biāo)節(jié)點具有從屬節(jié)點時(步驟S468),密鑰信息標(biāo)題生成單元106檢驗相應(yīng)于所有從屬節(jié)點的、所有各條讀出的節(jié)點信息其上是否具有附著的NRP{111}(步驟S469),以及只有當(dāng)所有各條讀出的節(jié)點信息其上具有附著的NRP{111}時(步驟S470),密鑰信息標(biāo)題生成單元106才把刪除標(biāo)志附著到各條節(jié)點信息的每個上(步驟S471)。
接著,密鑰信息標(biāo)題生成單元106返回到步驟S465,以重復(fù)該處理。
當(dāng)目標(biāo)節(jié)點沒有從屬節(jié)點時(步驟S468),密鑰信息標(biāo)題生成單元106返回到步驟S465,以重復(fù)該處理。
接著,密鑰信息標(biāo)題生成單元106試圖從樹結(jié)構(gòu)表按照排序法則2一次一個地讀出各條節(jié)點信息(步驟S472)。
一檢測到已完成各條節(jié)點信息的讀取(步驟S473),密鑰信息標(biāo)題生成單元106就結(jié)束處理。
當(dāng)密鑰信息標(biāo)題生成單元106沒有檢測到已完成各條節(jié)點信息的讀取,而代之以能夠讀出一條節(jié)點信息時(步驟S473),密鑰信息標(biāo)題生成單元106檢驗該條讀出的節(jié)點信息其上是否具有附著的NRP,以及如果是的話(步驟S474),則檢驗刪除標(biāo)志是否附著到該條讀出的節(jié)點信息。當(dāng)刪除標(biāo)志沒有附著到其上時(步驟S475),密鑰信息標(biāo)題生成單元106輸出附著的NRP(步驟S476)。密鑰信息標(biāo)題生成單元106然后返回到步驟S472,以重復(fù)處理。
當(dāng)該條讀出的節(jié)點信息其上不具有附著的NRP時(步驟S474),或當(dāng)該條讀出的節(jié)點信息其上不具有附著的刪除標(biāo)志時(步驟S475),密鑰信息標(biāo)題生成單元106返回到步驟S472,以重復(fù)處理。
5.2.2用于指定密鑰信息的運行這里,圖47的流程圖被使用來描述由記錄設(shè)備300a的指定單元303從被存儲在記錄媒體500b上的密鑰信息中指定加密的媒體密鑰的運行。應(yīng)當(dāng)指出,這里描述的運行是圖11的流程圖的步驟S172的細節(jié)。
還應(yīng)當(dāng)指出,由重現(xiàn)設(shè)備400a的指定單元402執(zhí)行的運行是與指定單元303的相同的,所以省略其說明。
這里,描述其特性與圖42所示的流程圖的不同之處。
類似于第四實施例,指定單元303具有變量i、變量L、變量X、標(biāo)志F、數(shù)值D和指針A。變量i表示要被檢驗的ID信息的比特位置。變量L表示其中包括當(dāng)前正在被檢驗的NRP的層。變量X存儲在路徑分叉處的節(jié)點的層。標(biāo)志F(初始值F=0)是用來判斷是否檢驗NRP的。數(shù)值D表示樹結(jié)構(gòu)中層的數(shù)目。指針A表示要被檢驗的NRP的位置。
當(dāng)數(shù)值B=1時(步驟S1305),只有當(dāng)NRP的最高位是“1”時(步驟S1316),指定單元303才設(shè)置變量i=D-1,以及設(shè)置變量L=D-1(步驟S1317)。
而且,當(dāng)NRP是{11}和NRP的最高位不是“1”時,指定單元303把NRP的層號存儲在變量X中(步驟S1311)。
6.其他修正方案應(yīng)當(dāng)指出,雖然本實施例是根據(jù)以上的實施例描述的,但本發(fā)明并不限于此。諸如下面的情形也包括在本發(fā)明中。
(1)本發(fā)明并不限于使用實施例中描述的、傳統(tǒng)的撤消方法。把設(shè)備密鑰指配給節(jié)點和把設(shè)備密鑰指配給記錄設(shè)備和/或重現(xiàn)設(shè)備的任何方法是可能的,只要滿足以下條件密鑰管理設(shè)備保持樹結(jié)構(gòu),記錄設(shè)備和/或重現(xiàn)設(shè)備被指配以樹結(jié)構(gòu)的葉子,與節(jié)點有關(guān)的設(shè)備密鑰被指配給記錄設(shè)備和/或重現(xiàn)設(shè)備,以及密鑰管理設(shè)備藉助于樹結(jié)構(gòu)執(zhí)行設(shè)備密鑰的撤消,以及生成密鑰信息。
(2)樹結(jié)構(gòu)并不限于是實施例中描述的二叉樹。一般地,本發(fā)明可以用n進制樹實現(xiàn)。在這種情形下,ID信息可以通過把0到n-1指配給從節(jié)點得出且在該節(jié)點下面的n條路徑,以及如在實施例中描述的,聯(lián)合按次序從頂部指配給從葉子到根的路徑的數(shù)值,而被設(shè)置。
(3)在上述的實施例中使用諸如DVD-RAM那樣的可記錄媒體的例子,然而,本發(fā)明可以對于預(yù)先記錄的媒體,諸如DVD-Video,以類似的方式被實現(xiàn)。
下面描述用于預(yù)先記錄的媒體的數(shù)字作品保護系統(tǒng)10f。
如圖48所示,數(shù)字作品保護系統(tǒng)10f包括密鑰管理設(shè)備100、數(shù)據(jù)記錄設(shè)備1701、和數(shù)據(jù)重現(xiàn)設(shè)備1703a,1703b,1703c等(此后稱為“記錄設(shè)備1703a等”)。
正如實施例中描述的,密鑰管理設(shè)備100把其上附著有標(biāo)題信息的密鑰信息和內(nèi)容密鑰輸出到數(shù)據(jù)記錄設(shè)備1701,以及把多個設(shè)備密鑰、有關(guān)每個設(shè)備密鑰的識別信息、和ID信息輸出到數(shù)據(jù)重現(xiàn)設(shè)備1703a等。
記錄媒體500a是預(yù)先記錄的媒體,它被裝載到數(shù)據(jù)記錄設(shè)備1701。數(shù)據(jù)記錄設(shè)備1701從密鑰管理設(shè)備100接收密鑰信息和媒體密鑰,通過使用媒體密鑰來加密內(nèi)容以生成加密的內(nèi)容,以及把生成的加密的內(nèi)容和接收的密鑰信息寫入到記錄媒體500a。這樣,制作了其上寫有加密的內(nèi)容和密鑰信息的記錄媒體500d。
記錄媒體500d在市場上流通,以及用戶得到記錄媒體500d。用戶把記錄媒體500d裝載到數(shù)據(jù)重現(xiàn)設(shè)備1703a。
數(shù)據(jù)重現(xiàn)設(shè)備1703a事先從密鑰管理設(shè)備100接收多個設(shè)備密鑰、有關(guān)設(shè)備密鑰的識別信息和ID信息。當(dāng)記錄媒體500d被裝載到數(shù)據(jù)重現(xiàn)設(shè)備1703a時,數(shù)據(jù)重現(xiàn)設(shè)備1703a從記錄媒體500d讀出密鑰信息和加密的內(nèi)容,從密鑰信息指定加密的媒體密鑰,藉助于設(shè)備密鑰來解密指定的加密的媒體密鑰,以及藉助于得到的媒體密鑰來解密該加密的內(nèi)容,以生成內(nèi)容。
與實施例中顯示的密鑰管理設(shè)備100相同類型的運行可被使用來控制被記錄在記錄媒體上的標(biāo)題信息的大小,以及讓數(shù)據(jù)重現(xiàn)設(shè)備有效地規(guī)定要被解密的、加密的媒體密鑰。
(4)本發(fā)明不限于應(yīng)用到如實施例中描述的、數(shù)字內(nèi)容的版權(quán)保護,而可被使用于,例如,在基于成員資格的信息供應(yīng)系統(tǒng)中的有條件接入的目的,以便提供信息給除特定的一個或一些成員以外的成員。
(5)在實施例中,描述了藉助于記錄媒體分發(fā)密鑰信息和加密的內(nèi)容的例子,但不用記錄媒體,可以使用通信媒體,它的一個代表是互聯(lián)網(wǎng)。
(6)密鑰管理設(shè)備和密鑰信息記錄設(shè)備可被集成為一個設(shè)備。
(7)本發(fā)明不限于在實施例中描述的指配設(shè)備密鑰的方法,其中設(shè)備密鑰被事先指配給n進制樹的每個節(jié)點,以及在從葉子到根的路徑上所有的設(shè)備密鑰被指配給相應(yīng)于葉子的用戶設(shè)備。
有可能不把設(shè)備密鑰事先指配給n進制樹的所有節(jié)點,而是指配給某些節(jié)點。
而且,有可能不是指配在從葉子到根的路徑上所有的設(shè)備密鑰,而是指配在路徑上的某些設(shè)備密鑰給相應(yīng)于葉子的用戶設(shè)備。
(8)取圖4的樹結(jié)構(gòu)為例,假設(shè)在設(shè)備密鑰沒有泄漏的初始狀態(tài)下,藉助于設(shè)備密鑰A、通過加密媒體密鑰而生成加密的媒體密鑰。
現(xiàn)在假設(shè),用戶設(shè)備1到16之一被第三方非法竊取,設(shè)備密鑰A被暴露,以及只具有設(shè)備密鑰A的克隆設(shè)備被制造。由于克隆設(shè)備只具有設(shè)備密鑰A,所以不可能指定用戶設(shè)備1到16中哪個用戶設(shè)備被竊取。而且,由于克隆設(shè)備具有設(shè)備密鑰A,所以它能夠得到正確的媒體密鑰。
在這種情形下,必須只撤消設(shè)備密鑰A,以及通過使用可覆蓋所有設(shè)備的設(shè)備密鑰來加密該媒體密鑰,換句話說,它是所有設(shè)備所共有的。這里使用覆蓋所有設(shè)備的設(shè)備密鑰的原因在于,不可能判斷哪個設(shè)備已被竊取。
為了對付這一點,媒體密鑰分別藉助于設(shè)備密鑰B和設(shè)備密鑰C被加密,生成兩個加密的設(shè)備密鑰。
接著,如果密鑰B被暴露,則設(shè)備密鑰B被撤消,以及媒體密鑰分別藉助于設(shè)備密鑰C、設(shè)備密鑰D和設(shè)備密鑰E被加密,生成三個加密的媒體密鑰。
如果這被重復(fù)的次數(shù)等于樹中的層數(shù),則最終將有可能指定哪個設(shè)備已被竊取。
為了對付所述的情形,當(dāng)只有設(shè)備密鑰A被撤消時,NRP{100}被附著到相應(yīng)于設(shè)備密鑰A的節(jié)點。在圖4的樹結(jié)構(gòu)的情形下,NRP{100}被附著到根。
NRP{100}的頭一個比特“1”表示該節(jié)點被撤消,以及在頭一個比特“1”后面的比特串“00”表示該節(jié)點的兩個直接從屬節(jié)點沒有被撤消。
換句話說,在圖4的樹結(jié)構(gòu)的情形下,如果NRP{100}被附著到根,這意味著,有兩個加密的媒體密鑰,它們是分別藉助于設(shè)備密鑰B和設(shè)備密鑰C對媒體密鑰加密而生成的。這樣,可以說,NRP的頭一個比特“1”意味著,在該節(jié)點下面有兩個加密的媒體密鑰。
另一方面,正如第二實施例中描述的,當(dāng)NRP是{111}時,頭一個比特“1”表示在該節(jié)點下面沒有NRP。
下面更詳細地描述這一點。
<密鑰管理設(shè)備100>
這里,假設(shè)密鑰管理設(shè)備100生成圖4所示的樹結(jié)構(gòu)T100,以及把設(shè)備密鑰指配給每個節(jié)點,以及把用戶設(shè)備指配給每個葉子,如圖4所示。
此后,如圖49所示,被分別指配給節(jié)點T701,T702和T703的設(shè)備密鑰KeyA,KeyB和KeyE,如前所述,被泄漏。密鑰管理設(shè)備100撤消設(shè)備密鑰KeyA,KeyB和KeyE,生成標(biāo)題信息和密鑰信息,以及把生成的標(biāo)題信息和密鑰信息經(jīng)過密鑰信息記錄設(shè)備200寫入到記錄媒體。
(a)設(shè)備密鑰KeyA,KeyB和KeyE的撤消密鑰管理設(shè)備把撤消標(biāo)志“1”附著到分別包括設(shè)備密鑰KeyA,KeyB和KeyE的該條節(jié)點信息。
(b)標(biāo)題信息的生成密鑰管理設(shè)備100藉助于包括其上附著有撤消標(biāo)志的節(jié)點信息的樹結(jié)構(gòu)表,生成附著到根T701的NRP{010},以及把生成的NRP{010}經(jīng)過密鑰信息記錄設(shè)備200寫入到記錄媒體作為標(biāo)題信息的一部分。這里,NRP的頭一個比特“0”表示,根T701的其中一個直接從屬節(jié)點被撤消,以及另一個從屬節(jié)點未被撤消。而且,正如實施例中描述的,較低的兩個比特“10”表示,在根T701的兩個直接從屬節(jié)點中,左面節(jié)點T702被撤消以及右面節(jié)點T704未被撤消。
接著,密鑰管理設(shè)備100生成附著到節(jié)點T702的NRP{001},以及把生成的NRP{001}經(jīng)過密鑰信息記錄設(shè)備200寫入到記錄媒體作為標(biāo)題信息的一部分。這里,NRP的頭一個比特“0”表示,節(jié)點T702的其中一個直接從屬節(jié)點被撤消,以及另一個直接從屬節(jié)點未被撤消。而且,正如實施例中描述的,較低的兩個比特“01”表示,在節(jié)點T702的兩個直接從屬節(jié)點中,左面節(jié)點T705未被撤消以及右面節(jié)點T703被撤消。
接著,密鑰管理設(shè)備100生成附著到節(jié)點T703的NRP{100},以及把生成的NRP{100}經(jīng)過密鑰信息記錄設(shè)備200寫入到記錄媒體作為標(biāo)題信息的一部分。NRP{100},如上所述,表示節(jié)點T703的兩個直接從屬節(jié)點T706和T707都不被撤消,以及節(jié)點T706和T707具有各自的加密的媒體密鑰。
這樣,圖50所示的標(biāo)題信息D100被寫入到記錄媒體。如圖50所示,標(biāo)題信息D1000由NRP{010},{001}和{100}按所闡述的次序組成。
(c)密鑰信息的生成接著,密鑰管理設(shè)備100藉助于一些未撤消的設(shè)備密鑰來加密該媒體密鑰,以生成加密的媒體密鑰,以及把包括生成的加密的媒體密鑰的密鑰信息和包括NRP的標(biāo)題信息經(jīng)過密鑰信息記錄設(shè)備200寫入到記錄媒體。密鑰信息按以下方式被生成。
首先,密鑰管理設(shè)備100藉助于指配給最高層上的節(jié)點的設(shè)備密鑰來加密該媒體密鑰,以生成加密的媒體密鑰。這里,如圖49所示,在未撤消的設(shè)備密鑰中間,在最高層上的設(shè)備密鑰是被指配給節(jié)點T704的設(shè)備密鑰KeyC。所以,密鑰管理設(shè)備100藉助于設(shè)備密鑰KeyC加密媒體密鑰,以生成加密的媒體密鑰E1(KeyC,媒體密鑰),以及把生成的加密的媒體密鑰E1(KeyC,媒體密鑰)經(jīng)過密鑰信息記錄設(shè)備200寫入到記錄媒體。
接著,密鑰管理設(shè)備100藉助于指配給最高層上、除設(shè)備密鑰KeyC被指配給的節(jié)點T704以及節(jié)點T704的所有從屬節(jié)點以外的節(jié)點的設(shè)備密鑰來加密該媒體密鑰,生成加密的媒體密鑰。這里,由于可應(yīng)用的節(jié)點是節(jié)點T705,所以密鑰管理設(shè)備100藉助于被指配給節(jié)點T705的設(shè)備密鑰KeyD來加密該媒體密鑰,生成加密的媒體密鑰E1(KeyD,媒體密鑰),以及把生成的加密的媒體密鑰E1(KeyD,媒體密鑰)經(jīng)過密鑰信息記錄設(shè)備200寫入到記錄媒體。
接著,密鑰管理設(shè)備100藉助于指配給最高層上、除設(shè)備密鑰KeyC被指配給的節(jié)點T704和設(shè)備密鑰KeyD被指配給的節(jié)點T705以及節(jié)點T704與T705的各自所有從屬節(jié)點以外的節(jié)點的設(shè)備密鑰來加密該媒體密鑰,生成加密的媒體密鑰。這里,由于可應(yīng)用的節(jié)點是節(jié)點T706,所以密鑰管理設(shè)備100藉助于被指配給節(jié)點T706的設(shè)備密鑰KeyJ來加密該媒體密鑰,生成加密的媒體密鑰E1(KeyJ,媒體密鑰),以及把生成的加密的媒體密鑰E1(KeyJ,媒體密鑰)經(jīng)過密鑰信息記錄設(shè)備200寫入到記錄媒體。
接著,密鑰管理設(shè)備100以與上面相同的方式藉助于設(shè)備密鑰KeyK來加密該媒體密鑰,生成加密的媒體密鑰E1(KeyK,媒體密鑰),以及把生成的加密的媒體密鑰E1(KeyK,媒體密鑰)經(jīng)過密鑰信息記錄設(shè)備200寫入到記錄媒體。
這樣,圖50所示的密鑰信息D1010被寫入到記錄媒體。如圖50所示,密鑰信息D1010由加密的媒體密鑰E1(KeyC,媒體密鑰)、E1(KeyD,媒體密鑰)、E1(KeyJ,媒體密鑰)和E1(KeyK,媒體密鑰)按所闡述的次序組成。
<記錄設(shè)備300a>
圖51的流程圖被使用來描述由記錄設(shè)備300a的指定單元303如上所述從被存儲在記錄媒體的標(biāo)題信息和密鑰信息指定一個加密的媒體密鑰的運行。
指定單元303具有表示加密的媒體密鑰的位置的變量X,表示與用戶設(shè)備本身有關(guān)的NRP的位置的變量A,表示在特定的層中NRP的數(shù)目的變量W,和表示作為處理的目標(biāo)的層的號碼的變量i。
指定單元303設(shè)置變量A=0,變量W=1,和變量i=0作為初始值(步驟S301)。
接著,指定單元303檢驗在相應(yīng)于ID信息最高第i個比特的數(shù)值的比特位置中的數(shù)值B是“0”還是“1”(步驟S303)。這里,正如在實施例中描述的,相應(yīng)的比特圖案是根據(jù)“0”指配給樹結(jié)構(gòu)中左面的路徑和“1”指配給右面的路徑的法則組成的ID信息。所以,ID信息的最高第i比特的數(shù)值“0”相應(yīng)于第A個NRP的兩個較低比特的左面比特,以及最高第i比特的數(shù)值“1”相應(yīng)于第A個NRP的兩個較低比特的右面比特。
接著,當(dāng)數(shù)值B=0時(步驟S303),指定單元303按以下方法檢驗從開頭NRP到上一次被檢驗的NRP的每個NRP。應(yīng)當(dāng)指出,第A個NRP不包括在內(nèi)。
(a)當(dāng)NRP的最高比特是“0”而較低的兩個比特不是“11”時,指定單元303把“1”加到變量X。
(b)當(dāng)NRP的最高比特是“1”時,指定單元303把被包括在較低兩個比特中的“0”的數(shù)目加到變量X。
對于上一次被檢驗的第A個NRP,只有當(dāng)NRP的最高比特是“1”時,指定單元303才把直到相應(yīng)比特的“0”的數(shù)目加到變量X。這里,相應(yīng)比特本身不包括在內(nèi)。這樣得到的變量X表示加密的媒體密鑰的位置。而且,在這一點的變量i是用于標(biāo)識設(shè)備密鑰的設(shè)備標(biāo)識信息(步驟S307c)。指定單元303然后結(jié)束處理。
另一方面,當(dāng)數(shù)值B=1時(步驟S303),指定單元303還判斷NRP的最高比特是否為“1”,以及如果是的話(步驟S308),結(jié)束處理,因為用戶設(shè)備被撤消。
當(dāng)NRP的最高比特不是“1”時(步驟S308),指定單元303計數(shù)在層i的全部W個NRP的較低比特中包括的“1”的數(shù)目,以及把計數(shù)值設(shè)置在變量W中。應(yīng)當(dāng)指出,其最高的比特是“1”的NRP不被計數(shù)。這樣得到的變量W表示在下一層i+1中NRP的數(shù)目(步驟S304c)。
接著,指定單元303計數(shù)從在層i的第一個NRP直到相應(yīng)的比特位置的每個NRP的較低兩個比特中包括的“1”的數(shù)目,以及把計數(shù)值設(shè)置在變量A中。這里,相應(yīng)的比特位置不被計數(shù)。而且,其最高的比特是“1”的NRP不被計數(shù)。這樣得到的變量A表示在下一層i+1中的NRP中間,與用戶設(shè)備本身有關(guān)的NRP的位置(步驟S305c)。
接著,指定單元303計算變量i=i+1(步驟S306),移到步驟S303,以及重復(fù)上述的處理。
這樣,密鑰管理設(shè)備能夠把標(biāo)題信息和密鑰信息寫入到記錄設(shè)備,以及重現(xiàn)設(shè)備能夠不單在從樹結(jié)構(gòu)的葉子到根的路徑上的設(shè)備密鑰被撤消的情形下,而且也在被指配給樹結(jié)構(gòu)的某些節(jié)點的設(shè)備密鑰被撤消的情形下,指定加密的媒體密鑰。
(9)取圖4的樹結(jié)構(gòu)為例,假設(shè)樹處在初始階段下,其中沒有設(shè)備密鑰被泄漏,以及樹結(jié)構(gòu)中沒有節(jié)點被撤消。
在這種情形下,密鑰管理設(shè)備藉助于與根相對應(yīng)的設(shè)備密鑰KeyA來加密該媒體密鑰,以生成加密的媒體密鑰。接著,密鑰管理設(shè)備生成一個特別的NRP{00},表示在樹結(jié)構(gòu)中沒有撤消的節(jié)點,以及所有的節(jié)點都是有效的(即,沒有被撤消的)。然后,密鑰管理設(shè)備把生成的加密的媒體密鑰和生成的NRP{00}經(jīng)過密鑰信息記錄設(shè)備寫入到記錄媒體。
而且,在這種情形下,當(dāng)重現(xiàn)設(shè)備從記錄媒體讀出NRP以及判斷唯一讀出的NRP是{00}且沒有其他的NRP被記錄在記錄媒體上時,重現(xiàn)設(shè)備判斷在樹結(jié)構(gòu)中沒有撤消的節(jié)點。然后,重現(xiàn)設(shè)備讀出被記錄在記錄媒體上的加密的媒體密鑰,以及藉助于作為在由重現(xiàn)設(shè)備存儲的設(shè)備密鑰中間的、與根相對應(yīng)的設(shè)備密鑰的設(shè)備密鑰KeyA來解密該讀出的加密的媒體密鑰,以生成媒體密鑰。
記錄設(shè)備在這種情形下也以與重現(xiàn)設(shè)備相同的方式運行。
(10)本發(fā)明可以是上面所示的方法。而且,這些方法可以是計算機實現(xiàn)的計算機程序,以及可以是計算機程序的數(shù)字信號。
而且,本發(fā)明可以是計算機可讀的記錄媒體設(shè)備,諸如軟盤、硬盤、CD-ROM(緊湊盤-只讀存儲器)、和MO(磁-光)、DVD-ROM(數(shù)字通用盤-只讀存儲器)、DVD RAM、或半導(dǎo)體存儲器,它存儲計算機程序或數(shù)字信號。而且,本發(fā)明可以是被記錄在任何上述的記錄媒體設(shè)備上的計算機程序或數(shù)字信號。
而且,本發(fā)明可以是通過電通信線、無線或有線通信線、或以互聯(lián)網(wǎng)為代表的網(wǎng)絡(luò)發(fā)送的計算機程序或數(shù)字信號。
而且,本發(fā)明可以是包括微處理器和存儲器的計算機系統(tǒng),存儲器存儲計算機程序,以及微處理器按照計算機程序運行。
而且,通過把程序或數(shù)字信號傳送到記錄媒體設(shè)備,或經(jīng)過網(wǎng)絡(luò)等傳送程序或數(shù)字信號,可以由另一個獨立的計算機系統(tǒng)執(zhí)行程序或數(shù)字信號。
(11)本發(fā)明可以是上述的實施例和修正方案的任意組合。
7.總結(jié)正如清楚地描述的,按照本發(fā)明的公開的第一實施例,按級的次序排列NRP作為標(biāo)題信息,該標(biāo)題信息被預(yù)先記錄在記錄媒體上,這使得加密的媒體密鑰的密鑰信息和播放器的有效的指定能夠被解密。
而且,按照公開的第二實施例,通過將一個比特作為標(biāo)題信息加到NRP的頭部以表示節(jié)點的子代是否都是撤消的設(shè)備,而使在樹結(jié)構(gòu)的特定的部分出現(xiàn)撤消的設(shè)備的情形下,標(biāo)題信息在尺寸上可被減小。
而且,按照公開的第三實施例,通過按照特定的圖案判斷特定節(jié)點的所有子代是否為撤消的設(shè)備,而使標(biāo)題信息在尺寸上可被進一步減小。
而且,按照公開的第四實施例和第五實施例,有可能以不同于第一到第三實施例中顯示的次序排列NRP。
工業(yè)可應(yīng)用性以上描述的、由密鑰管理設(shè)備和用戶設(shè)備組成的數(shù)字作品保護系統(tǒng)是一種當(dāng)被存儲在DVD等的數(shù)字化著作,諸如音樂、電影或小說在市場上流通時防止非法使用內(nèi)容的理想的手段。
權(quán)利要求
1.一種由密鑰管理設(shè)備和至少一個用戶設(shè)備組成的數(shù)字作品保護系統(tǒng),該密鑰管理設(shè)備具有與n進制樹(n是不小于2的整數(shù))有關(guān)的至少一個設(shè)備密鑰,以及指配一個或多個設(shè)備密鑰給每個用戶設(shè)備,每個用戶設(shè)備根據(jù)指配的設(shè)備密鑰來加密或解密,該密鑰管理設(shè)備包括設(shè)備密鑰存儲單元,用來存儲與n進制樹中至少一個節(jié)點一一對應(yīng)的至少一個設(shè)備密鑰,在從根到葉子的至少一條路徑上的多個節(jié)點被撤消;密鑰信息生成單元,用來通過分別使用多個公共的設(shè)備密鑰來加密媒體密鑰,以生成多個加密的媒體密鑰,每個公共的設(shè)備密鑰是該至少一個設(shè)備密鑰之一,它與有效的節(jié)點相對應(yīng)以及被共同指配給至少一個用戶設(shè)備,并且該密鑰信息生成單元把生成的多個加密的媒體密鑰以與n進制樹的結(jié)構(gòu)相關(guān)的次序?qū)懭氲接涗浢襟w;以及撤消信息生成單元,用來對于除葉子外的每個撤消的節(jié)點生成一條撤消信息,表示被撤消節(jié)點的n個直接從屬節(jié)點的每一個是否分別被撤消,以得到多條撤消信息,和把得到的各條撤消信息按次序?qū)懭氲接涗浢襟w,以及每個用戶設(shè)備包括指定單元,用來從根據(jù)被指配給用戶設(shè)備的其中一個設(shè)備密鑰被加密的多個加密的媒體密鑰中間,通過使用多條撤消信息,而指定一個加密的媒體密鑰;解密單元,用來根據(jù)被指配給用戶設(shè)備的設(shè)備密鑰、通過解密所指定的加密的媒體密鑰而生成媒體密鑰;以及加密/解密單元,用來執(zhí)行以下項目的至少一項(a)根據(jù)生成的媒體密鑰來加密內(nèi)容和把加密的內(nèi)容寫入到記錄媒體,以及(b)根據(jù)得到的媒體密鑰來解密從記錄媒體讀出的加密的內(nèi)容,以生成內(nèi)容。
2.一種密鑰管理設(shè)備,具有與n進制樹(n是不小于2的整數(shù))有關(guān)的至少一個設(shè)備密鑰,以及指配一個或多個設(shè)備密鑰給至少一個用戶設(shè)備,該密鑰管理設(shè)備包括設(shè)備密鑰存儲單元,用來存儲與n進制樹中至少一個節(jié)點一一對應(yīng)的至少一個設(shè)備密鑰,在從根到葉子的至少一條路徑上的多個節(jié)點被撤消;密鑰信息生成單元,用來通過分別使用多個公共的設(shè)備密鑰來加密煤體密鑰,以生成多個加密的媒體密鑰,每個公共的設(shè)備密鑰是該至少一個設(shè)備密鑰之一,它與有效的節(jié)點相對應(yīng)以及被共同指配給至少一個用戶設(shè)備,并且該密鑰信息生成單元把生成的多個加密的媒體密鑰以與n進制樹的結(jié)構(gòu)相關(guān)的次序?qū)懭氲接涗浢襟w;以及撤消信息生成單元,用來對于除葉子外的每個撤消的節(jié)點生成一條撤消信息,表示被撤消節(jié)點的n個直接從屬節(jié)點的每一個是否分別被撤消,以得到多條撤消信息,和把得到的各條撤消信息按次序?qū)懭氲接涗浢襟w。
3.權(quán)利要求2的密鑰管理設(shè)備,其中n進制樹由多個層組成,其中密鑰信息生成單元把多個加密的媒體密鑰寫入到記錄媒體的次序是從根側(cè)的層到葉側(cè)的層的層次序,根是開始點,以及撤消信息生成單元把各條撤消信息按次序?qū)懭氲接涗浢襟w。
4.權(quán)利要求2的密鑰管理設(shè)備,其中密鑰信息生成單元把多個加密的媒體密鑰寫入到記錄媒體的次序是各節(jié)點被放置在從根到葉子的路徑上的次序,根是開始點且每個節(jié)點按次序只被包括一次,以及撤消信息生成單元把各條撤消信息按次序?qū)懭氲接涗浢襟w。
5.權(quán)利要求2的密鑰管理設(shè)備,其中撤消信息生成單元對于除葉子外的每個撤消的節(jié)點生成一條撤消信息。
6.權(quán)利要求2的密鑰管理設(shè)備,其中該撤消信息生成單元對于除葉子外其從屬節(jié)點都被撤消的每個撤消的節(jié)點生成一條專門的撤消信息,表示從屬節(jié)點都被撤消,對于撤消的從屬節(jié)點抑制撤消信息的生成,以及對于除葉子外其n個從屬節(jié)點沒有都被撤消的每個撤消的節(jié)點生成一條撤消信息,表示撤消的節(jié)點的n個從屬節(jié)點的每一個是否分別被撤消。
7.權(quán)利要求6的密鑰管理設(shè)備,其中撤消信息生成單元生成所述專門的撤消信息,它由表示所有的從屬節(jié)點被撤消的第一附加信息和表示n個直接從屬節(jié)點的每一個分別被撤消的n數(shù)字信息組成,對于所有的撤消的從屬節(jié)點抑制撤消信息的生成,以及對于其n個從屬節(jié)點沒有都被撤消的撤消節(jié)點生成每條撤消信息,它由表示不是所有從屬節(jié)點都被撤消的第二附加信息和表示n個直接從屬節(jié)點的每一個是否分別被撤消的n數(shù)字信息組成。
8.權(quán)利要求6的密鑰管理設(shè)備,其中撤消信息生成單元生成所述專門的撤消信息,它由表示n個直接從屬節(jié)點的每一個分別被撤消的n數(shù)字專門數(shù)值組成,對于所有的撤消的從屬節(jié)點抑制撤消信息的生成,以及對于其n個從屬節(jié)點沒有都被撤消的節(jié)點生成每條撤消信息,它由表示n個直接從屬節(jié)點的每一個是否分別被撤消的n數(shù)字組成。
9.一種密鑰管理設(shè)備,具有與n進制樹(n是不小于2的整數(shù))有關(guān)的至少一個設(shè)備密鑰,以及指配一個或多個設(shè)備密鑰給至少一個用戶設(shè)備,該密鑰管理設(shè)備包括設(shè)備密鑰存儲單元,用來存儲與n進制樹中至少一個節(jié)點一一對應(yīng)的至少一個設(shè)備密鑰,一個或多個節(jié)點被撤消;密鑰信息生成單元,用來通過分別使用多個公共的設(shè)備密鑰來加密媒體密鑰,以生成多個加密的媒體密鑰,每個公共的設(shè)備密鑰是該至少一個設(shè)備密鑰之一,它與有效的節(jié)點相對應(yīng)以及被共同指配給至少一個用戶設(shè)備,并且該密鑰信息生成單元把生成的多個加密的媒體密鑰以與n進制樹的結(jié)構(gòu)相關(guān)的次序?qū)懭氲接涗浢襟w;以及撤消信息生成單元,用來對于除葉子外的每個撤消的節(jié)點,(a)當(dāng)撤消節(jié)點的n個直接從屬節(jié)點的至少一個被撤消時,生成一條第一撤消信息,表示n個從屬節(jié)點的每個節(jié)點是否分別被撤消,(b)當(dāng)n個直接從屬節(jié)點中沒有一個被撤消時,生成一條第二撤消信息,表示n個直接從屬節(jié)點中沒有一個被撤消,用來得到以下項目中的一項(i)至少一條第一撤消信息,(ii)至少一條第二撤消信息,和(iii)至少一條第一撤消信息和至少一條第二撤消信息,以及用來把得到的以下項目中的一項按次序?qū)懭氲接涗浢襟w(i)至少一條第一撤消信息,(ii)至少一條第二撤消信息,和(iii)至少一條第一撤消信息和至少一條第二撤消信息。
10.一種密鑰管理設(shè)備,具有與n進制樹(n是不小于2的整數(shù))有關(guān)的至少一個設(shè)備密鑰,以及指配一個或多個設(shè)備密鑰給至少一個用戶設(shè)備,該密鑰管理設(shè)備包括設(shè)備密鑰存儲單元,用來存儲與n進制樹中至少一個節(jié)點一一對應(yīng)的至少一個設(shè)備密鑰,n進制樹中所有的節(jié)點是有效的;密鑰信息生成單元,用來根據(jù)共同指配給至少一個用戶設(shè)備的一個設(shè)備密鑰來加密一個媒體密鑰,以生成一個加密的媒體密鑰,并把生成的加密的媒體密鑰寫入到記錄媒體;以及撤消信息生成單元,用來把表示n進制樹中所有的節(jié)點都是有效的信息寫入到記錄媒體。
11.一種用戶設(shè)備,由具有與n進制樹(n是等于或大于2的整數(shù))有關(guān)的至少一個設(shè)備密鑰的密鑰管理設(shè)備指配給一個或多個設(shè)備密鑰,以及根據(jù)指配的設(shè)備密鑰來加密或解密,其中該密鑰管理設(shè)備(a)存儲與n進制樹中至少一個節(jié)點一一對應(yīng)的至少一個設(shè)備密鑰,在從根到葉子的至少一條路徑上的多個節(jié)點被撤消,(b)通過分別使用多個公共的設(shè)備密鑰來加密媒體密鑰,以生成多個加密的媒體密鑰,每個公共的設(shè)備密鑰是該至少一個設(shè)備密鑰之一,它與有效的節(jié)點相對應(yīng),以及被共同指配給至少一個用戶設(shè)備;并把生成的多個加密的媒體密鑰以與n進制樹的結(jié)構(gòu)相關(guān)的次序?qū)懭氲接涗浢襟w,和(c)對于除葉子外的每個撤消的節(jié)點生成一條撤消信息,表示該被撤消節(jié)點的n個直接從屬節(jié)點的每一個是否分別被撤消,以得到多條撤消信息,和把得到的各條撤消信息按次序?qū)懭氲接涗浢襟w,該用戶設(shè)備包括指定單元,用來從根據(jù)被指配給用戶設(shè)備的其中一個設(shè)備密鑰來加密的多個加密的媒體密鑰中間,通過使用多條撤消信息,指定一個加密的媒體密鑰;解密單元,用來根據(jù)被指配給用戶設(shè)備的設(shè)備密鑰、通過解密所指定的加密的媒體密鑰而生成媒體密鑰;以及加密/解密單元,用來執(zhí)行以下項目的至少一項(d)根據(jù)生成的媒體密鑰來加密內(nèi)容和把加密的內(nèi)容寫入到記錄媒體,以及(e)根據(jù)得到的媒體密鑰來解密從記錄媒體讀出的加密的內(nèi)容,以生成內(nèi)容。
12.權(quán)利要求11的用戶設(shè)備,其中n進制樹由多個層組成,其中多個加密的媒體密鑰被寫入到記錄媒體的次序是從根側(cè)的層到葉側(cè)的層的層的次序,根是開始點,各條撤消信息按次序被寫入到記錄媒體,以及指定單元藉助于按次序被寫入的多條撤消信息,從按次序被寫入的多個加密的媒體密鑰中間,指定加密的媒體密鑰。
13.權(quán)利要求11的用戶設(shè)備,其中n進制樹由多個層組成,其中多個加密的媒體密鑰被寫入到記錄媒體的次序是各節(jié)點被放置在從根到葉子的路徑上的次序,根是開始點且每個節(jié)點按次序只被包括一次,各條撤消信息按次序被寫入到記錄媒體,以及指定單元藉助于按次序被寫入的多條撤消信息,從按次序被寫入的多個加密的媒體密鑰中間,指定加密的媒體密鑰。
14.權(quán)利要求11的用戶設(shè)備,其中對于除葉子外的每個撤消的節(jié)點生成一條撤消信息,和把該撤消信息寫入到記錄媒體,以及指定單元藉助于各條撤消信息而指定加密的媒體密鑰。
15.權(quán)利要求11的用戶設(shè)備,其中對于除葉子外其從屬節(jié)點都被撤消的每個撤消的節(jié)點生成一條專門的撤消信息,表示從屬節(jié)點都被撤消,對于撤消的從屬節(jié)點抑制撤消信息的生成,對于除葉子外其n個從屬節(jié)點沒有都被撤消的每個撤消的節(jié)點生成一條撤消信息,表示撤消的節(jié)點的n個從屬節(jié)點的每一個是否分別被撤消,以及指定單元藉助于各條專門的撤消信息和各條撤消信息,指定加密的媒體密鑰。
16.權(quán)利要求15的用戶設(shè)備,其中該專門的撤消信息由表示所有的從屬節(jié)點被撤消的第一附加信息和表示n個直接從屬節(jié)點的每一個分別被撤消的n數(shù)字信息組成,對于所有的撤消的從屬節(jié)點抑制撤消信息的生成,以及對于其n個直接從屬節(jié)點沒有都被撤消的撤消節(jié)點的每條撤消信息由表示不是所有的從屬節(jié)點都被撤消的第二附加信息和表示n個直接從屬節(jié)點的每一個是否分別被撤消的n數(shù)字信息組成,以及指定單元藉助于各條專門的撤消信息和各條撤消信息,指定加密的媒體密鑰。
17.權(quán)利要求15的用戶設(shè)備,其中該專門的撤消信息由表示n個直接從屬節(jié)點的每一個分別被撤消的n數(shù)字專門數(shù)值組成,對于所有的撤消的從屬節(jié)點抑制撤消信息的生成,對于其n個直接從屬節(jié)點沒有都被撤消的節(jié)點的每條撤消信息由表示n個直接從屬節(jié)點的每一個是否分別被撤消的n數(shù)字組成,以及指定單元藉助于各條專門的撤消信息和各條撤消信息,指定加密的媒體密鑰。
18.一種用戶設(shè)備,由具有與n進制樹(n是等于或大于2的整數(shù))有關(guān)的至少一個設(shè)備密鑰的密鑰管理設(shè)備指配給一個或多個設(shè)備密鑰,以及根據(jù)指配的設(shè)備密鑰來加密或解密,其中該密鑰管理設(shè)備(a)存儲與n進制樹中至少一個節(jié)點一一對應(yīng)的至少一個設(shè)備密鑰,一個或多個節(jié)點被撤消,(b)通過分別使用多個公共的設(shè)備密鑰來加密媒體密鑰,以生成多個加密的媒體密鑰,每個公共的設(shè)備密鑰是該至少一個設(shè)備密鑰之一,它與有效的節(jié)點相對應(yīng),以及被共同指配給至少一個用戶設(shè)備;并把生成的多個加密的媒體密鑰以與n進制樹的結(jié)構(gòu)相關(guān)的次序?qū)懭氲接涗浢襟w,(c)對于除葉子外的每個節(jié)點,(c1)當(dāng)撤消節(jié)點的n個直接從屬節(jié)點的至少一個被撤消時,生成第一撤消信息,表示n個從屬節(jié)點的每個節(jié)點是否分別被撤消,(c2)當(dāng)n個直接從屬節(jié)點中沒有一個被撤消時,生成第二撤消信息,表示n個從屬節(jié)點中沒有一個被撤消,以得到以下項目中的一項(i)至少一條第一撤消信息,(ii)至少一條第二撤消信息,和(iii)至少一條第一撤消信息和至少一條第二撤消信息,以及(d)把得到的以下項目中的一項按次序?qū)懭氲接涗浢襟w(i)至少一條第一撤消信息,(ii)至少一條第二撤消信息,和(iii)至少一條第一撤消信息和至少一條第二撤消信息,該用戶設(shè)備包括指定單元用來使用以下項目中的一項(i)至少一條第一撤消信息,(ii)至少一條第二撤消信息,和(iii)至少一條第一撤消信息和至少一條第二撤消信息,以從根據(jù)被指配給用戶設(shè)備的設(shè)備密鑰之一被加密的多個加密的媒體密鑰中間,指定一個加密的媒體密鑰;解密單元,用來根據(jù)被指配給用戶設(shè)備的設(shè)備密鑰、通過解密所指定的加密的媒體密鑰而生成媒體密鑰;以及加密/解密單元,用來執(zhí)行以下項目的至少一項(e)根據(jù)生成的媒體密鑰來加密內(nèi)容和把加密的內(nèi)容寫入到記錄媒體,以及(f)根據(jù)得到的媒體密鑰來解密從記錄媒體讀出的加密的內(nèi)容,以生成內(nèi)容。
19.一種用戶設(shè)備,由具有與n進制樹(n是等于或大于2的整數(shù))有關(guān)的至少一個設(shè)備密鑰的密鑰管理設(shè)備指配給一個或多個設(shè)備密鑰,以及根據(jù)指配的設(shè)備密鑰之一來加密或解密,其中密鑰管理設(shè)備(a)存儲與n進制樹中至少一個節(jié)點一一對應(yīng)的至少一個設(shè)備密鑰,n進制樹中所有的節(jié)點都是有效的,(b)通過根據(jù)共同指配給至少一個用戶設(shè)備的一個設(shè)備密鑰來加密一個媒體密鑰,而生成一個加密的媒體密鑰,和(c)把生成的加密的媒體密鑰寫入到記錄媒體,該用戶設(shè)備包括讀出單元,用來當(dāng)判斷表示所有節(jié)點都有效的信息被記錄在記錄媒體時,讀出被記錄在記錄媒體上的、加密的媒體密鑰;解密單元,用來根據(jù)設(shè)備密鑰來解密所指定的加密的媒體密鑰,以生成該媒體密鑰;以及加密/解密單元,用來執(zhí)行以下項目的至少一項目(d)根據(jù)生成的媒體密鑰來加密內(nèi)容和把加密的內(nèi)容寫入到記錄媒體,以及(e)通過根據(jù)得到的媒體密鑰來解密從記錄媒體讀出的加密的內(nèi)容而生成內(nèi)容。
20.一種在密鑰管理設(shè)備中使用的密鑰管理程序,該密鑰管理設(shè)備具有與n進制樹(n是不小于2的整數(shù))有關(guān)的至少一個設(shè)備密鑰以及指配一個或多個設(shè)備密鑰給至少一個用戶設(shè)備,該密鑰管理設(shè)備包括設(shè)備密鑰存儲單元,用來存儲與n進制樹中至少一個節(jié)點一一對應(yīng)的至少一個設(shè)備密鑰,在從根到葉子的至少一條路徑上的多個節(jié)點被撤消,以及該密鑰管理程序包括密鑰信息步驟,通過分別使用多個公共的設(shè)備密鑰來加密媒體密鑰,以生成多個加密的媒體密鑰,每個公共的設(shè)備密鑰是該至少一個設(shè)備密鑰之一,它與有效的節(jié)點相對應(yīng)以及被共同指配給至少一個用戶設(shè)備;并把生成的多個加密的媒體密鑰以與n進制樹的結(jié)構(gòu)相關(guān)的次序?qū)懭氲接涗浢襟w;以及撤消信息生成步驟,對于除葉子外的每個撤消的節(jié)點生成一條撤消信息,表示該撤消的節(jié)點的n個直接從屬節(jié)點的每一個是否分別被撤消,以得到多條撤消信息,和把得到的各條撤消信息按次序?qū)懭氲接涗浢襟w。
21.一種在用戶設(shè)備中使用的用戶程序,該用戶設(shè)備由具有與n進制樹(n是等于或大于2的整數(shù))有關(guān)的至少一個設(shè)備密鑰的密鑰管理設(shè)備指配給一個或多個設(shè)備密鑰,以及根據(jù)指配的設(shè)備密鑰之一來加密或解密,其中該密鑰管理設(shè)備(a)存儲與n進制樹中至少一個節(jié)點一一對應(yīng)的至少一個設(shè)備密鑰,在從根到葉子的至少一條路徑上的多個節(jié)點被撤消,(b)通過分別使用多個公共的設(shè)備密鑰來加密媒體密鑰,以生成多個加密的媒體密鑰,每個公共的設(shè)備密鑰是該至少一個設(shè)備密鑰之一,它與有效節(jié)點相對應(yīng)的,以及被共同指配給至少一個用戶設(shè)備;并把生成的多個加密的媒體密鑰以與n進制樹的結(jié)構(gòu)相關(guān)的次序?qū)懭氲接涗浢襟w,和(c)對于除葉子外的每個撤消的節(jié)點生成一條撤消信息,表示該撤消的節(jié)點的n個直接從屬節(jié)點的每一個是否分別被撤消,以得到多條撤消信息,并把得到的各條撤消信息按次序?qū)懭氲接涗浢襟w,該用戶程序包括指定步驟,從根據(jù)被指配給用戶設(shè)備的設(shè)備密鑰之一加密的多個加密的媒體密鑰中間,通過使用多條撤消信息,指定一個加密的媒體密鑰;解密步驟,根據(jù)被指配給用戶設(shè)備的設(shè)備密鑰、通過解密所指定的加密的媒體密鑰而生成媒體密鑰;以及加密/解密步驟,執(zhí)行以下項目的至少一項(d)根據(jù)生成的媒體密鑰來加密內(nèi)容和把加密的內(nèi)容寫入到記錄媒體,以及(e)根據(jù)得到的媒體密鑰來解密從記錄媒體讀出的加密的內(nèi)容,以生成內(nèi)容。
22.一種在密鑰管理設(shè)備中使用的密鑰管理方法,該密鑰管理設(shè)備具有與n進制樹(n是不小于2的整數(shù))有關(guān)的至少一個設(shè)備密鑰以及指配一個或多個設(shè)備密鑰給至少一個用戶設(shè)備,該密鑰管理設(shè)備包括設(shè)備密鑰存儲單元,用來存儲與n進制樹中至少一個節(jié)點一一對應(yīng)的至少一個設(shè)備密鑰,在從根到葉子的至少一條路徑上的多個節(jié)點被撤消,以及該密鑰管理方法包括密鑰信息步驟,通過分別使用多個公共的設(shè)備密鑰來加密媒體密鑰,以生成多個加密的媒體密鑰,每個公共的設(shè)備密鑰是該至少一個設(shè)備密鑰之一,它是與有效節(jié)點相對應(yīng)的以及被共同指配給至少一個用戶設(shè)備;并且把生成的多個加密的媒體密鑰以與n進制樹的結(jié)構(gòu)相關(guān)的次序?qū)懭氲接涗浢襟w;以及撤消信息生成步驟,對于除葉子外的每個撤消的節(jié)點生成一條撤消信息,表示該撤消的節(jié)點的n個直接從屬節(jié)點的每一個是否分別被撤消,以得到多條撤消信息,和把得到的各條撤消信息按次序?qū)懭氲接涗浢后w。
23.一種在用戶設(shè)備中使用的使用方法,該用戶設(shè)備由具有與n進制樹(n是等于或大于2的整數(shù))有關(guān)的至少一個設(shè)備密鑰的密鑰管理設(shè)備指配給一個或多個設(shè)備密鑰以及根據(jù)指配的設(shè)備密鑰之一來加密或解密,其中該密鑰管理設(shè)備(a)存儲與n進制樹中至少一個節(jié)點一一對應(yīng)的至少一個設(shè)備密鑰,在從根到葉子的至少一條路徑上的多個節(jié)點被撤消,(b)通過分別使用多個公共的設(shè)備密鑰來加密媒體密鑰,以生成多個加密的媒體密鑰,每個公共的設(shè)備密鑰是該至少一個設(shè)備密鑰之一,它與有效節(jié)點相對應(yīng),以及被共同指配給至少一個用戶設(shè)備;并且把生成的多個加密的媒體密鑰以與n進制樹的結(jié)構(gòu)相關(guān)的次序?qū)懭氲接涗浢襟w,和(c)對于除葉子外的每個撤消的節(jié)點生成一條撤消信息,表示該撤消的節(jié)點的n個直接從屬節(jié)點的每一個是否分別被撤消,以得到多條撤消信息,和把得到的各條撤消信息按次序?qū)懭氲接涗浢襟w,該用戶方法包括指定步驟,從根據(jù)被指配給用戶設(shè)備的設(shè)備密鑰之一加密的多個加密的媒體密鑰中間,通過使用多條撤消信息,指定一個加密的媒體密鑰;解密步驟,根據(jù)被指配給用戶設(shè)備的設(shè)備密鑰、通過解密所指定的加密的媒體密鑰而生成該媒體密鑰;以及加密/解密步驟,執(zhí)行以下項目的至少一項(d)根據(jù)生成的媒體密鑰來加密內(nèi)容和把加密的內(nèi)容寫入到記錄媒體,以及(e)根據(jù)得到的媒體密鑰來解密從記錄媒體讀出的加密的內(nèi)容,以生成內(nèi)容。
24.一種計算機可讀的記錄媒體,其上記錄有在密鑰管理設(shè)備中使用的密鑰管理程序,該密鑰管理設(shè)備具有與n進制樹(n是不小于2的整數(shù))有關(guān)的至少一個設(shè)備密鑰以及指配一個或多個設(shè)備密鑰給至少一個用戶設(shè)備,該密鑰管理設(shè)備包括設(shè)備密鑰存儲單元,用來存儲與n進制樹中至少一個節(jié)點一一對應(yīng)的至少一個設(shè)備密鑰,在從根到葉子的至少一條路徑上的多個節(jié)點被撤消,以及該密鑰管理程序包括密鑰信息生成步驟,通過分別使用多個公共的設(shè)備密鑰來加密媒體密鑰,以生成多個加密的媒體密鑰,每個公共的設(shè)備密鑰是該至少一個設(shè)備密鑰之一,它是與有效節(jié)點相對應(yīng)的以及被共同指配給至少一個用戶設(shè)備;并且把生成的多個加密的媒體密鑰以與n進制樹的結(jié)構(gòu)相關(guān)的次序?qū)懭氲接涗浢襟w;以及撤消信息生成步驟,對于除葉子外的每個撤消的節(jié)點生成一條撤消信息,表示該撤消的節(jié)點的n個直接從屬節(jié)點的每一個是否分別被撤消,以得到多條撤消信息,和把得到的各條撤消信息按次序?qū)懭氲接涗浢襟w。
25.一種計算機可讀的記錄媒體,其上記錄有在用戶設(shè)備中使用的用戶程序,該用戶設(shè)備由具有與n進制樹(n是等于或大于2的整數(shù))有關(guān)的至少一個設(shè)備密鑰的密鑰管理設(shè)備指配給至少一個設(shè)備密鑰以及根據(jù)指配的設(shè)備密鑰之一來加密或解密,其中該密鑰管理設(shè)備(a)存儲與n進制樹中至少一個節(jié)點一一對應(yīng)的至少一個設(shè)備密鑰,在從根到葉子的至少一條路徑上的多個節(jié)點被撤消,(b)通過分別使用多個公共的設(shè)備密鑰來加密媒體密鑰,以生成多個加密的媒體密鑰,每個公共的設(shè)備密鑰是該至少一個設(shè)備密鑰之一,它與有效的節(jié)點相對應(yīng),以及被共同指配給至少一個用戶設(shè)備;并且把生成的多個加密的媒體密鑰以與n進制樹的結(jié)構(gòu)相關(guān)的次序?qū)懭氲接涗浢襟w,和(c)對于除葉子外的每個撤消的節(jié)點生成一條撤消信息,表示該撤消的節(jié)點的n個直接從屬節(jié)點的每一個是否分別被撤消,以得到多條撤消信息,和把得到的各條撤消信息按次序?qū)懭氲接涗浢襟w,該用戶程序包括指定步驟,從根據(jù)被指配給用戶設(shè)備的設(shè)備密鑰之一加密的多個加密的煤體密鑰中間,通過使用多條撤消信息,指定一個加密的媒體密鑰;解密步驟,根據(jù)被指配給用戶設(shè)備的設(shè)備密鑰、通過解密所指定的加密的媒體密鑰而生成媒體密鑰;以及加密/解密步驟,執(zhí)行以下項目的至少一項(d)根據(jù)生成的媒體密鑰來加密內(nèi)容和把加密的內(nèi)容寫入到記錄媒體,以及(e)根據(jù)得到的媒體密鑰來解密從記錄媒體讀出的加密的內(nèi)容,以生成內(nèi)容。
26.一種計算機可讀的記錄媒體,其上按與n進制樹的結(jié)構(gòu)相關(guān)的次序記錄有多個加密的媒體密鑰和多條撤消信息,多個加密的媒體密鑰和多條撤消信息由密鑰管理設(shè)備生成和記錄在記錄媒體上,該密鑰管理設(shè)備具有與n進制樹有關(guān)的至少一個設(shè)備密鑰以及指配至少一個設(shè)備密鑰給至少一個用戶設(shè)備,其中該密鑰管理設(shè)備(a)存儲與n進制樹中至少一個節(jié)點一一對應(yīng)的至少一個設(shè)備密鑰,在從根到葉子的至少一條路徑上的多個節(jié)點被撤消,(b)通過分別使用多個公共的設(shè)備密鑰來加密媒體密鑰,以生成多個加密的媒體密鑰,每個公共的設(shè)備密鑰是該至少一個設(shè)備密鑰之一,它與有效的節(jié)點相對應(yīng),以及被共同指配給至少一個用戶設(shè)備;并且把生成的多個加密的媒體密鑰以與n進制樹的結(jié)構(gòu)相關(guān)的次序?qū)懭氲接涗浢襟w,和(c)對于除葉子外的每個撤消的節(jié)點生成一條撤消信息,表示該撤消的節(jié)點的n個直接從屬節(jié)點的每一個是否分別被撤消,以得到多條撤消信息,和把得到的各條撤消信息按次序?qū)懭氲接涗浢襟w。
全文摘要
在由記錄數(shù)字化內(nèi)容(諸如電影)的記錄設(shè)備或重現(xiàn)數(shù)字化內(nèi)容的重現(xiàn)設(shè)備、和記錄媒體組成的系統(tǒng)中,在記錄或重現(xiàn)中使用的媒體密鑰通過多個設(shè)備密鑰被加密,以及被記錄在記錄媒體上。這里,記錄設(shè)備或重現(xiàn)設(shè)備從多個加密的媒體密鑰中間,指定要解密的被加密媒體密鑰。密鑰管理設(shè)備把指配給樹結(jié)構(gòu)中節(jié)點的節(jié)點撤消圖案,連同加密的媒體密鑰一起按特定的次序記錄到記錄媒體上作為密鑰信息的標(biāo)題信息。記錄設(shè)備或重現(xiàn)設(shè)備通過順序地分析節(jié)點撤消圖案而指定要被解密的被加密媒體密鑰。
文檔編號G06F21/10GK1608361SQ0282621
公開日2005年4月20日 申請日期2002年10月21日 優(yōu)先權(quán)日2001年10月26日
發(fā)明者中野稔久, 松崎棗, 館林誠 申請人:松下電器產(chǎn)業(yè)株式會社