專利名稱:密鑰管理裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種用于在記錄介質(zhì)上記錄數(shù)字作品和從記錄介質(zhì)再現(xiàn)數(shù)字作品的技術(shù),更具體來說,涉及一種為保護(hù)數(shù)字作品而管理用于內(nèi)容加密/解密的密鑰信息的技術(shù)。
背景技術(shù):
隨著諸如數(shù)字處理、存儲(chǔ)和通信等技術(shù)近年來的發(fā)展,通過銷售或出租大容量記錄介質(zhì)而向用戶提供諸如電影的內(nèi)容服務(wù)已經(jīng)變得普遍。此外,其中數(shù)字化內(nèi)容被廣播、被接收裝置接收、在諸如可記錄光盤的記錄介質(zhì)上被存儲(chǔ)、然后被再現(xiàn)裝置再現(xiàn)的系統(tǒng),也正在普及。
在提供這樣的服務(wù)或系統(tǒng)時(shí),有必要保護(hù)內(nèi)容的版權(quán),并在版權(quán)持有人同意的限制下進(jìn)行再現(xiàn)、復(fù)制等等,以便內(nèi)容不被非法使用。
一般來說,以以下方式保護(hù)數(shù)字作品不受版權(quán)持有人沒有同意的非法復(fù)制。記錄裝置用加密密鑰加密數(shù)字內(nèi)容,然后將加密的內(nèi)容記錄在盤上。只有具有與加密密鑰對應(yīng)的解密密鑰的再現(xiàn)裝置才能解密加密的內(nèi)容。記錄裝置和再現(xiàn)裝置等的制造商與版權(quán)持有人協(xié)力確定一個(gè)版權(quán)保護(hù)協(xié)議,制造商獲得加密密鑰或解密密鑰(以下簡稱“密鑰”),條件是制造商遵守協(xié)議。制造商必須嚴(yán)格管理所獲得的密鑰,使密鑰不被泄露給第三方。
然而,即使制造商嚴(yán)格管理密鑰,第三方也有可能非法獲得密鑰。一旦密鑰被泄露給第三方,第三方就可能傳播密鑰,制造非法使用內(nèi)容的記錄和/或再現(xiàn)裝置,或者編制非法使用內(nèi)容的計(jì)算機(jī)程序并通過因特網(wǎng)散布該計(jì)算機(jī)程序,而不顧由制造商和版權(quán)持有人同意的協(xié)議。在這種情況下,版權(quán)持有人最好能在密鑰已經(jīng)被泄露后使已經(jīng)提供的內(nèi)容不能用所泄露的密鑰使用。
以下是響應(yīng)這種愿望的最簡單的方法。
密鑰管理組織(以下簡稱“組織”)有一個(gè)由多個(gè)設(shè)備密鑰(設(shè)備密鑰)和多個(gè)介質(zhì)密鑰(media key)組成的密鑰集。組織將設(shè)備密鑰之一和一個(gè)設(shè)備密鑰標(biāo)識號分別分配給多個(gè)記錄裝置和多個(gè)再現(xiàn)裝置的每一個(gè),然后提供每個(gè)記錄裝置和再現(xiàn)裝置相應(yīng)的設(shè)備密鑰和設(shè)備密鑰標(biāo)識號。此外,組織還向記錄介質(zhì)分配介質(zhì)密鑰。然后,組織用分配給記錄裝置和再現(xiàn)裝置的設(shè)備密鑰每一個(gè)加密介質(zhì)密鑰,以生成加密的介質(zhì)密鑰,并將對應(yīng)于所有設(shè)備密鑰的加密的介質(zhì)密鑰的一個(gè)列表以及密鑰標(biāo)識號,作為密鑰信息存儲(chǔ)在記錄介質(zhì)上。
當(dāng)記錄介質(zhì)被裝入記錄裝置或再現(xiàn)裝置時(shí),裝置從記錄介質(zhì)中的密鑰信息中提取與分配給裝置本身的密鑰標(biāo)識號對應(yīng)的加密的介質(zhì)密鑰,并分配給裝置本身的設(shè)備密鑰解密所提取的加密的介質(zhì)密鑰,以生成介質(zhì)密鑰。然后,記錄裝置用所獲得的介質(zhì)密鑰加密內(nèi)容,把所得到的加密的內(nèi)容記錄在記錄介質(zhì)上。另一方面,再現(xiàn)裝置用所獲得的介質(zhì)密鑰以相同的方式解密加密的內(nèi)容。
這樣,如果記錄設(shè)備或再現(xiàn)設(shè)備有一個(gè)合法分配的設(shè)備密鑰,它就總能從記錄介質(zhì)獲得相同的介質(zhì)密鑰,由此保持設(shè)備之間的相容性(compatibility)。
這里,假設(shè)某具體記錄裝置或再現(xiàn)裝置的設(shè)備密鑰已經(jīng)被泄露。當(dāng)在設(shè)備密鑰已經(jīng)被泄露后在一個(gè)新的記錄介質(zhì)上存儲(chǔ)密鑰信息時(shí),組織創(chuàng)建不包括所泄露設(shè)備密鑰的密鑰信息,并所創(chuàng)建的密鑰信息存儲(chǔ)在該記錄介質(zhì)上。這樣,知道所泄露設(shè)備密鑰的非法裝置就不能從該密鑰信息中獲得正確的介質(zhì)密鑰,因?yàn)樵谟涗浗橘|(zhì)中存儲(chǔ)的密鑰信息中不包括用所泄露設(shè)備密鑰加密的加密的介質(zhì)密鑰。結(jié)果,非法裝置就不能非法使用內(nèi)容。例如,如果非法裝置是個(gè)記錄裝置,則用該記錄裝置記錄的加密的內(nèi)容就不是用正確的密鑰加密的,因此該加密的內(nèi)容就不能用合法的再現(xiàn)裝置解密。此外,如果非法裝置是個(gè)再現(xiàn)裝置,該再現(xiàn)裝置不能獲得正確的介質(zhì)密鑰,因此就不能正確地解密已經(jīng)被一個(gè)合法記錄裝置記錄的加密的內(nèi)容。這樣,就能使一個(gè)被泄露的密鑰失效。
然而,這個(gè)簡單例子中的一個(gè)缺陷是,在有大量裝置時(shí),密鑰信息的數(shù)據(jù)規(guī)模大得不合實(shí)際。例如,假設(shè)某特定類型的數(shù)字設(shè)備在全世界上變得流行起來,世界上存在數(shù)十億的該特定設(shè)備。如果在生成上述的加密的內(nèi)容時(shí)使用的加密算法是美國標(biāo)準(zhǔn)加密三重DES加密(triple DES encryption),則一個(gè)包括填充字(padding)的介質(zhì)密鑰的長度是16個(gè)字節(jié)。因此,加密介質(zhì)密鑰的長度也是16字節(jié)。此外,如果用一個(gè)4字節(jié)的值作為密鑰標(biāo)識號,擇密鑰信息的規(guī)模將是20字節(jié)*10億(裝置)=200億字節(jié)=20G字節(jié)。鑒于目前的可記錄盤的容量,這個(gè)大值是不合實(shí)際的。
在這種系統(tǒng)中,條件是記錄介質(zhì)上記錄的密鑰信息的大小與記錄介質(zhì)相比很小。
滿足這個(gè)條件的系統(tǒng)的一個(gè)例子是一種使用樹結(jié)構(gòu)的數(shù)字作品保護(hù)密鑰管理方法,該方法見于文件1”Digital Content Hogo-you KagiKanri Houshiki”(保護(hù)數(shù)字內(nèi)容的密鑰管理方法)(Nakano,Omori和Tatebayashi,Symposium on Cryptography and Information Security2001,SCIS2001,5A-5,2000年1月)。
在描述文件1中披露的方法之前,對一個(gè)樹結(jié)構(gòu)作簡要說明。
就形式而言,該樹結(jié)構(gòu)是一個(gè)由至少一個(gè)節(jié)點(diǎn)組成的有限集合T,按定義符合以下條件(a)只有一個(gè)節(jié)點(diǎn)被指定為樹結(jié)構(gòu)的根。
(b)其它節(jié)點(diǎn)(不含根)被劃分為沒有m個(gè)(m≥0)公共部分的集合T1,...,Tm。每個(gè)Ti(i=1,...,m)都是一個(gè)高度比T小“1”的深一層的樹結(jié)構(gòu)。樹結(jié)構(gòu)T1,...,Tm是根的子樹。此外,樹結(jié)構(gòu)T中的級(層)x數(shù)按以下方式定義。T的根是0級。以作為根T的子樹的子樹Tj為例,根Tj的級比T的大1。
以下說明文件1中披露的使用樹結(jié)構(gòu)的數(shù)字作品保護(hù)密鑰管理方法。
在該密鑰管理方法中,組織構(gòu)造—例如—一個(gè)有4層的二叉樹(binary tree)結(jié)構(gòu),并生成數(shù)量等于所構(gòu)造的樹結(jié)構(gòu)中的節(jié)點(diǎn)數(shù)量的密鑰。所生成的每個(gè)設(shè)備密鑰都被分配給樹結(jié)構(gòu)中的一個(gè)節(jié)點(diǎn)。組織將每個(gè)播放器(以下用“播放器”指上述地再現(xiàn)裝置)與樹結(jié)構(gòu)中的一個(gè)葉子對應(yīng),并將一個(gè)設(shè)備密鑰集合分配給與葉子一一對應(yīng)的每個(gè)播放器。該集合由被分配給從對應(yīng)的葉子到根的路徑上的節(jié)點(diǎn)的多個(gè)設(shè)備密鑰組成。這樣,不同的設(shè)備密鑰集合被分配給每個(gè)播放器。
這里,如果一個(gè)已經(jīng)被分配給一個(gè)播放器的設(shè)備密鑰集合被泄露,組織刪除所泄露設(shè)備密鑰集合中包含的設(shè)備密鑰被分配給的節(jié)點(diǎn)。然后,組織規(guī)定將設(shè)備密鑰尚未被泄露的播放器中的大多數(shù)播放器的共同的密鑰,作為下一次要使用的設(shè)備密鑰。
文件1顯示,按照該方法,如果要無效掉數(shù)以十億計(jì)的播放器中的任意10,000個(gè),大約3MB的密鑰信息就足夠用。
然而,盡管上述數(shù)字作品保護(hù)密鑰管理方法滿足記錄介質(zhì)上要記錄的密鑰信息的大小要遠(yuǎn)遠(yuǎn)小于記錄介質(zhì)的容量的條件,該方法卻限制系統(tǒng)中裝置的總數(shù)。這是因?yàn)?,記錄或再現(xiàn)裝置是在樹結(jié)構(gòu)已經(jīng)構(gòu)造好后被分配給葉子的。因此,在樹結(jié)構(gòu)已經(jīng)被構(gòu)造并且系統(tǒng)投入使用后,就不可能向系統(tǒng)添加記錄或再現(xiàn)裝置。
發(fā)明內(nèi)容
因此,本發(fā)明的一個(gè)目的是提供一種數(shù)字作品保護(hù)系統(tǒng),該系統(tǒng)能無限制地包括記錄裝置和/或再現(xiàn)裝置,允許新添加的記錄裝置和/或再現(xiàn)裝置與已經(jīng)存在的記錄裝置和/或再現(xiàn)裝置、密鑰管理裝置、用戶裝置、密鑰管理方法、密鑰管理程序、以及存儲(chǔ)密鑰管理程序的記錄介質(zhì)相容。應(yīng)當(dāng)注意的是,這里的所謂相容的意思是,由新添加的記錄裝置記錄在記錄介質(zhì)上的內(nèi)容能被已經(jīng)存在的再現(xiàn)裝置再現(xiàn),由已經(jīng)存在的記錄裝置記錄在記錄介質(zhì)上的內(nèi)容能被新添加的再現(xiàn)裝置再現(xiàn)。
以上目的由一個(gè)數(shù)字作品保護(hù)系統(tǒng)實(shí)現(xiàn),該系統(tǒng)包括一個(gè)密鑰管理裝置和一個(gè)用戶裝置,密鑰管理裝置生成設(shè)備密鑰,將設(shè)備密鑰與一個(gè)樹結(jié)構(gòu)中的節(jié)點(diǎn)關(guān)聯(lián),并把用戶裝置分配給設(shè)備密鑰,密鑰管理裝置包含一個(gè)確定單元,可用來根據(jù)未分配有用戶裝置的葉子的數(shù)量確定是否向樹結(jié)構(gòu)增加新的葉子;一個(gè)擴(kuò)展(extending)單元,可用來—如果確定單元確定要增加—生成要從未分配有用戶裝置的葉子的其中之一擴(kuò)展的新的葉子;一個(gè)用戶裝置分配單元,可用來將一個(gè)用戶裝置分配給新生成的葉子的其中之一;一個(gè)設(shè)備密鑰生成單元,可用來生成新的設(shè)備密鑰,將新的設(shè)備密鑰與從該新生成的一個(gè)葉子到一個(gè)根(含)的所有節(jié)點(diǎn)中尚無設(shè)備密鑰與之關(guān)聯(lián)的節(jié)點(diǎn)關(guān)聯(lián);一個(gè)設(shè)備密鑰分配單元,可用來向用戶裝置分配與從該新生成的一個(gè)葉子到根(含)存在的所有節(jié)點(diǎn)對應(yīng)的設(shè)備密鑰,其中,用戶設(shè)備或者用所分配的設(shè)備密鑰的其中之一加密一個(gè)內(nèi)容并把加密的內(nèi)容寫到一個(gè)記錄介質(zhì)上,或者從記錄介質(zhì)讀取加密的內(nèi)容并用所分配設(shè)備密鑰的一個(gè)設(shè)備密鑰解密所讀取的內(nèi)容。
由于上述構(gòu)造,密鑰管理裝置生成一個(gè)要從一個(gè)樹結(jié)構(gòu)中存在的葉子擴(kuò)展(extend)的新葉子,并把一個(gè)用戶裝置分配給對應(yīng)于新生成的葉子的設(shè)備密鑰。如果在系統(tǒng)進(jìn)入服務(wù)后系統(tǒng)被請求有一個(gè)額外的用戶裝置,這就使系統(tǒng)能通過生成一個(gè)新葉子來包括一個(gè)額外的用戶裝置。
以上目的也由一個(gè)密鑰管理裝置實(shí)現(xiàn),密鑰管理裝置用于生成設(shè)備密鑰,將設(shè)備密鑰與一個(gè)樹結(jié)構(gòu)中的節(jié)點(diǎn)相關(guān)聯(lián),并分配一個(gè)用戶裝置給設(shè)備密鑰,包含一個(gè)確定單元,可用來根據(jù)未分配有用戶裝置的葉子的數(shù)量確定是否向樹結(jié)構(gòu)增加新的葉子;一個(gè)擴(kuò)展單元,可用來—如果確定單元確定要增加—生成要從未分配有用戶裝置的葉子的其中之一擴(kuò)展的新的葉子;一個(gè)用戶裝置分配單元,可用來將一個(gè)用戶裝置分配給新生成的葉子的其中之一;一個(gè)設(shè)備密鑰生成單元,可用來生成新的設(shè)備密鑰,將新的設(shè)備密鑰與從該新生成的一個(gè)葉子到一個(gè)根(含)的所有節(jié)點(diǎn)中尚無設(shè)備密鑰與之關(guān)聯(lián)的節(jié)點(diǎn)關(guān)聯(lián);一個(gè)設(shè)備密鑰分配單元,可用來向用戶裝置分配與從該新生成的一個(gè)葉子到根(含)存在的所有節(jié)點(diǎn)對應(yīng)的設(shè)備密鑰。
由于上述構(gòu)造,密鑰管理裝置生成一個(gè)從一個(gè)樹結(jié)構(gòu)中存在的葉子擴(kuò)展的新葉子,把一個(gè)用戶裝置與新生成的葉子相關(guān)聯(lián),并分配給該用戶裝置對應(yīng)于從新生成的葉子到根(含)存在的節(jié)點(diǎn)的所有設(shè)備密鑰。如果系統(tǒng)被請求有一個(gè)額外的用戶裝置,這就使系統(tǒng)能通過生成一個(gè)新葉子并將一個(gè)用戶裝置與該新葉子相關(guān)聯(lián)來包括一個(gè)額外的用戶裝置。并且,被分配給該用戶裝置的設(shè)備密鑰集合對該用戶裝置是獨(dú)有的,因?yàn)樵撛O(shè)備密鑰集合由對應(yīng)于從新生成的葉子到根(含)存在的節(jié)點(diǎn)的所有設(shè)備密鑰組成。由此,可使用戶裝置失效。
以上目的也由一個(gè)密鑰管理裝置實(shí)現(xiàn),密鑰管理裝置用于生成設(shè)備密鑰,將設(shè)備密鑰與一個(gè)樹結(jié)構(gòu)中的節(jié)點(diǎn)相關(guān)聯(lián),并分配多個(gè)用戶裝置給設(shè)備密鑰,包含一個(gè)設(shè)備密鑰存儲(chǔ)單元,可用來事先存儲(chǔ)該樹結(jié)構(gòu)和已經(jīng)被分配給與樹結(jié)構(gòu)中的一些葉子相關(guān)聯(lián)的用戶裝置的設(shè)備密鑰;一個(gè)確定單元,可用來根據(jù)未分配有用戶裝置的葉子的數(shù)量確定是否向樹結(jié)構(gòu)增加新的葉子;一個(gè)擴(kuò)展單元,可用來—如果確定單元確定要增加—生成要從未分配有用戶裝置的葉子的其中之一擴(kuò)展的新的葉子;一個(gè)用戶裝置分配單元,可用來將一個(gè)用戶裝置分配給新生成的葉子的其中之一;一個(gè)設(shè)備密鑰生成單元,可用來生成新的設(shè)備密鑰,將新的設(shè)備密鑰與從該新生成的一個(gè)葉子到一個(gè)根(含)的所有節(jié)點(diǎn)中尚無設(shè)備密鑰與之關(guān)聯(lián)的節(jié)點(diǎn)關(guān)聯(lián);一個(gè)設(shè)備密鑰分配單元,可用來向用戶裝置分配與從該新生成的一個(gè)葉子到根(含)存在的所有節(jié)點(diǎn)對應(yīng)的設(shè)備密鑰。
由于上述構(gòu)造,密鑰管理裝置在一個(gè)樹結(jié)構(gòu)中總是有一個(gè)或多個(gè)沒有用戶裝置尚未與之關(guān)聯(lián)的葉子。這就使系統(tǒng)能通過生成一個(gè)新葉子并將一個(gè)用戶裝置與該新葉子相關(guān)聯(lián)來包括一個(gè)額外的用戶裝置。原則上,系統(tǒng)能通過將額外的用戶裝置與新生成的葉子像關(guān)聯(lián)而無限地有額外的用戶裝置。并且,被分配給用戶裝置的設(shè)備密鑰集合對該用戶裝置是獨(dú)有的,因?yàn)樵撛O(shè)備密鑰集合由對應(yīng)于從新生成的葉子到根(含)存在的節(jié)點(diǎn)的所有設(shè)備密鑰組成。相應(yīng)地,用戶裝置能被撤銷(revoked)。
在上述密鑰管理裝置中,確定單元可包括一個(gè)計(jì)數(shù)單元,可用來查閱在設(shè)備密鑰存儲(chǔ)單元中存儲(chǔ)的樹結(jié)構(gòu),并計(jì)算未分配有用戶裝置的葉子的個(gè)數(shù);一個(gè)比較單元,可用來比較所計(jì)算的葉子數(shù)與一個(gè)閥值,其中,如果所計(jì)算的葉子數(shù)等于或小于該閥值,則確定單元確定要向樹結(jié)構(gòu)添加新的葉子。
由于上述構(gòu)造,由于該裝置計(jì)算未分配有用戶裝置的葉子的個(gè)數(shù)并比較所計(jì)算的葉子數(shù)與一個(gè)閥值,密鑰管理裝置在一個(gè)樹結(jié)構(gòu)中總是有一個(gè)或多個(gè)沒有用戶裝置尚未與之關(guān)聯(lián)的葉子。這就使系統(tǒng)必要時(shí)能生成一個(gè)從一個(gè)存在的葉子擴(kuò)展的新葉子。
在上述密鑰管理裝置中,設(shè)備密鑰生成單元可進(jìn)一步生成新的設(shè)備密鑰,把新的設(shè)備密鑰與在從葉子到根存在的節(jié)點(diǎn)被從樹結(jié)構(gòu)刪除時(shí)所生成的子樹的所有根相關(guān)聯(lián),密鑰管理裝置進(jìn)一步包含一個(gè)加密介質(zhì)密鑰生成單元,可用來通過用由設(shè)備密鑰生成單元生成的所有設(shè)備密鑰在一對一的基礎(chǔ)上加密介質(zhì)密鑰而生成加密的介質(zhì)密鑰;一個(gè)加密介質(zhì)密鑰寫單元,可用來把所生成的加密介質(zhì)密鑰寫到一個(gè)記錄介質(zhì)上。
由于上述構(gòu)造,如果與一個(gè)葉子相關(guān)聯(lián)的用戶裝置被撤銷,密鑰管理裝置能通過用對應(yīng)于一個(gè)子樹的根的設(shè)備密鑰加密一個(gè)介質(zhì)密鑰而生成一個(gè)加密介質(zhì)密鑰,并把所生成的加密介質(zhì)密鑰寫到一個(gè)記錄介質(zhì)上。這就使一個(gè)與一個(gè)在上述用戶裝置被撤銷后新生成的葉子相關(guān)聯(lián)的新用戶裝置,能與已經(jīng)被分配了設(shè)備密鑰的其它用戶裝置相容(compatible)。
在上述密鑰管理裝置中,比較單元可以事先存儲(chǔ)閥值,并比較所計(jì)算的葉子數(shù)與閥值。
由于上述構(gòu)造,由于該裝置事先持有閥值,不必在每次執(zhí)行確定過程時(shí)都設(shè)定閥值,密鑰管理裝置就能更容易地確定是否向樹結(jié)構(gòu)添加新葉子。
在上述密鑰管理裝置中,設(shè)備密鑰存儲(chǔ)單元可存儲(chǔ)與樹結(jié)構(gòu)中具有的節(jié)點(diǎn)數(shù)量相同的節(jié)點(diǎn)信息片斷(pieces of node information),各節(jié)點(diǎn)信息片斷按與樹結(jié)構(gòu)中的節(jié)點(diǎn)相同的方式互相鏈接,每個(gè)節(jié)點(diǎn)信息片斷包括用于標(biāo)識某個(gè)節(jié)點(diǎn)的節(jié)點(diǎn)ID信息、對應(yīng)于該節(jié)點(diǎn)的設(shè)備密鑰、以及用于標(biāo)識對應(yīng)于該節(jié)點(diǎn)的用戶裝置的用戶裝置ID信息;擴(kuò)展單元生成一個(gè)只含有標(biāo)識一個(gè)新葉子的節(jié)點(diǎn)ID信息的新的節(jié)點(diǎn)信息片斷,該新的節(jié)點(diǎn)信息片斷與一個(gè)含有標(biāo)識一個(gè)沒有被分配用戶裝置的葉子的節(jié)點(diǎn)ID信息的節(jié)點(diǎn)信息片斷鏈接;用戶裝置分配單元向該新的節(jié)點(diǎn)信息片斷添加用戶裝置ID信息;設(shè)備密鑰生成單元向該新的節(jié)點(diǎn)信息片斷添加一個(gè)設(shè)備密鑰。
由于上述構(gòu)造,密鑰管理裝置就能像對一個(gè)樹結(jié)構(gòu)中的一個(gè)節(jié)點(diǎn)那樣地處理每個(gè)節(jié)點(diǎn)信息片斷,這是因?yàn)樗鎯?chǔ)與樹結(jié)構(gòu)中具有的節(jié)點(diǎn)數(shù)量相同的節(jié)點(diǎn)信息片斷,且各節(jié)點(diǎn)信息片斷按與樹結(jié)構(gòu)中的節(jié)點(diǎn)相同的方式互相鏈接。
在上述密鑰管理裝置中,存儲(chǔ)在設(shè)備密鑰存儲(chǔ)單元中的樹結(jié)構(gòu)可以是一個(gè)n叉樹結(jié)構(gòu),其中n是個(gè)不小于2的整數(shù),擴(kuò)展單元生成從一個(gè)葉子擴(kuò)展的n個(gè)新葉子。
由于上述構(gòu)造,密鑰管理裝置能更容易地?cái)U(kuò)展樹結(jié)構(gòu),因?yàn)樗褂靡粋€(gè)n叉樹結(jié)構(gòu)。
在上述密鑰管理裝置中,存儲(chǔ)在設(shè)備密鑰存儲(chǔ)單元中的樹結(jié)構(gòu)可以是一個(gè)n叉樹結(jié)構(gòu),其中n是個(gè)不小于2的整數(shù),擴(kuò)展單元生成從一個(gè)葉子擴(kuò)展的m個(gè)新葉子,其中m是一個(gè)滿足m>n的整數(shù)。
由于上述構(gòu)造,密鑰管理裝置就能向設(shè)備密鑰分配大量的用戶裝置,因?yàn)槊荑€管理裝置生成從一個(gè)n叉樹結(jié)構(gòu)中的一個(gè)葉子擴(kuò)展的m個(gè)(m>n)新葉子。
在上述密鑰管理裝置中,擴(kuò)展單元可以生成從一個(gè)葉子擴(kuò)展的m個(gè)新葉子,其中m=n+1。
由于上述構(gòu)造,密鑰管理裝置就能向設(shè)備密鑰分配大量的用戶裝置并能容易地?cái)U(kuò)展樹結(jié)構(gòu),因?yàn)樗蓮囊粋€(gè)葉子擴(kuò)展的n+1個(gè)新葉子。
在上述密鑰管理裝置中,擴(kuò)展單元可以生成從n個(gè)新葉子的每個(gè)擴(kuò)展的n個(gè)更新葉子,結(jié)果生成n2個(gè)葉子。
由于上述構(gòu)造,密鑰管理裝置就能向設(shè)備密鑰分配大量的用戶裝置,因?yàn)闃浣Y(jié)構(gòu)每次擴(kuò)展就被擴(kuò)展兩層;并且能更容易地?cái)U(kuò)展樹結(jié)構(gòu),因?yàn)榫突窘Y(jié)構(gòu)而言,它并不改變n叉樹結(jié)構(gòu)。
以上目的也能由一個(gè)用戶裝置實(shí)現(xiàn),該用戶裝置或者用由一個(gè)有與從每個(gè)葉子到根(含)存在的每個(gè)節(jié)點(diǎn)對應(yīng)的一個(gè)或多個(gè)設(shè)備密鑰的密鑰管理裝置分配的多個(gè)設(shè)備密鑰的其中之一加密一個(gè)內(nèi)容,并將該加密的內(nèi)容寫到記錄介質(zhì)上,或者從記錄介質(zhì)讀一個(gè)加密的內(nèi)容并用所分配設(shè)備密鑰的其中之一解密所讀的內(nèi)容,其中,密鑰管理裝置(a)根據(jù)沒有被分配用戶裝置的葉子的數(shù)量確定是否向樹結(jié)構(gòu)增加新的葉子,(b)如果確定要增加,就生成要從沒有被分配用戶裝置的葉子的其中之一擴(kuò)展的新的葉子,(c)將一個(gè)用戶裝置分配給新生成的葉子的其中之一,(d)生成新的設(shè)備密鑰,將新的設(shè)備密鑰與從該新生成的一個(gè)葉子到一個(gè)根(含)的所有節(jié)點(diǎn)中尚無設(shè)備密鑰與之關(guān)聯(lián)的節(jié)點(diǎn)關(guān)聯(lián),(e)向用戶裝置分配與從該新生成的一個(gè)葉子到根(含)存在的節(jié)點(diǎn)對應(yīng)的所有設(shè)備密鑰;用戶裝置包含一個(gè)介質(zhì)密鑰識別單元,可用來從被寫在記錄介質(zhì)上的多個(gè)加密的介質(zhì)密鑰中識別一個(gè)被用分配給該用戶裝置的設(shè)備密鑰的其中之一加密的介質(zhì)密鑰;一個(gè)介質(zhì)密鑰解密單元,可用來恢復(fù)一個(gè)介質(zhì)密鑰,具體是用加密該介質(zhì)密鑰時(shí)所用的設(shè)備密鑰解密所識別的加密的介質(zhì)密鑰,以及一個(gè)加密/解密單元,或者可用來用所生成的介質(zhì)密鑰加密一個(gè)內(nèi)容并將所加密的內(nèi)容寫到記錄介質(zhì)上,或者可用來從記錄介質(zhì)讀取一個(gè)加密的內(nèi)容并用所生成的介質(zhì)密鑰解密所讀取的內(nèi)容。
由于上述構(gòu)造,一個(gè)用戶裝置通過擴(kuò)展一個(gè)樹結(jié)構(gòu)與一個(gè)由密鑰管理裝置生成的一個(gè)新葉子相關(guān)聯(lián)。并且,被分配給該用戶裝置的設(shè)備密鑰集合對用戶設(shè)備是獨(dú)有的,因?yàn)樵撛O(shè)備密鑰集合由對應(yīng)于從新生成的葉子到根(含)存在的節(jié)點(diǎn)的所有設(shè)備密鑰組成。相應(yīng)地,該用戶裝置能被撤銷。
以上目的也能由一個(gè)記錄介質(zhì),該記錄介質(zhì)上記錄有通過以設(shè)備密鑰作為加密密鑰加密介質(zhì)密鑰而生成的加密的介質(zhì)密鑰,其中,設(shè)備密鑰由一個(gè)密鑰管理裝置生成,該密鑰管理裝置(a)根據(jù)沒有被分配用戶裝置的葉子的數(shù)量確定是否向樹結(jié)構(gòu)增加新的葉子,(b)如果確定要增加,就生成要從沒有被分配用戶裝置的葉子的其中之一擴(kuò)展的新的葉子,(c)將一個(gè)用戶裝置分配給新生成的葉子的其中之一,(d)生成新的設(shè)備密鑰,將新的設(shè)備密鑰與從該新生成的一個(gè)葉子到一個(gè)根(含)的所有節(jié)點(diǎn)中尚無設(shè)備密鑰與之關(guān)聯(lián)的節(jié)點(diǎn)關(guān)聯(lián),(e)向用戶裝置分配與從該新生成的一個(gè)葉子到根(含)存在的節(jié)點(diǎn)對應(yīng)的所有設(shè)備密鑰。
由于上述構(gòu)造,被密鑰管理裝置分配設(shè)備密鑰到其上的用戶裝置能通過解密一個(gè)被記錄在記錄介質(zhì)上的加密的介質(zhì)密鑰來恢復(fù)一個(gè)介質(zhì)密鑰。用戶裝置用一個(gè)設(shè)備密鑰獲得該介質(zhì)密鑰,用所獲得的介質(zhì)密鑰加密一個(gè)內(nèi)容,并將所加密的內(nèi)容記錄到記錄介質(zhì)上?;蛘撸脩粞b置用一個(gè)設(shè)備密鑰獲得該介質(zhì)密鑰,用所獲得的介質(zhì)密鑰解密一個(gè)被記錄在記錄介質(zhì)上的加密的內(nèi)容。
附圖簡介圖1表示數(shù)字作品保護(hù)系統(tǒng)10的構(gòu)造;圖2表示密鑰管理裝置100的構(gòu)造的框圖;圖3是樹結(jié)構(gòu)T100的概念性示意圖;圖4表示樹結(jié)構(gòu)表D100的數(shù)據(jù)結(jié)構(gòu);圖5是樹結(jié)構(gòu)T200的概念性示意圖;圖6表示樹結(jié)構(gòu)表D200的數(shù)據(jù)結(jié)構(gòu);圖7是樹結(jié)構(gòu)T300的概念性示意圖;圖8表示樹結(jié)構(gòu)表D300的數(shù)據(jù)結(jié)構(gòu);圖9是樹結(jié)構(gòu)T400的概念性示意圖;圖10是樹結(jié)構(gòu)T500的概念性示意圖;圖11表示樹結(jié)構(gòu)表D500的數(shù)據(jù)結(jié)構(gòu);圖12是樹結(jié)構(gòu)T600的概念性示意圖;圖13表示樹結(jié)構(gòu)表D600的數(shù)據(jù)結(jié)構(gòu);圖14是樹結(jié)構(gòu)T700的概念性示意圖;
圖15是樹結(jié)構(gòu)T800的概念性示意圖;圖16表示樹結(jié)構(gòu)表D800的數(shù)據(jù)結(jié)構(gòu);圖17表示由密鑰管理裝置100生成的密鑰信息的例子;圖18是表示數(shù)字作品保護(hù)系統(tǒng)10的總體操作的流程圖;圖19是表示密鑰管理裝置100在構(gòu)造和存儲(chǔ)第1代樹結(jié)構(gòu)的過程中的操作的流程圖;圖20是表示密鑰管理裝置100在第n代樹結(jié)構(gòu)的一個(gè)過程中的操作的流程圖;圖21是表示記錄介質(zhì)和用戶裝置在第n代樹結(jié)構(gòu)的一個(gè)過程中的操作的流程圖;圖22是表示密鑰管理裝置100在向用戶裝置輸出設(shè)備密鑰和ID信息的過程中的操作的流程圖;圖23表示一個(gè)其中用戶裝置已經(jīng)被撤銷的樹結(jié)構(gòu)T900;圖24A表示在用戶裝置1在樹結(jié)構(gòu)T900中被撤銷之前存儲(chǔ)在記錄介質(zhì)1100上的一個(gè)加密的介質(zhì)密鑰;圖24B表示在用戶裝置1在樹結(jié)構(gòu)T900中被撤銷之后存儲(chǔ)在記錄介質(zhì)1200上的一個(gè)加密的介質(zhì)密鑰;最優(yōu)實(shí)施方式以下參照
作為本發(fā)明實(shí)施例的數(shù)字作品保護(hù)系統(tǒng)10。
1.數(shù)字作品保護(hù)系統(tǒng)10的結(jié)構(gòu)如圖1所示,數(shù)字作品保護(hù)系統(tǒng)10由密鑰管理裝置100、密鑰信息記錄裝置200、記錄裝置300a、300b、300c...(以下稱作“記錄裝置300a等”)和再現(xiàn)裝置400a、400b、400c...(以下稱作“再現(xiàn)裝置400a等”)組成。
密鑰管理裝置100有由密鑰信息記錄裝置200預(yù)先記錄在一個(gè)記錄介質(zhì)500a上的密鑰信息,作為結(jié)果,有一個(gè)事先生成的在上面已經(jīng)記錄了密鑰信息的記錄介質(zhì)500b。注意記錄介質(zhì)500a是一個(gè)上面尚未記錄由信息的可記錄介質(zhì),DVD-RAM(數(shù)字通用盤式隨機(jī)存儲(chǔ)器)。此外,密鑰管理裝置100將用于解密密鑰信息的設(shè)備密鑰分別分配給每個(gè)記錄裝置300a等和每個(gè)再現(xiàn)裝置400a等,并把所分配的設(shè)備密鑰、標(biāo)識設(shè)備密鑰的設(shè)備密鑰標(biāo)識信息、以及標(biāo)識特定記錄裝置或再現(xiàn)裝置的ID信息,事先分發(fā)到記錄裝置300a等和再現(xiàn)裝置400a等的每一個(gè)。
記錄裝置300a加密數(shù)字內(nèi)容,以生成加密的內(nèi)容,然后將所生成的加密的內(nèi)容記錄在記錄介質(zhì)500b上,結(jié)果導(dǎo)致一個(gè)記錄介質(zhì)500c的生成。再現(xiàn)裝置400a從記錄介質(zhì)500c讀取該加密的內(nèi)容,并解密所讀取的解密的內(nèi)容,已獲得原始內(nèi)容。記錄裝置300b等以與記錄裝置300a相同的方式操作,記錄裝置400b等以與記錄裝置400a相同的方式操作。
注意以下用″用戶裝置″來指記錄裝置300b等和再現(xiàn)裝置400b等。
1.1密鑰管理裝置100如圖2中所示的密鑰管理裝置100,由樹結(jié)構(gòu)構(gòu)造單元101、樹結(jié)構(gòu)存儲(chǔ)單元102、設(shè)備密鑰分配單元103、樹結(jié)構(gòu)擴(kuò)展單元104、以及密鑰信息生成單元105組成。
特別地,密鑰管理裝置100是一個(gè)包括微處理器、ROM(只讀存儲(chǔ)器)、RAM(隨機(jī)存取存儲(chǔ)器)、硬盤單元、顯示單元、鍵盤和鼠標(biāo)器的計(jì)算機(jī)系統(tǒng)。計(jì)算機(jī)程序被存儲(chǔ)在RAM或硬盤單元中。密鑰管理裝置100通過按照計(jì)算機(jī)程序操作的微處理器實(shí)現(xiàn)其功能。
(1)樹結(jié)構(gòu)構(gòu)造單元101樹結(jié)構(gòu)構(gòu)造單元101構(gòu)造一個(gè)對應(yīng)于二叉樹的數(shù)據(jù)結(jié)構(gòu),用于管理設(shè)備密鑰,并將所構(gòu)造的數(shù)據(jù)結(jié)構(gòu)存儲(chǔ)在樹結(jié)構(gòu)存儲(chǔ)單元102中。這里,由樹結(jié)構(gòu)構(gòu)造單元101構(gòu)造的數(shù)據(jù)結(jié)構(gòu)是在數(shù)字作品保護(hù)系統(tǒng)10中一個(gè)擴(kuò)展之前的初始樹結(jié)構(gòu)。系統(tǒng)能從初始狀態(tài)開始擴(kuò)展樹結(jié)構(gòu)。初始樹結(jié)構(gòu)被稱作第1代樹結(jié)構(gòu)。
圖4具體表示由樹結(jié)構(gòu)構(gòu)造單元101構(gòu)造的數(shù)據(jù)結(jié)構(gòu)。圖4中所示的樹結(jié)構(gòu)表D100對應(yīng)于圖3中所示的樹結(jié)構(gòu)T100樹結(jié)構(gòu)T100如圖3中所示的樹結(jié)構(gòu)T100是一個(gè)由0-3四個(gè)層組成的二叉樹。樹結(jié)構(gòu)T100中的每個(gè)節(jié)點(diǎn)(不含葉子)都分別通過兩個(gè)路徑連接到兩個(gè)較低的節(jié)點(diǎn)。層0有一個(gè)是根的節(jié)點(diǎn)。層1有兩個(gè)節(jié)點(diǎn)。層2有4個(gè)節(jié)點(diǎn)。層3有8個(gè)節(jié)點(diǎn)。這里要注意到,在樹結(jié)構(gòu)中,較低端是葉子端,較高端是根端。
在樹結(jié)構(gòu)T100中,對于連接一個(gè)節(jié)點(diǎn)(不含葉子)與兩個(gè)較低節(jié)點(diǎn)的每對路徑,將數(shù)字″0″分配給左手側(cè)的路徑,將數(shù)字″1″分配給右手側(cè)的路徑。以下將圖3中所示的樹結(jié)構(gòu)T100的節(jié)點(diǎn)的左手側(cè)上的路徑稱作“左路徑”,將節(jié)點(diǎn)的右手側(cè)上的路徑稱作“右路徑”。
每個(gè)節(jié)點(diǎn)都被分配一個(gè)節(jié)點(diǎn)名。根節(jié)點(diǎn)的節(jié)點(diǎn)名是“根”。屬于比層0低的層的每個(gè)節(jié)點(diǎn)都被分配一個(gè)節(jié)點(diǎn)名,構(gòu)成節(jié)點(diǎn)名的字符的數(shù)目等于該節(jié)點(diǎn)所屬的層的層名(layer name)中包含的字符數(shù)目。各節(jié)點(diǎn)名是通過按層號(layer number)的升序排列被分配給連接各節(jié)點(diǎn)與根的路徑的號而生成的。例如,屬于層1的兩個(gè)節(jié)點(diǎn)分別有節(jié)點(diǎn)名″0″和″1″;屬于層2的4個(gè)節(jié)點(diǎn)分別有節(jié)點(diǎn)名″00″、″01″、″10″和″11″;屬于層3的8個(gè)節(jié)點(diǎn)分別有節(jié)點(diǎn)名″000″、″001″、″010″、″011″、...″101″、″110″和″111″。
樹結(jié)構(gòu)表D100樹結(jié)構(gòu)構(gòu)造單元101事先有一個(gè)其中尚未寫數(shù)據(jù)的樹結(jié)構(gòu)表。樹結(jié)構(gòu)構(gòu)造單元101向樹結(jié)構(gòu)表寫入數(shù)據(jù),以生成圖4中所示的樹結(jié)構(gòu)表D100。
樹結(jié)構(gòu)表D100含有與樹結(jié)構(gòu)T100中的節(jié)點(diǎn)數(shù)相同數(shù)目的節(jié)點(diǎn)信息片斷,每個(gè)節(jié)點(diǎn)信息片斷對應(yīng)于樹結(jié)構(gòu)T100中的一個(gè)不同節(jié)點(diǎn)。
每個(gè)節(jié)點(diǎn)信息片斷包括一個(gè)節(jié)點(diǎn)名、一個(gè)用戶裝置名和一個(gè)設(shè)備密鑰。節(jié)點(diǎn)名標(biāo)識一個(gè)對應(yīng)于該節(jié)點(diǎn)信息片斷的節(jié)點(diǎn)。用戶裝置名標(biāo)識一個(gè)對應(yīng)于該對應(yīng)節(jié)點(diǎn)的用戶裝置。設(shè)備密鑰是被分配給該對應(yīng)節(jié)點(diǎn)的設(shè)備密鑰。
樹結(jié)構(gòu)構(gòu)造單元101通過如下地將節(jié)點(diǎn)信息寫入以前保存的樹結(jié)構(gòu)表而生成樹結(jié)構(gòu)表D100。
樹結(jié)構(gòu)構(gòu)造單元101按照層號的升序?qū)懪c樹結(jié)構(gòu)T100中的各層中的節(jié)點(diǎn)對應(yīng)的節(jié)點(diǎn)信息。更具體來說,樹結(jié)構(gòu)構(gòu)造單元101先寫一個(gè)對應(yīng)于屬于層0的節(jié)點(diǎn)的節(jié)點(diǎn)信息片斷,然后寫對應(yīng)于層1中的兩個(gè)節(jié)點(diǎn)的兩個(gè)節(jié)點(diǎn)信息片斷,然后寫對應(yīng)于層2中的4個(gè)節(jié)點(diǎn)的4個(gè)節(jié)點(diǎn)信息片斷,然后寫對應(yīng)于層3中的8個(gè)節(jié)點(diǎn)的8個(gè)節(jié)點(diǎn)信息片斷。
對于每一層,按照節(jié)點(diǎn)名中含有的數(shù)的升序,寫對應(yīng)于屬于該層的節(jié)點(diǎn)的節(jié)點(diǎn)信息片斷。特別地,將各節(jié)點(diǎn)信息片斷按下列順序存儲(chǔ)在圖4中所示的樹結(jié)構(gòu)表D100中″根″、″0″、″1″、″00″、″01″、″10″、″11″、″000″、″001″、″010″、″011″、...、″101″、″110″、″111″。
這里,各節(jié)點(diǎn)信息片斷被存儲(chǔ)的順序由包括在每個(gè)節(jié)點(diǎn)信息片斷中的節(jié)點(diǎn)名表示。
樹結(jié)構(gòu)構(gòu)造單元101先生成一個(gè)以“根”作為節(jié)點(diǎn)名的節(jié)點(diǎn)信息片斷,并將所生成的節(jié)點(diǎn)信息片斷寫到樹結(jié)構(gòu)表。
然后,樹結(jié)構(gòu)構(gòu)造單元101生成標(biāo)識層1中的兩個(gè)節(jié)點(diǎn)的節(jié)點(diǎn)名″0″和″1″,生成分別包括所生成的節(jié)點(diǎn)名″0″和″1″的片斷信息,并按所述順序?qū)⑺傻膬蓚€(gè)節(jié)點(diǎn)信息片斷寫到樹結(jié)構(gòu)表。
然后,樹結(jié)構(gòu)構(gòu)造單元101標(biāo)識層2中的4個(gè)節(jié)點(diǎn)的4個(gè)節(jié)點(diǎn)名″00″、″01″、″10″和″11″,生成分別包括″00″、″01″、″10″和″11″的節(jié)點(diǎn)信息片斷,并按所述順序?qū)⑺傻墓?jié)點(diǎn)信息片斷添加到樹結(jié)構(gòu)表。
然后,樹結(jié)構(gòu)構(gòu)造單元101按上述的相同方式,按所述順序生成層3的8個(gè)節(jié)點(diǎn)信息片斷,并將所生成的節(jié)點(diǎn)信息寫到樹結(jié)構(gòu)表。
這里要注意的是,在節(jié)點(diǎn)信息中含有的節(jié)點(diǎn)名、用戶裝置名和設(shè)備密鑰中,被樹結(jié)構(gòu)構(gòu)造單元101生成的數(shù)據(jù)只有節(jié)點(diǎn)名。用戶裝置名和設(shè)備密鑰是分別由設(shè)備密鑰分配單元103和樹結(jié)構(gòu)擴(kuò)展單元104生成并寫到樹結(jié)構(gòu)表D100中的(后面會(huì)詳細(xì)描述)。
(2)樹結(jié)構(gòu)存儲(chǔ)單元102樹結(jié)構(gòu)存儲(chǔ)單元102是由一個(gè)硬盤中能在其中存儲(chǔ)一個(gè)樹結(jié)構(gòu)表的某個(gè)區(qū)域?qū)崿F(xiàn)的。
樹結(jié)構(gòu)存儲(chǔ)單元102存儲(chǔ)從樹結(jié)構(gòu)構(gòu)造單元101輸出的樹結(jié)構(gòu)表D100、或者從設(shè)備密鑰分配單元103或樹結(jié)構(gòu)擴(kuò)展單元104輸出的樹結(jié)構(gòu)表。
(3)設(shè)備密鑰分配單元103設(shè)備密鑰分配單元103事先有一個(gè)閥值。
設(shè)備密鑰分配單元103讀取樹結(jié)構(gòu)存儲(chǔ)單元102中的樹結(jié)構(gòu)表,將閥值與在樹結(jié)構(gòu)表中含有的、其對應(yīng)的用戶裝置名沒有被指出的葉子的數(shù)比較,以判斷該葉子數(shù)是否大于該閥值,如果判斷結(jié)果是肯定的,就從這些葉子中選擇一個(gè)葉子,并將一個(gè)用戶裝置與所選擇的葉子對應(yīng)。設(shè)備密鑰分配單元103然后生成設(shè)備密鑰并將所生成的設(shè)備密鑰分配給與所選擇的葉子相關(guān)地(in relation to)被選擇的某些節(jié)點(diǎn),并將所分配的設(shè)備密鑰傳送到與所選擇的葉子相應(yīng)的用戶裝置。如果對應(yīng)的用戶裝置名沒有被指出的包含在讀取的樹結(jié)構(gòu)表中的葉子的數(shù)不大于該閥值,設(shè)備密鑰分配單元103把所讀取的樹結(jié)構(gòu)表輸出到樹結(jié)構(gòu)擴(kuò)展單元104。
現(xiàn)在將給出詳細(xì)說明,假設(shè)設(shè)備密鑰分配單元103中保存的閥值是4。
第1代樹結(jié)構(gòu)本節(jié)中將說明設(shè)備密鑰分配單元103如何處理第1代樹結(jié)構(gòu)。
設(shè)備密鑰分配單元103從樹結(jié)構(gòu)存儲(chǔ)單元102讀取樹結(jié)構(gòu)表D100,并從中抽取8個(gè)節(jié)點(diǎn)信息片斷。設(shè)備密鑰分配單元103計(jì)算對應(yīng)的用戶裝置名沒有被指出的葉子的數(shù)。結(jié)果發(fā)現(xiàn)是″8″。設(shè)備密鑰分配單 103然后比較該數(shù)與閥值″4″,認(rèn)為該數(shù)大于閥值。
設(shè)備密鑰分配單元103從這8個(gè)葉子中選擇一個(gè)葉子。這里假設(shè)選擇一個(gè)對應(yīng)于節(jié)點(diǎn)名″000″的葉子。設(shè)備密鑰分配單元103然后將″1″作為用戶裝置名寫入具有的節(jié)點(diǎn)名″000″節(jié)點(diǎn)信息片斷。設(shè)備密鑰分配單元103然后用隨機(jī)數(shù)生成多個(gè)設(shè)備密鑰。設(shè)備密鑰分配單元103將所生成的設(shè)備密鑰分配給在從葉子”000”到根(含)中存在的所有節(jié)點(diǎn),以及在這些節(jié)點(diǎn)被刪除時(shí)所生成的所有子樹的根。設(shè)備密鑰分配單元103將設(shè)備密鑰寫入樹結(jié)構(gòu)表中的與對應(yīng)于所分配的節(jié)點(diǎn)和子樹根節(jié)點(diǎn)的節(jié)點(diǎn)信息片斷中。
設(shè)備密鑰分配單元103將更新過的樹結(jié)構(gòu)表寫入樹結(jié)構(gòu)存儲(chǔ)單元102,代替以前存儲(chǔ)的樹結(jié)構(gòu)表。
圖5表示作為上述操作的結(jié)果而生成的一個(gè)樹結(jié)構(gòu)T200。
如圖5中所示,樹結(jié)構(gòu)T200中最左邊的葉子對應(yīng)于用戶裝置1。圖6表示一個(gè)對應(yīng)于樹結(jié)構(gòu)T200并且當(dāng)前被存儲(chǔ)在樹結(jié)構(gòu)存儲(chǔ)單元102中的樹結(jié)構(gòu)表D200。如圖5和6中所示,在所生成的樹結(jié)構(gòu)中,根對應(yīng)于設(shè)備密鑰″KeyA″、節(jié)點(diǎn)″0″對應(yīng)于″KeyB″,節(jié)點(diǎn)″1″對應(yīng)于″KeyC″,節(jié)點(diǎn)″00″對應(yīng)于″KeyD″,節(jié)點(diǎn)″01″對應(yīng)于″KeyE″,節(jié)點(diǎn)″0″對應(yīng)于″KeyB″,葉子″000″對應(yīng)于″IK1″、葉子″001″對應(yīng)于″IK2″。
設(shè)備密鑰分配單元103從樹結(jié)構(gòu)存儲(chǔ)單元102讀取樹結(jié)構(gòu)表D200,按以下方式將ID信息、設(shè)備密鑰、以及對應(yīng)的設(shè)備密鑰ID信息傳送到用戶裝置1。
設(shè)備密鑰分配單元103從所讀取的樹結(jié)構(gòu)表D200獲得一個(gè)含有用戶裝置″1″的節(jié)點(diǎn)信息片斷,并從所檢測的節(jié)點(diǎn)信息片斷中抽取節(jié)點(diǎn)名和設(shè)備密鑰。在這個(gè)例子中,所抽取的節(jié)點(diǎn)名和設(shè)備密鑰分別是″000″和″IK1″。
設(shè)備密鑰分配單元103然后從樹結(jié)構(gòu)表D200獲得一個(gè)含有節(jié)點(diǎn)名″根″的節(jié)點(diǎn)信息片斷,并從所檢測的節(jié)點(diǎn)信息片斷中抽取設(shè)備密鑰。在這個(gè)例子中,所抽取的設(shè)備密鑰是″KeyA″。
設(shè)備密鑰分配單元103然后從樹結(jié)構(gòu)表D200獲得一個(gè)含有與上面所檢測的節(jié)點(diǎn)名”000”的第一位相等的節(jié)點(diǎn)名″0″的節(jié)點(diǎn)信息片斷,并從所檢測的節(jié)點(diǎn)信息片斷中抽取設(shè)備密鑰。在這個(gè)例子中,所抽取的設(shè)備密鑰是″KeyB″。
設(shè)備密鑰分配單元103然后從樹結(jié)構(gòu)表D200獲得一個(gè)含有與上面所檢測的節(jié)點(diǎn)名”000”的前兩位相等的節(jié)點(diǎn)名″00″的節(jié)點(diǎn)信息片斷,并從所檢測的節(jié)點(diǎn)信息片斷中抽取設(shè)備密鑰。在這個(gè)例子中,所抽取的設(shè)備密鑰是″KeyD″。
設(shè)備密鑰分配單元103然后將所檢測的節(jié)點(diǎn)名″000″作為ID信息傳送到用戶裝置1,把數(shù)字″1″、″2″、″3″和″4″作為設(shè)備密鑰ID信息分別分配給所抽取的四個(gè)設(shè)備密鑰″KeyA″、″KeyB″、″KeyD″和″IK1″,并把這四個(gè)設(shè)備密鑰和四個(gè)設(shè)備密鑰ID信息片斷按規(guī)定的順序傳送到用戶裝置1。
設(shè)備密鑰分配單元103然后通過更新在樹結(jié)構(gòu)存儲(chǔ)單元102中存儲(chǔ)的樹結(jié)構(gòu)表D200而生成另一個(gè)樹結(jié)構(gòu)表,并把新生成的樹結(jié)構(gòu)表存儲(chǔ)到樹結(jié)構(gòu)存儲(chǔ)單元102中。
設(shè)備密鑰分配單元103然后根據(jù)新存儲(chǔ)的樹結(jié)構(gòu)表,將ID信息、四個(gè)設(shè)備密鑰和四個(gè)設(shè)備密鑰ID信息傳送到用戶裝置2。
類似地,設(shè)備密鑰分配單元103將ID信息、四個(gè)設(shè)備密鑰和四個(gè)設(shè)備密鑰ID信息傳送到用戶裝置3。進(jìn)一步以類似的方式,設(shè)備密鑰分配單元103將ID信息、四個(gè)設(shè)備密鑰和四個(gè)設(shè)備密鑰ID信息傳送到用戶裝置4。
圖7表示一個(gè)作為上述過程的結(jié)果而生成的樹結(jié)構(gòu)T300。圖8具體地表示一個(gè)對應(yīng)于樹結(jié)構(gòu)T300并被存儲(chǔ)在樹結(jié)構(gòu)存儲(chǔ)單元102中的樹結(jié)構(gòu)表D300。如圖7和8中所示,設(shè)備密鑰分配單元103已經(jīng)將ID信息″001″、設(shè)備密鑰″KeyA″、″KeyB″、″KeyD″和″IK2″、以及對應(yīng)的設(shè)備密鑰ID信息傳送到用戶裝置2,已經(jīng)將ID信息″010″、設(shè)備密鑰″KeyA″、″KeyB″、″KeyE″和″IK3″、以及對應(yīng)的設(shè)備密鑰ID信息傳送到用戶裝置3,并已經(jīng)將ID信息″011″、設(shè)備密鑰″KeyA″、″KeyB″、″KeyE″和″IK4″、以及對應(yīng)的設(shè)備密鑰ID信息片斷傳送到用戶裝置4。
設(shè)備密鑰分配單元103然后開始對用戶裝置5重復(fù)相同的過程。設(shè)備密鑰分配單元103從樹結(jié)構(gòu)存儲(chǔ)單元102讀取樹結(jié)構(gòu)表D300,計(jì)算沒有指明對應(yīng)的用戶裝置名的葉子的數(shù)目。發(fā)現(xiàn)該結(jié)果是“4”。該值不大于閥值。發(fā)生這個(gè)情況時(shí),設(shè)備密鑰分配單元103把樹結(jié)構(gòu)表D300恢復(fù)到樹結(jié)構(gòu)存儲(chǔ)單元102,并向樹結(jié)構(gòu)擴(kuò)展單元104輸出一個(gè)信號,該信號含有一條擴(kuò)展一個(gè)對應(yīng)于在樹結(jié)構(gòu)存儲(chǔ)單元102中存儲(chǔ)的樹結(jié)構(gòu)表的樹結(jié)構(gòu)的指令。
第2代樹結(jié)構(gòu)本節(jié)中,將說明設(shè)備密鑰分配單元103如何處理第2代樹結(jié)構(gòu)。應(yīng)當(dāng)注意的是,這里,第2代樹結(jié)構(gòu)是通過擴(kuò)展第1代樹結(jié)構(gòu)—使得有層0至層4共5層—而生成的。
設(shè)備密鑰分配單元103從樹結(jié)構(gòu)存儲(chǔ)單元102中讀取樹結(jié)構(gòu)表D400,其中樹結(jié)構(gòu)表D400未予示出,但是代表對應(yīng)于圖9中所示的樹結(jié)構(gòu)T400的數(shù)據(jù)結(jié)構(gòu)。設(shè)備密鑰分配單元103然后從表中抽取對應(yīng)8個(gè)葉子的8個(gè)節(jié)點(diǎn)信息片斷。設(shè)備密鑰分配單元103計(jì)算沒有指明對應(yīng)的用戶裝置名的葉子的數(shù)目。發(fā)現(xiàn)該結(jié)果是“8”。設(shè)備密鑰分配單元103然后將該數(shù)與閥值″4″比較,認(rèn)為它大于閥值。
設(shè)備密鑰分配單元103從8個(gè)葉子中選擇一個(gè)葉子。假設(shè)這里選擇一個(gè)對應(yīng)于節(jié)點(diǎn)名″1000″的葉子。設(shè)備密鑰分配單元103然后將″5″作為用戶裝置名寫入具有節(jié)點(diǎn)名″1000″的節(jié)點(diǎn)信息片斷。設(shè)備密鑰分配單元103然后用隨機(jī)數(shù)生成多個(gè)設(shè)備密鑰。設(shè)備密鑰分配單元103將所生成的所有設(shè)備密鑰分配給從葉子″1000″至根(含)中存在的所有節(jié)點(diǎn),以及在這些節(jié)點(diǎn)被刪除時(shí)所生成的所有子樹的根。設(shè)備密鑰分配單元103在對應(yīng)于所分配的節(jié)點(diǎn)和子樹根的樹結(jié)構(gòu)表中的節(jié)點(diǎn)信息片斷中寫設(shè)備密鑰。
設(shè)備密鑰分配單元103將更新的樹結(jié)構(gòu)表存儲(chǔ)到樹結(jié)構(gòu)存儲(chǔ)單元102中,代替以前存儲(chǔ)的樹結(jié)構(gòu)表。
圖10表示一個(gè)作為上述操作的結(jié)果而生成的樹結(jié)構(gòu)T500。圖11表示一個(gè)對應(yīng)于樹結(jié)構(gòu)T500并且當(dāng)前被存儲(chǔ)在樹結(jié)構(gòu)存儲(chǔ)單元102中的樹結(jié)構(gòu)表D500。如圖10和11中所示,所生成的樹結(jié)構(gòu)含有新建立的對應(yīng)關(guān)系節(jié)點(diǎn)”10”對應(yīng)于設(shè)備密鑰″KeyF″,節(jié)點(diǎn)”11”對應(yīng)于″KeyG″,節(jié)點(diǎn)”100”對應(yīng)于″KeyH″,節(jié)點(diǎn)”101”對應(yīng)于″KeyI″,葉子”1000”對應(yīng)于″IK5″,葉子”1001”對應(yīng)于″IK6″。
設(shè)備密鑰分配單元103從樹結(jié)構(gòu)存儲(chǔ)單元102讀取樹結(jié)構(gòu)表D500,按以下方式將ID信息、設(shè)備密鑰、以及對應(yīng)的設(shè)備密鑰ID信息傳送到用戶裝置5。
設(shè)備密鑰分配單元103從所讀取的樹結(jié)構(gòu)表D500獲得一個(gè)含有用戶裝置″5″的節(jié)點(diǎn)信息片斷,并從所檢測的節(jié)點(diǎn)信息片斷中抽取節(jié)點(diǎn)名和設(shè)備密鑰。在這個(gè)例子中,所抽取的節(jié)點(diǎn)名和設(shè)備密鑰分別是″1000″和″IK5″。
設(shè)備密鑰分配單103然后從樹結(jié)構(gòu)表D500獲得一個(gè)含有節(jié)點(diǎn)名″根″的節(jié)點(diǎn)信息片斷,并從所檢測的節(jié)點(diǎn)信息片斷中抽取設(shè)備密鑰。在這個(gè)例子中,所抽取的設(shè)備密鑰是″KeyA″。
設(shè)備密鑰分配單元103然后從樹結(jié)構(gòu)表D500獲得一個(gè)含有與上面所檢測的節(jié)點(diǎn)名”1000”的第一位相等的節(jié)點(diǎn)名″1″的節(jié)點(diǎn)信息片斷,并從所檢測的節(jié)點(diǎn)信息片斷中抽取設(shè)備密鑰。在這個(gè)例子中,所抽取的設(shè)備密鑰是″KeyC″。
設(shè)備密鑰分配單元103然后從樹結(jié)構(gòu)表D500獲得一個(gè)含有與上面所檢測的節(jié)點(diǎn)名”1000”的前兩位相等的節(jié)點(diǎn)名″10″的節(jié)點(diǎn)信息片斷,并從所檢測的節(jié)點(diǎn)信息片斷中抽取設(shè)備密鑰。在這個(gè)例子中,所抽取的設(shè)備密鑰是″KeyF″。
設(shè)備密鑰分配單元103然后從樹結(jié)構(gòu)表D500獲得一個(gè)含有與上面所檢測的節(jié)點(diǎn)名”1000”的前三位相等的節(jié)點(diǎn)名″100″的節(jié)點(diǎn)信息片斷,并從所檢測的節(jié)點(diǎn)信息片斷中抽取設(shè)備密鑰。在這個(gè)例子中,所抽取的設(shè)備密鑰是″KeyH″。
設(shè)備密鑰分配單元103然后將所檢測的節(jié)點(diǎn)名″1000″作為ID信息傳送到用戶裝置1,把數(shù)字″1″、″2″、″3″、”4”和″5″作為設(shè)備密鑰ID信息分別分配給所抽取的四個(gè)設(shè)備密鑰″KeyA″、″KeyC″、″KeyF″、”KeyH”和″IK5″,并把這五個(gè)設(shè)備密鑰和五個(gè)設(shè)備密鑰ID信息片斷按規(guī)定的順序傳送到用戶裝置5。
設(shè)備密鑰分配單元103然后通過更新在樹結(jié)構(gòu)存儲(chǔ)單元102中存儲(chǔ)的樹結(jié)構(gòu)表D500而生成另一個(gè)樹結(jié)構(gòu)表,并把新生成的樹結(jié)構(gòu)表存儲(chǔ)到樹結(jié)構(gòu)存儲(chǔ)單元102中。
設(shè)備密鑰分配單元103然后根據(jù)新存儲(chǔ)的樹結(jié)構(gòu)表,將ID信息、五個(gè)設(shè)備密鑰和五個(gè)設(shè)備密鑰ID信息傳送到用戶裝置6。
類似地,設(shè)備密鑰分配單元103將ID信息、五個(gè)設(shè)備密鑰和五個(gè)設(shè)備密鑰ID信息傳送到用戶裝置7。進(jìn)一步以類似的方式,設(shè)備密鑰分配單元103將ID信息、五個(gè)設(shè)備密鑰和五個(gè)設(shè)備密鑰ID信息傳送到用戶裝置8。
圖12表示一個(gè)作為上述過程的結(jié)果而生成的樹結(jié)構(gòu)T600。如圖12中所示,屬于第3層的全部4個(gè)葉子都被分配給用戶裝置;在屬于第4層的8個(gè)葉子中,4個(gè)葉子被分配給用戶裝置,但是另外4個(gè)葉子沒有被分配給用戶裝置。圖13表示一個(gè)對應(yīng)于樹結(jié)構(gòu)T600并且當(dāng)前被存儲(chǔ)在樹結(jié)構(gòu)存儲(chǔ)單元102中的樹結(jié)構(gòu)表D600。如圖12和13中所示,設(shè)備密鑰分配單元103已經(jīng)將ID信息″1001″、設(shè)備密鑰″KeyA″、″KeyC″、″KeyF″、″KeyH″和”IK6”傳送到用戶裝置6,已經(jīng)將ID信息″1010″、設(shè)備密鑰″KeyA″、″KeyC″、″KeyF″、”KeyI”和″IK7″傳送到用戶裝置7,并已經(jīng)將ID信息″1011″、″KeyA″、″KeyC″、″KeyF″、”KeyI”和″IK8″、傳送到用戶裝置8。
設(shè)備密鑰分配單元103然后開始對用戶裝置9重復(fù)相同的過程。設(shè)備密鑰分配單元103從樹結(jié)構(gòu)存儲(chǔ)單元102讀取樹結(jié)構(gòu)表D600,計(jì)算沒有指明對應(yīng)的用戶裝置名的葉子的數(shù)目。發(fā)現(xiàn)該結(jié)果是“4”。該值不大于閥值。發(fā)生這個(gè)情況時(shí),設(shè)備密鑰分配單元103把樹結(jié)構(gòu)表D600恢復(fù)到樹結(jié)構(gòu)存儲(chǔ)單元102,并向樹結(jié)構(gòu)擴(kuò)展單元104輸出一個(gè)信號,該信號含有一條擴(kuò)展一個(gè)對應(yīng)于在樹結(jié)構(gòu)存儲(chǔ)單元102中存儲(chǔ)的樹結(jié)構(gòu)表的樹結(jié)構(gòu)的指令。
第3代樹結(jié)構(gòu)本節(jié)中,將說明設(shè)備密鑰分配單元103如何處理第3代樹結(jié)構(gòu)。應(yīng)當(dāng)注意的是,這里,第3代樹結(jié)構(gòu)是通過擴(kuò)展第2代樹結(jié)構(gòu)—使得有層0至層5共6層—而生成的。
設(shè)備密鑰分配單元103分配一個(gè)用戶裝置9給屬于圖14中所示的樹結(jié)構(gòu)T700中的第5層的一個(gè)葉子。設(shè)備密鑰分配單元103進(jìn)一步將某些節(jié)點(diǎn)與設(shè)備密鑰關(guān)聯(lián)。然后,在一個(gè)與對應(yīng)于第2代樹結(jié)構(gòu)的類似的過程之后,生成圖15中所示的一個(gè)樹結(jié)構(gòu)T800。
如圖15中所示,在樹結(jié)構(gòu)T800中,屬于第3層的全部4個(gè)葉子和屬于第4層的全部4個(gè)葉子都被分配給用戶裝置;在屬于第5層的8個(gè)葉子中,4個(gè)葉子被分配給用戶裝置,但是另外4個(gè)葉子沒有被分配給用戶裝置。圖16表示一個(gè)對應(yīng)于樹結(jié)構(gòu)T800并且當(dāng)前被存儲(chǔ)在樹結(jié)構(gòu)存儲(chǔ)單元102中的樹結(jié)構(gòu)表D800。如圖15和16中所示,設(shè)備密鑰分配單元103已經(jīng)將ID信息″11000″、設(shè)備密鑰″KeyA″、″KeyC″、″KeyG″、″KeyJ″、″KeyL″和”IK9”以及對應(yīng)的設(shè)備密鑰ID信息傳送到用戶裝置9,已經(jīng)將ID信息″11001″,設(shè)備密鑰″KeyA″、″KeyC″、″KeyG″、″KeyJ″、″KeyL″和”IK10”以及對應(yīng)的設(shè)備密鑰ID信息傳送到用戶裝置10,已經(jīng)將ID信息″11010″,設(shè)備密鑰″KeyA″、″KeyC″、″KeyG″、″KeyJ″、″KeyM″和”IK11”以及對應(yīng)的設(shè)備密鑰ID信息傳送到用戶裝置11,已經(jīng)將ID信息″11011″,設(shè)備密鑰″KeyA″、″KeyC″、″KeyG″、″KeyJ″、″KeyM″和”IK12”以及對應(yīng)的設(shè)備密鑰ID信息傳送到用戶裝置12。
設(shè)備密鑰分配單元103然后開始對用戶裝置13重復(fù)相同的過程。設(shè)備密鑰分配單元103從樹結(jié)構(gòu)存儲(chǔ)單元102讀取樹結(jié)構(gòu)表D800,計(jì)算沒有指明對應(yīng)的用戶裝置名的葉子的數(shù)目。發(fā)現(xiàn)該結(jié)果是“4”。該值不大于閥值。發(fā)生這個(gè)情況時(shí),設(shè)備密鑰分配單元103把樹結(jié)構(gòu)表D800恢復(fù)到樹結(jié)構(gòu)存儲(chǔ)單元102,并向樹結(jié)構(gòu)擴(kuò)展單元104輸出一個(gè)信號,該信號含有一條擴(kuò)展一個(gè)對應(yīng)于在樹結(jié)構(gòu)存儲(chǔ)單元102.中存儲(chǔ)的樹結(jié)構(gòu)表的樹結(jié)構(gòu)的指令。
(4)樹結(jié)構(gòu)擴(kuò)展單元104樹結(jié)構(gòu)擴(kuò)展單元104在從設(shè)備密鑰分配單元103接收到一個(gè)含有一條要擴(kuò)展一個(gè)樹結(jié)構(gòu)的指令的信號后,從樹結(jié)構(gòu)存儲(chǔ)單元102讀取數(shù)結(jié)構(gòu)表,通過更新樹結(jié)構(gòu)表,將對應(yīng)于所讀取的樹結(jié)構(gòu)表的樹結(jié)構(gòu)擴(kuò)展一代,并將所更新的樹結(jié)構(gòu)表存儲(chǔ)到樹結(jié)構(gòu)存儲(chǔ)單元102中。以下是這個(gè)過程的詳細(xì)說明。
例如,樹結(jié)構(gòu)擴(kuò)展單元104從樹結(jié)構(gòu)存儲(chǔ)單元102中讀取分別在圖8、13和16中表示的樹結(jié)構(gòu)表D300、D600和D800。這些表對應(yīng)于分別在圖7、11和15中表示的樹結(jié)構(gòu)T300、T600和T800。如對應(yīng)的樹結(jié)構(gòu)表明的那樣,樹結(jié)構(gòu)表D300、D600和D800每個(gè)都有4個(gè)尚未被分配用戶裝置的葉子。
當(dāng)樹結(jié)構(gòu)擴(kuò)展單元104從樹結(jié)構(gòu)存儲(chǔ)單元102中讀取樹結(jié)構(gòu)表D300時(shí),通過生成從屬于第3層并且沒有被分配用戶裝置的每個(gè)葉子擴(kuò)展的兩個(gè)節(jié)點(diǎn)而生成屬于第4層的8個(gè)葉子。更具體來說,樹結(jié)構(gòu)擴(kuò)展單元104生成分別含有節(jié)點(diǎn)″1000″、″1001″、″1010″、″1011″、″1100″、″1101″、″1110″和″1111″的8個(gè)節(jié)點(diǎn)信息片斷,將所生成的8個(gè)節(jié)點(diǎn)信息片斷添加到樹結(jié)構(gòu)表D300中,并將新的樹結(jié)構(gòu)表存儲(chǔ)到樹結(jié)構(gòu)存儲(chǔ)單102中。該新的樹結(jié)構(gòu)表就是圖9中所示的樹結(jié)構(gòu)表D400。
當(dāng)樹結(jié)構(gòu)擴(kuò)展單元104從樹結(jié)構(gòu)存儲(chǔ)單元102中讀取樹結(jié)構(gòu)表D600時(shí),通過生成從屬于第4層并且沒有被分配用戶裝置的每個(gè)葉子擴(kuò)展的兩個(gè)節(jié)點(diǎn)而生成屬于第5層的8個(gè)葉子。更具體來說,樹結(jié)構(gòu)擴(kuò)展單元104生成分別含有節(jié)點(diǎn)名″11000″、″11001″、″11010″、″11011″、″11100″、″11101″、″11110″和″11111″的8個(gè)節(jié)點(diǎn)信息片斷,將所生成的8個(gè)節(jié)點(diǎn)信息片斷添加到樹結(jié)構(gòu)表D600中,并將新的樹結(jié)構(gòu)表存儲(chǔ)到樹結(jié)構(gòu)存儲(chǔ)單元102中。對應(yīng)于該新的樹結(jié)構(gòu)表的新的樹結(jié)構(gòu)就是圖14中所示的樹結(jié)構(gòu)T7400。
類似地,當(dāng)樹結(jié)構(gòu)擴(kuò)展單元104從樹結(jié)構(gòu)存儲(chǔ)單元102中讀取樹結(jié)構(gòu)表D800時(shí),通過生成從屬于第5層并且沒有被分配用戶裝置的每個(gè)葉子擴(kuò)展的兩個(gè)節(jié)點(diǎn)而生成屬于第6層的8個(gè)葉子。更具體來說,樹結(jié)構(gòu)擴(kuò)展單元104生成8個(gè)節(jié)點(diǎn)信息片斷,將所生成的節(jié)點(diǎn)信息片斷添加到樹結(jié)構(gòu)表D800中,并將新的樹結(jié)構(gòu)表存儲(chǔ)到樹結(jié)構(gòu)存儲(chǔ)單元102中。
應(yīng)當(dāng)注意的是,第4代樹結(jié)構(gòu)以及對應(yīng)的樹結(jié)構(gòu)表沒有在圖中表示。
(5)密鑰信息生成單元105密鑰信息生成密鑰信息并將所生成的信息寫到一個(gè)記錄介質(zhì)500a上。每個(gè)密鑰信息片斷包括一對或多對ID信息與加密的介質(zhì)密鑰。
圖17表示由密鑰信息生成單105生成的密鑰信息的一個(gè)例子。在這個(gè)例子中,密鑰信息210包括三對(a)設(shè)備密鑰ID信息和(b)加密的介質(zhì)密鑰。
在這個(gè)例子中,每個(gè)加密的介質(zhì)密鑰都以E(″設(shè)備密鑰″,″介質(zhì)密鑰″)的格式表示。這里,″E(A,B)″表示數(shù)據(jù)B是被一個(gè)加密算法E運(yùn)用一個(gè)密鑰A加密的。加密算法E例如是DES(數(shù)據(jù)加密標(biāo)準(zhǔn)DataEncryption Standard)設(shè)備密鑰ID信息被用來標(biāo)識一個(gè)設(shè)備密鑰,該設(shè)備密鑰被用來生成一個(gè)對應(yīng)的加密的介質(zhì)密鑰。樹結(jié)構(gòu)中的要被分配目標(biāo)設(shè)備密鑰的節(jié)點(diǎn)的節(jié)點(diǎn)名,被寫入設(shè)備密鑰ID信息中。
1.2密鑰信息記錄裝置200密鑰信息記錄裝置200從密鑰信息生成單元105接收密鑰信息,并將所接收的密鑰信息寫到記錄介質(zhì)500a上。
1.3記錄介質(zhì)500a、b、c記錄介質(zhì)500a是一個(gè)諸如DVD-RAM的可記錄介質(zhì),在上面沒有記錄數(shù)據(jù)。
記錄介質(zhì)500b是在密鑰管理裝置100和密鑰信息記錄裝置200將密鑰信息寫到記錄介質(zhì)500a上時(shí)被生成的。
記錄介質(zhì)500c是在記錄裝置300a等的任何一個(gè)寫一個(gè)加密的內(nèi)容時(shí)被生成的。
1.4記錄裝置300a等記錄裝置300a包括一個(gè)微處理器、一個(gè)ROM和一個(gè)RAM。RAM存儲(chǔ)一個(gè)計(jì)算機(jī)程序。記錄裝置300a的功能是在微處理器按照計(jì)算機(jī)程序運(yùn)行時(shí)實(shí)現(xiàn)的。圖中沒有表示出記錄裝置300a的構(gòu)造。
記錄介質(zhì)500b被插入到記錄裝置300a中。記錄裝置300a通過根據(jù)存儲(chǔ)在記錄裝置300a本身上的ID信息分析被寫入記錄介質(zhì)500b上所記錄的密鑰信息中的設(shè)備密鑰ID信息,識別一個(gè)要被解密的加密的介質(zhì)密鑰和一個(gè)要被使用的設(shè)備密鑰。記錄裝置300a然后利用所識別的設(shè)備密鑰解密所識別的加密的介質(zhì)密鑰,并將加密的內(nèi)容記錄到記錄介質(zhì)500b上。
1.5再現(xiàn)裝置400a等再現(xiàn)裝置400a包括一個(gè)微處理器、一個(gè)ROM和一個(gè)RAM。RAM存儲(chǔ)一個(gè)計(jì)算機(jī)程序。再現(xiàn)裝置400a的功能是在微處理器按照計(jì)算機(jī)程序運(yùn)行時(shí)實(shí)現(xiàn)的。圖中沒有表示出再現(xiàn)裝置400a的構(gòu)造。
記錄介質(zhì)500c被插入再現(xiàn)裝置400a中。再現(xiàn)裝置400a通過根據(jù)存儲(chǔ)在再現(xiàn)裝置400a本身上的ID信息分析被寫入記錄介質(zhì)500c上所記錄的密鑰信息中的設(shè)備密鑰ID信息,識別一個(gè)要被解密的加密的介質(zhì)密鑰和一個(gè)要被使用的設(shè)備密鑰。再現(xiàn)裝置400a然后通過用所識別的設(shè)備密鑰解密所識別的加密的介質(zhì)密鑰獲得一個(gè)介質(zhì)密鑰。再現(xiàn)裝置400a用所獲得的介質(zhì)密鑰解密一個(gè)被記錄在記錄介質(zhì)500c上的加密的數(shù)字內(nèi)容,以再現(xiàn)該內(nèi)容。
2.數(shù)字作品保護(hù)系統(tǒng)10的操作。
在本節(jié)中,將解釋數(shù)字作品保護(hù)系統(tǒng)10的操作。
2.1總體操作將參照圖18中所示的流程圖解釋數(shù)字作品保護(hù)系統(tǒng)10的總體操作。
首先,數(shù)字作品保護(hù)系統(tǒng)10構(gòu)造第1代樹結(jié)構(gòu)并存儲(chǔ)所生成的樹結(jié)構(gòu)(步驟S101)。數(shù)字作品保護(hù)系統(tǒng)10然后執(zhí)行一個(gè)對一個(gè)第n代樹結(jié)構(gòu)的處理(步驟S102),其中n是一個(gè)不小于″2″的整數(shù)。按需要重復(fù)S102。
2.2第1代樹結(jié)構(gòu)的構(gòu)造和存儲(chǔ)將參照圖19中所示的流程圖解釋密鑰管理裝置100在構(gòu)造第1代樹結(jié)構(gòu)過程中的操作。注意到這里解釋的操作是圖18中所示的步驟S101的詳述。
樹結(jié)構(gòu)構(gòu)造單元101生成包括作為節(jié)點(diǎn)名的”根”的節(jié)點(diǎn)信息,并將所生成的節(jié)點(diǎn)信息寫到由樹結(jié)構(gòu)構(gòu)造單元101保存的樹結(jié)構(gòu)表(步驟S151)。
其次,樹結(jié)構(gòu)構(gòu)造單元101對層i(i=1,2,3)重復(fù)以下的步驟S152至S155。
樹結(jié)構(gòu)構(gòu)造單元101生成一個(gè)2i個(gè)字符的串作為節(jié)點(diǎn)名(步驟S153),并按順序?qū)ㄗ鳛楣?jié)點(diǎn)名的該2i個(gè)字符的串的節(jié)點(diǎn)信息寫到樹結(jié)構(gòu)表(步驟S154)2.3處理第n代樹結(jié)構(gòu)將參照圖20和21中所示的流程圖解釋本發(fā)明系統(tǒng)在構(gòu)造第n代樹結(jié)構(gòu)過程中的操作。注意到這里解釋的操作是圖18中所示的步驟S102的詳述。
密鑰管理裝置100的設(shè)備密鑰分配單元103選擇一個(gè)葉子并將一個(gè)用戶裝置與所選擇的葉子對應(yīng)(步驟S201)。設(shè)備密鑰分配單元103然后生成設(shè)備密鑰(步驟S202)并將所生成的設(shè)備密鑰分配給予所選擇的葉子有關(guān)的某些節(jié)點(diǎn)(步驟S203),然后將所分配的設(shè)備密鑰和ID信息傳送到與所選擇的葉子對應(yīng)的用戶裝置(步驟S204)。用戶裝置接收設(shè)備密鑰和ID信息(步驟S205)。密鑰信息生成單元105生成介質(zhì)密鑰(步驟S206),并生成密鑰信息(步驟S207)。密鑰信息生成單元105通過密鑰信息記錄裝置200將所生成的密鑰信息輸出到一個(gè)記錄介質(zhì)(步驟S208)。記錄介質(zhì)接收密鑰信息(步驟S209)。設(shè)備密鑰分配單元103計(jì)算沒有指明對應(yīng)的用戶裝置名的葉子的數(shù)目(步驟S210)。設(shè)備密鑰分配單元103然后判斷該葉子數(shù)等于還是小于閥值(步驟S211)。如果判斷是肯定的,樹結(jié)構(gòu)擴(kuò)展單元104生成一個(gè)新一代樹結(jié)構(gòu)(步驟S212)。如果步驟211中的判斷是否定的,則控制返回到步驟S201。
用戶裝置在步驟S205接收設(shè)備密鑰和ID信息后,在自身存儲(chǔ)所接收的設(shè)備密鑰和ID信息(步驟S221)。
記錄介質(zhì)在步驟S209接收密鑰信息后,在自身存儲(chǔ)所接收的密鑰信息(步驟S222)。
在記錄介質(zhì)被插入用戶裝置的同時(shí),記錄介質(zhì)將密鑰信息輸出到用戶裝置,用戶裝置接收密鑰信息(步驟S223)。用戶裝置通過查閱密鑰信息而抽取加密的介質(zhì)密鑰(步驟S224)。用戶裝置利用一個(gè)設(shè)備密鑰解密所抽取的加密的介質(zhì)密鑰(步驟S225),用所獲得介質(zhì)密鑰加密或解密一個(gè)內(nèi)容(步驟S226)。
2.4輸出設(shè)備密鑰和ID信息將參照圖22中所示的流程圖解釋密鑰管理裝置100在向用戶裝置輸出設(shè)備密鑰和ID信息的過程中的操作。注意到這里解釋的操作是圖20中所示的步驟S204的詳述。
設(shè)備密鑰分配單元103獲得N-位的ID信息和被分配給所選擇的葉子的設(shè)備密鑰″A″(步驟S241)。設(shè)備密鑰分配單元103然后獲得被分配給根的設(shè)備密鑰″B″(步驟S242)。設(shè)備密鑰分配單元103從M=1至M=N-1重復(fù)步驟S244(步驟S243至S245)。設(shè)備密鑰分配單元103獲得被分配給其節(jié)點(diǎn)名是ID信息的前M位的節(jié)點(diǎn)的設(shè)備密鑰″KM″(步驟S244)。設(shè)備密鑰分配單元103向用戶裝置輸出ID信息(步驟S246),然后將所獲得的各設(shè)備密鑰與各設(shè)備密鑰ID信息片斷對應(yīng),并按照″B、K1、...KN-1、A″的順序向用戶裝置輸出各設(shè)備密鑰與各設(shè)備密鑰ID信息片斷(步驟S247)。
3.撤銷設(shè)備密鑰在本節(jié)中,說明如何用常規(guī)的設(shè)備密鑰撤銷方法在數(shù)字作品保護(hù)系統(tǒng)10中撤銷設(shè)備密鑰。與其相關(guān)地,也討論用戶裝置之間的相容性。
將圖7中所示的第1代樹結(jié)構(gòu)T300擴(kuò)展,生成圖12中所示的第2代樹結(jié)構(gòu)T600。在這個(gè)擴(kuò)展中,層數(shù)被增加1,并且4個(gè)用戶裝置被添加到系統(tǒng)中。在這種情況下,例如有5個(gè)設(shè)備密鑰(KeyA、KeyC、KeyF、KeyI和IK8)被分配給用戶裝置8。這5個(gè)設(shè)備密鑰的集合是用戶裝置8獨(dú)有的,與分配給其他用戶裝置的任何設(shè)備密鑰集合都不同。因此,就有可能個(gè)別地撤銷用戶裝置8,如本技術(shù)領(lǐng)域中已知的那樣。
類似地,將樹結(jié)構(gòu)T600擴(kuò)展,生成圖15中所示的第3代樹結(jié)構(gòu)T800。在這個(gè)擴(kuò)展中,層數(shù)被增加1,并且4個(gè)用戶裝置被進(jìn)一步添加到系統(tǒng)中。在這種情況下,例如有6個(gè)設(shè)備密鑰(KeyA、KeyC、KeyG、KeyJ、KeyM和IK12)被分配給用戶裝置12。這6個(gè)設(shè)備密鑰的集合是用戶裝置12獨(dú)有的,與分配給其他用戶裝置的任何設(shè)備密鑰集合都不同。因此,就有可能個(gè)別地撤銷用戶裝置12,如本技術(shù)領(lǐng)域中已知的那樣。
現(xiàn)在將討論在(i)一個(gè)與在第3代樹結(jié)構(gòu)被生成時(shí)的一個(gè)樹結(jié)構(gòu)關(guān)聯(lián)的用戶裝置(以下稱該用戶裝置為第3代用戶裝置。這也適用于其它代)與(ii)一個(gè)與在另一代樹結(jié)構(gòu)被生成時(shí)的樹結(jié)構(gòu)關(guān)聯(lián)的用戶裝置—之間的相容性。
圖15中所示的樹結(jié)構(gòu)T800處于尚無裝置被撤銷的狀態(tài)。在這個(gè)狀態(tài)下,一個(gè)通過用設(shè)備密鑰″KeyA″加密一個(gè)介質(zhì)密鑰而生成的加密的介質(zhì)密鑰被記錄在記錄介質(zhì)1100中,如圖24A中所示的那樣。當(dāng)用戶裝置12是個(gè)記錄裝置時(shí),用戶裝置12通過用設(shè)備密鑰″KeyA″解密該加密的介質(zhì)密鑰而獲得一個(gè)介質(zhì)密鑰,用所獲得的介質(zhì)密鑰加密一個(gè)數(shù)字內(nèi)容,并將該加密的內(nèi)容記錄到記錄介質(zhì)1100上。當(dāng)?shù)?代用戶裝置1是個(gè)再現(xiàn)裝置時(shí),用戶裝置1通過用設(shè)備密鑰″KeyA″解密該加密的介質(zhì)密鑰而獲得一個(gè)介質(zhì)密鑰,用所獲得的介質(zhì)密鑰解密在記錄介質(zhì)1100上記錄的一個(gè)加密的數(shù)字內(nèi)容,以再現(xiàn)該內(nèi)容。
下面將討論在用戶裝置12被添加到系統(tǒng)之前第1代用戶裝置1已經(jīng)被撤銷的情況。圖23表示其中的用戶裝置1已經(jīng)被撤銷的一個(gè)樹結(jié)構(gòu)T900。在這個(gè)時(shí)刻,系統(tǒng)包括兩種記錄介質(zhì)圖24A中所示的、在用戶裝置1被撤銷之前含有數(shù)據(jù)的記錄介質(zhì)1100和圖24B中所示的在用戶裝置1被撤銷之后含有數(shù)據(jù)的記錄介質(zhì)1200。記錄介質(zhì)1200存儲(chǔ)著被用設(shè)備密鑰″KeyC″、″KeyE″和″IK2″作為密鑰信息加密的加密的介質(zhì)密鑰。如果在這個(gè)條件下將用戶裝置12添加到系統(tǒng),用戶裝置12持有設(shè)備密鑰″KeyA″、″KeyC″、″KeyG″、″KeyJ″、″KeyM″和″IK12″,如圖15中所示的那樣。在這個(gè)狀態(tài)下,當(dāng)記錄介質(zhì)1100被插入時(shí),用戶裝置12用KeyA獲得一個(gè)介質(zhì)密鑰,用所獲得的介質(zhì)密鑰加密一個(gè)內(nèi)容,并將所加密的內(nèi)容記錄到記錄介質(zhì)1100上。當(dāng)存儲(chǔ)著一個(gè)加密的內(nèi)容的記錄介質(zhì)1100被插入時(shí),用戶裝置12用KeyA獲得一個(gè)介質(zhì)密鑰,用所獲得的介質(zhì)密鑰解密該加密的內(nèi)容。同樣,當(dāng)記錄介質(zhì)1200被插入到其中時(shí),用戶裝置12用KeyC獲得一個(gè)介質(zhì)密鑰,用所獲得的介質(zhì)密鑰加密一個(gè)內(nèi)容,并將所加密的內(nèi)容記錄到記錄介質(zhì)1200上。當(dāng)存儲(chǔ)著一個(gè)加密的內(nèi)容的記錄介質(zhì)1200被插入到其中時(shí),用戶裝置12用KeyC獲得一個(gè)介質(zhì)密鑰,用所獲得的介質(zhì)密鑰解密該加密的內(nèi)容。
6.其他修改注意,盡管根據(jù)是根據(jù)以上實(shí)施例對本發(fā)明進(jìn)行說明的,本發(fā)明并不限于該實(shí)施例。本發(fā)明也包括諸如以下的情形。
(1)在以上實(shí)施例中,密鑰管理裝置100構(gòu)造一個(gè)二叉樹。然而,密鑰管理裝置100并不僅限于構(gòu)造二叉樹,而是可以構(gòu)造n叉樹,其中n是個(gè)不小于2的整數(shù)。
(2)在以上實(shí)施例中,可以用任何方法將設(shè)備密鑰與樹結(jié)構(gòu)中的節(jié)點(diǎn)關(guān)聯(lián),或者將用戶裝置分配給設(shè)備密鑰。
(3)在以上實(shí)施例中,樹結(jié)構(gòu)中的每個(gè)節(jié)點(diǎn)與一個(gè)設(shè)備密鑰關(guān)聯(lián)。然而,每個(gè)節(jié)點(diǎn)可以與多個(gè)設(shè)備密鑰關(guān)聯(lián)。在這種情況下,對于從一個(gè)被分配有一個(gè)用戶裝置的葉子到根(包括該葉子和根)存在的每個(gè)節(jié)點(diǎn),密鑰管理裝置將與該節(jié)點(diǎn)關(guān)聯(lián)的多個(gè)設(shè)備密鑰中的一個(gè)或多個(gè)設(shè)備密鑰分配給用戶裝置。例如,本發(fā)明包括這樣的情形一個(gè)三叉樹的每個(gè)節(jié)點(diǎn)與6個(gè)或7個(gè)設(shè)備密鑰關(guān)聯(lián),這些設(shè)備密鑰中的3個(gè)或4個(gè)設(shè)備密鑰被分配給一個(gè)用戶裝置。
(4)在以上實(shí)施例中,密鑰管理裝置100事先有一個(gè)閥值。然而,密鑰管理裝置可以事先沒有一個(gè)閥值,而是在開始構(gòu)造一個(gè)樹結(jié)構(gòu)是接收一個(gè)閥值,以便在其中設(shè)置它。此外,密鑰管理裝置也可以在樹結(jié)構(gòu)構(gòu)造過程中接收一個(gè)閥值來替換一個(gè)老閥值。
(5)在以上實(shí)施例中,密鑰管理裝置100首先構(gòu)造一個(gè)二叉樹結(jié)構(gòu),然后通過每個(gè)葉子生成兩個(gè)葉子地?cái)U(kuò)展它。然而,密鑰管理裝置可以通過每個(gè)葉子生成三個(gè)葉子地?cái)U(kuò)展樹結(jié)構(gòu)。此外,密鑰管理裝置還可以先構(gòu)造一個(gè)n叉樹結(jié)構(gòu),然后通過每個(gè)葉子生成m個(gè)葉子地?cái)U(kuò)展它,其中n是個(gè)不小于2的整數(shù),m是個(gè)不小于n的整數(shù)。
(6)在以上實(shí)施例中,密鑰管理裝置100將樹結(jié)構(gòu)擴(kuò)展一代,并將用戶裝置分配給葉子。然而,密鑰管理裝置100可以一次性將樹結(jié)構(gòu)擴(kuò)展兩代。例如,密鑰管理裝置可以通過從屬于層3的、沒有被分配給任何用戶裝置的4個(gè)葉子生成16個(gè)屬于層5的葉子,一次性地將圖7中所示的樹結(jié)構(gòu)T300擴(kuò)展兩代。此外,密鑰管理裝置100可以一次性地將樹結(jié)構(gòu)擴(kuò)展k代,其中,k是個(gè)不小于2的整數(shù)。
(7)在以上實(shí)施例中,首先構(gòu)造第1代樹結(jié)構(gòu),然后將樹結(jié)構(gòu)向上擴(kuò)展到第3代樹結(jié)構(gòu)。然而,樹結(jié)構(gòu)并不限于第3代樹結(jié)構(gòu),而是原則上可以被無限地?cái)U(kuò)展。樹結(jié)構(gòu)的擴(kuò)展也可以在樹結(jié)構(gòu)的層數(shù)達(dá)到一個(gè)預(yù)定的數(shù)目而停止。
(8)密鑰管理裝置可以根據(jù)要被分配給設(shè)備密鑰的用戶裝置的數(shù)量來選擇一個(gè)樹結(jié)構(gòu)擴(kuò)展方法。這里所說的樹結(jié)構(gòu)擴(kuò)展方法包括一種由n叉樹擴(kuò)展n叉樹的方法,一種由m叉樹擴(kuò)展n叉樹的方法(n<m),一種一次性地將樹擴(kuò)展k代的方法(k是個(gè)不小于2的整數(shù)),以及這些方法的組合。
(9)本發(fā)明可以是以上所示的各方法。此外,這些方法也可以是由計(jì)算機(jī)實(shí)現(xiàn)的計(jì)算機(jī)程序,可以是計(jì)算機(jī)程序的數(shù)字信號。
此外,本發(fā)明也可以是一種存儲(chǔ)著計(jì)算機(jī)程序或數(shù)字信號的計(jì)算機(jī)可讀記錄介質(zhì)裝置,例如軟盤、硬盤、CD-ROM(壓縮盤只讀存儲(chǔ)器),以及M0(磁-光magneto-optical)、DVD-ROM(數(shù)字多用只讀存儲(chǔ)器)、DVD RAM、或半導(dǎo)體存儲(chǔ)器。此外,本發(fā)明可以是在上述記錄介質(zhì)裝置的任何一個(gè)上記錄的計(jì)算機(jī)程序或數(shù)字信號。
此外,本發(fā)明可以是在電通信線路、無線或有線通信線路、或以因特網(wǎng)為代表的網(wǎng)絡(luò)上傳送的計(jì)算機(jī)程序或數(shù)字信號。
此外,本發(fā)明可以是一個(gè)包括微處理器和存儲(chǔ)器的計(jì)算機(jī)系統(tǒng),其中,存儲(chǔ)器中存儲(chǔ)著計(jì)算機(jī)程序,微處理器按照計(jì)算機(jī)程序運(yùn)行。
此外,通過將程序或數(shù)字信號傳送到記錄介質(zhì)裝置,或者通過網(wǎng)絡(luò)之類傳送程序或數(shù)字信號,程序或數(shù)字信號可以被另一個(gè)獨(dú)立的計(jì)算機(jī)執(zhí)行。
(10)本發(fā)明可以是上述實(shí)施例和修改的任何組合。
工業(yè)應(yīng)用由密鑰管理裝置和用戶裝置組成的上述數(shù)字作品保護(hù)系統(tǒng)是當(dāng)諸如存儲(chǔ)在DVD等上的音樂、電影或小說在市場上流通時(shí)防止非法使用內(nèi)容的理想方法。
權(quán)利要求
1.一種數(shù)字作品保護(hù)系統(tǒng),該系統(tǒng)包括一個(gè)密鑰管理裝置和一個(gè)用戶裝置,密鑰管理裝置生成設(shè)備密鑰,將設(shè)備密鑰與一個(gè)樹結(jié)構(gòu)中的節(jié)點(diǎn)關(guān)聯(lián),并把用戶裝置分配給設(shè)備密鑰,密鑰管理裝置包含一個(gè)確定單元,可用來根據(jù)未分配有用戶裝置的葉子的數(shù)量確定是否向樹結(jié)構(gòu)增加新的葉子;一個(gè)擴(kuò)展單元,可用來—如果確定單元確定要增加—生成要從未分配有用戶裝置的葉子的其中之一擴(kuò)展的新的葉子;一個(gè)用戶裝置分配單元,可用來將一個(gè)用戶裝置分配給新生成的葉子的其中之一;一個(gè)設(shè)備密鑰生成單元,可用來生成新的設(shè)備密鑰,將新的設(shè)備密鑰與從該新生成的一個(gè)葉子到一個(gè)根包含的所有節(jié)點(diǎn)中尚無設(shè)備密鑰與之關(guān)聯(lián)的節(jié)點(diǎn)關(guān)聯(lián);一個(gè)設(shè)備密鑰分配單元,可用來向用戶裝置分配與從該新生成的一個(gè)葉子到根包含存在的所有節(jié)點(diǎn)對應(yīng)的設(shè)備密鑰,其中,用戶設(shè)備或者用所分配的設(shè)備密鑰的其中之一加密一個(gè)內(nèi)容并把加密的內(nèi)容寫到一個(gè)記錄介質(zhì)上,或者從記錄介質(zhì)讀取加密的內(nèi)容并用所分配設(shè)備密鑰的一個(gè)設(shè)備密鑰解密所讀取的內(nèi)容。
2.一種密鑰管理裝置,用于生成設(shè)備密鑰,將設(shè)備密鑰與一個(gè)樹結(jié)構(gòu)中的節(jié)點(diǎn)相關(guān)聯(lián),并分配一個(gè)用戶裝置給設(shè)備密鑰,包含一個(gè)確定單元,可用來根據(jù)未分配有用戶裝置的葉子的數(shù)量確定是否向樹結(jié)構(gòu)增加新的葉子;一個(gè)擴(kuò)展單元,可用來—如果確定單元確定要增加—生成要從未分配有用戶裝置的葉子的其中之一擴(kuò)展的新的葉子;一個(gè)用戶裝置分配單元,可用來將一個(gè)用戶裝置分配給新生成的葉子的其中之一;一個(gè)設(shè)備密鑰生成單元,可用來生成新的設(shè)備密鑰,將新的設(shè)備密鑰與從該新生成的一個(gè)葉子到一個(gè)根包含的所有節(jié)點(diǎn)中尚無設(shè)備密鑰與之關(guān)聯(lián)的節(jié)點(diǎn)關(guān)聯(lián);一個(gè)設(shè)備密鑰分配單元,可用來向用戶裝置分配與從該新生成的一個(gè)葉子到根包含存在的所有節(jié)點(diǎn)對應(yīng)的設(shè)備密鑰。
3.一種密鑰管理裝置,用于生成設(shè)備密鑰,將設(shè)備密鑰與一個(gè)樹結(jié)構(gòu)中的節(jié)點(diǎn)相關(guān)聯(lián),并分配多個(gè)用戶裝置給設(shè)備密鑰,包含一個(gè)設(shè)備密鑰存儲(chǔ)單元,可用來事先存儲(chǔ)該樹結(jié)構(gòu)和已經(jīng)被分配給與樹結(jié)構(gòu)中的一些葉子相關(guān)聯(lián)的用戶裝置的設(shè)備密鑰;一個(gè)確定單元,可用來根據(jù)未分配有用戶裝置的葉子的數(shù)量確定是否向樹結(jié)構(gòu)增加新的葉子;一個(gè)擴(kuò)展單元,可用來—如果確定單元確定要增加—生成要從未分配有用戶裝置的葉子的其中之一擴(kuò)展的新的葉子;一個(gè)用戶裝置分配單元,可用來將一個(gè)用戶裝置分配給新生成的葉子的其中之一;一個(gè)設(shè)備密鑰生成單元,可用來生成新的設(shè)備密鑰,將新的設(shè)備密鑰與從該新生成的一個(gè)葉子到一個(gè)根包含的所有節(jié)點(diǎn)中尚無設(shè)備密鑰與之關(guān)聯(lián)的節(jié)點(diǎn)關(guān)聯(lián);一個(gè)設(shè)備密鑰分配單元,可用來向用戶裝置分配與從該新生成的一個(gè)葉子到根包含存在的所有節(jié)點(diǎn)對應(yīng)的設(shè)備密鑰。
4.權(quán)利要求3的密鑰管理裝置,其中,確定單元包括一個(gè)計(jì)數(shù)單元,可用來查閱在設(shè)備密鑰存儲(chǔ)單元中存儲(chǔ)的樹結(jié)構(gòu),并計(jì)算未分配有用戶裝置的葉子的個(gè)數(shù);一個(gè)比較單元,可用來比較所計(jì)算的葉子數(shù)與一個(gè)閥值,其中,如果所計(jì)算的葉子數(shù)等于或小于該閥值,則確定單元確定要向樹結(jié)構(gòu)添加新的葉子。
5.權(quán)利要求4的密鑰管理裝置,其中,設(shè)備密鑰生成單元進(jìn)一步生成新的設(shè)備密鑰,把新的設(shè)備密鑰與在從葉子到根存在的節(jié)點(diǎn)被從樹結(jié)構(gòu)刪除時(shí)所生成的子樹的所有根相關(guān)聯(lián),密鑰管理裝置進(jìn)一步包含一個(gè)加密介質(zhì)密鑰生成單元,可用來通過用由設(shè)備密鑰生成單元生成的所有設(shè)備密鑰在一對一的基礎(chǔ)上加密介質(zhì)密鑰而生成加密的介質(zhì)密鑰;一個(gè)加密介質(zhì)密鑰寫單元,可用來把所生成的加密介質(zhì)密鑰寫到一個(gè)記錄介質(zhì)上。
6.權(quán)利要求5的密鑰管理裝置,其中,比較單元事先存儲(chǔ)閥值,并比較所計(jì)算的葉子數(shù)與閥值。
7.權(quán)利要求5的密鑰管理裝置,其中,設(shè)備密鑰存儲(chǔ)單元存儲(chǔ)與樹結(jié)構(gòu)中具有的節(jié)點(diǎn)數(shù)量相同的節(jié)點(diǎn)信息片斷,各節(jié)點(diǎn)信息片斷按與樹結(jié)構(gòu)中的節(jié)點(diǎn)相同的方式互相鏈接,每個(gè)節(jié)點(diǎn)信息片斷包括用于標(biāo)識某個(gè)節(jié)點(diǎn)的節(jié)點(diǎn)ID信息、對應(yīng)于該節(jié)點(diǎn)的設(shè)備密鑰、以及用于標(biāo)識對應(yīng)于該節(jié)點(diǎn)的用戶裝置的用戶裝置ID信息,擴(kuò)展單元生成一個(gè)只含有標(biāo)識一個(gè)新葉子的節(jié)點(diǎn)ID信息的新的節(jié)點(diǎn)信息片斷,該新的節(jié)點(diǎn)信息片斷與一個(gè)含有標(biāo)識一個(gè)沒有被分配用戶裝置的葉子的節(jié)點(diǎn)ID信息的節(jié)點(diǎn)信息片斷鏈接,用戶裝置分配單元向該新的節(jié)點(diǎn)信息片斷添加用戶裝置ID信息,設(shè)備密鑰生成單元向該新的節(jié)點(diǎn)信息片斷添加一個(gè)設(shè)備密鑰。
8.權(quán)利要求5的密鑰管理裝置,其中,存儲(chǔ)在設(shè)備密鑰存儲(chǔ)單元中的樹結(jié)構(gòu)是一個(gè)n叉樹結(jié)構(gòu),其中n是個(gè)不小于2的整數(shù),擴(kuò)展單元生成從一個(gè)葉子擴(kuò)展的n個(gè)新葉子。
9.權(quán)利要求5的密鑰管理裝置,其中,存儲(chǔ)在設(shè)備密鑰存儲(chǔ)單元中的樹結(jié)構(gòu)是一個(gè)n叉樹結(jié)構(gòu),其中n是個(gè)不小于2的整數(shù),和擴(kuò)展單元生成從一個(gè)葉子擴(kuò)展的m個(gè)新葉子,其中m是一個(gè)滿足m>n的整數(shù)。
10.權(quán)利要求9的密鑰管理裝置,其中,擴(kuò)展單元生成從一個(gè)葉子擴(kuò)展的m個(gè)新葉子,其中m=n+1。
11.權(quán)利要求8的密鑰管理裝置,其中,擴(kuò)展單元生成從n個(gè)新葉子的每個(gè)擴(kuò)展的n個(gè)更新葉子,結(jié)果生成n2個(gè)葉子。
12.一種用戶裝置實(shí)現(xiàn),該用戶裝置或者用由一個(gè)有與從每個(gè)葉子到根包含存在的每個(gè)節(jié)點(diǎn)對應(yīng)的一個(gè)或多個(gè)設(shè)備密鑰的密鑰管理裝置分配的多個(gè)設(shè)備密鑰的其中之一加密一個(gè)內(nèi)容,并將該加密的內(nèi)容寫到記錄介質(zhì)上,或者從記錄介質(zhì)讀一個(gè)加密的內(nèi)容并用所分配設(shè)備密鑰的其中之一解密所讀的內(nèi)容,其中,密鑰管理裝置(a)根據(jù)沒有被分配用戶裝置的葉子的數(shù)量確定是否向樹結(jié)構(gòu)增加新的葉子,(b)如果確定要增加,就生成要從沒有被分配用戶裝置的葉子的其中之一擴(kuò)展的新的葉子,(c)將一個(gè)用戶裝置分配給新生成的葉子的其中之一,(d)生成新的設(shè)備密鑰,將新的設(shè)備密鑰與從該新生成的一個(gè)葉子到一個(gè)根包含的所有節(jié)點(diǎn)中尚無設(shè)備密鑰與之關(guān)聯(lián)的節(jié)點(diǎn)關(guān)聯(lián),(e)向用戶裝置分配與從該新生成的一個(gè)葉子到根包含存在的節(jié)點(diǎn)對應(yīng)的所有設(shè)備密鑰;用戶裝置包含一個(gè)介質(zhì)密鑰識別單元,可用來從被寫在記錄介質(zhì)上的多個(gè)加密的介質(zhì)密鑰中識別一個(gè)被用分配給該用戶裝置的設(shè)備密鑰的其中之一加密的介質(zhì)密鑰;一個(gè)介質(zhì)密鑰解密單元,可用來恢復(fù)一個(gè)介質(zhì)密鑰,具體是用加密該介質(zhì)密鑰時(shí)所用的設(shè)備密鑰解密所識別的加密的介質(zhì)密鑰;一個(gè)加密/解密單元,可用來或者用所生成的介質(zhì)密鑰加密一個(gè)內(nèi)容并將所加密的內(nèi)容寫到記錄介質(zhì)上,或者從記錄介質(zhì)讀取一個(gè)加密的內(nèi)容并用所生成的介質(zhì)密鑰解密所讀取的內(nèi)容。
13.一種記錄介質(zhì),該記錄介質(zhì)上記錄有通過以設(shè)備密鑰作為加密密鑰加密介質(zhì)密鑰而生成的加密的介質(zhì)密鑰,其中,設(shè)備密鑰由一個(gè)密鑰管理裝置生成,且密鑰管理裝置(a)根據(jù)沒有被分配用戶裝置的葉子的數(shù)量確定是否向樹結(jié)構(gòu)增加新的葉子,(b)如果確定要增加,就生成要從沒有被分配用戶裝置的葉子的其中之一擴(kuò)展的新的葉子,(c)將一個(gè)用戶裝置分配給新生成的葉子的其中之一,(d)生成新的設(shè)備密鑰,將新的設(shè)備密鑰與從該新生成的一個(gè)葉子到一個(gè)根包含的所有節(jié)點(diǎn)中尚無設(shè)備密鑰與之關(guān)聯(lián)的節(jié)點(diǎn)關(guān)聯(lián),(e)向用戶裝置分配與從該新生成的一個(gè)葉子到根包含存在的節(jié)點(diǎn)對應(yīng)的所有設(shè)備密鑰。
14.一種在用于生成設(shè)備密鑰、將設(shè)備密鑰與一個(gè)樹結(jié)構(gòu)中的節(jié)點(diǎn)相關(guān)聯(lián)并分配多個(gè)用戶裝置給設(shè)備密鑰的密鑰管理裝置中使用的密鑰管理方法,其中密鑰管理裝置存儲(chǔ)著該樹結(jié)構(gòu)和已經(jīng)被分配給與樹結(jié)構(gòu)中的一些葉子相關(guān)聯(lián)的用戶裝置的設(shè)備密鑰;該密鑰管理方法包含一個(gè)確定步驟,根據(jù)未分配有用戶裝置的葉子的數(shù)量確定是否向樹結(jié)構(gòu)增加新的葉子;一個(gè)擴(kuò)展步驟,如果確定單元確定要增加,則生成要從未分配有用戶裝置的葉子的其中之一擴(kuò)展的新的葉子;一個(gè)用戶裝置分配步驟,將一個(gè)用戶裝置分配給新生成的葉子的其中之一;一個(gè)設(shè)備密鑰生成步驟,生成新的設(shè)備密鑰,將新的設(shè)備密鑰與從該新生成的一個(gè)葉子到一個(gè)根包含的所有節(jié)點(diǎn)中尚無設(shè)備密鑰與之關(guān)聯(lián)的節(jié)點(diǎn)關(guān)聯(lián);一個(gè)設(shè)備密鑰分配步驟,向用戶裝置分配與從該新生成的一個(gè)葉子到根包含存在的所有節(jié)點(diǎn)對應(yīng)的設(shè)備密鑰。
15.一種在用于生成設(shè)備密鑰、將設(shè)備密鑰與一個(gè)樹結(jié)構(gòu)中的節(jié)點(diǎn)相關(guān)聯(lián)并分配多個(gè)用戶裝置給設(shè)備密鑰的密鑰管理裝置中使用的密鑰管理程序,其中密鑰管理裝置存儲(chǔ)著該樹結(jié)構(gòu)和已經(jīng)被分配給與樹結(jié)構(gòu)中的一些葉子相關(guān)聯(lián)的用戶裝置的設(shè)備密鑰;該密鑰管理程序包含一個(gè)確定步驟,根據(jù)未分配有用戶裝置的葉子的數(shù)量確定是否向樹結(jié)構(gòu)增加新的葉子;一個(gè)擴(kuò)展步驟,如果確定單元確定要增加,則生成要從未分配有用戶裝置的葉子的其中之一擴(kuò)展的新的葉子;一個(gè)用戶裝置分配步驟,將一個(gè)用戶裝置分配給新生成的葉子的其中之一;一個(gè)設(shè)備密鑰生成步驟,生成新的設(shè)備密鑰,將新的設(shè)備密鑰與從該新生成的一個(gè)葉子到一個(gè)根包含的所有節(jié)點(diǎn)中尚無設(shè)備密鑰與之關(guān)聯(lián)的節(jié)點(diǎn)關(guān)聯(lián);一個(gè)設(shè)備密鑰分配步驟,向用戶裝置分配與從該新生成的一個(gè)葉子到根包含存在的所有節(jié)點(diǎn)對應(yīng)的設(shè)備密鑰。
16.一種計(jì)算機(jī)可讀記錄介質(zhì),上面記錄著一個(gè)在用于生成設(shè)備密鑰、將設(shè)備密鑰與一個(gè)樹結(jié)構(gòu)中的節(jié)點(diǎn)相關(guān)聯(lián)并分配多個(gè)用戶裝置給設(shè)備密鑰的密鑰管理裝置中使用的密鑰管理程序,其中密鑰管理裝置存儲(chǔ)著該樹結(jié)構(gòu)和已經(jīng)被分配給與樹結(jié)構(gòu)中的一些葉子相關(guān)聯(lián)的用戶裝置的設(shè)備密鑰;該密鑰管理程序包含一個(gè)確定步驟,根據(jù)未分配有用戶裝置的葉子的數(shù)量確定是否向樹結(jié)構(gòu)增加新的葉子;一個(gè)擴(kuò)展步驟,如果確定單元確定要增加,則生成要從未分配有用戶裝置的葉子的其中之一擴(kuò)展的新的葉子;一個(gè)用戶裝置分配步驟,將一個(gè)用戶裝置分配給新生成的葉子的其中之一;一個(gè)設(shè)備密鑰生成步驟,生成新的設(shè)備密鑰,將新的設(shè)備密鑰與從該新生成的一個(gè)葉子到一個(gè)根包含的所有節(jié)點(diǎn)中尚無設(shè)備密鑰與之關(guān)聯(lián)的節(jié)點(diǎn)關(guān)聯(lián);一個(gè)設(shè)備密鑰分配步驟,向用戶裝置分配與從該新生成的一個(gè)葉子到根包含存在的所有節(jié)點(diǎn)對應(yīng)的設(shè)備密鑰。
全文摘要
一種數(shù)字作品保護(hù)系統(tǒng),其構(gòu)成是(a)用戶裝置,即用于記錄或再現(xiàn)諸如電影的數(shù)字內(nèi)容的記錄裝置和/或再現(xiàn)裝置,(b)記錄介質(zhì),和(c)利用樹結(jié)構(gòu)管理設(shè)備密鑰向用戶裝置的分配的密鑰管理裝置。密鑰管理裝置在樹結(jié)構(gòu)中總是保持一些沒有用戶裝置與之關(guān)聯(lián)的葉子,生成與這些葉子相連的并且屬于新一層的新葉子,并將新的用戶裝置分配給新生成的葉子。
文檔編號H04L9/08GK1620780SQ02826078
公開日2005年5月25日 申請日期2002年10月21日 優(yōu)先權(quán)日2001年10月26日
發(fā)明者中野稔久, 山道正美, 布田裕一, 橫田薰, 松崎棗, 館林誠 申請人:松下電器產(chǎn)業(yè)株式會(huì)社