CN1620780A - 密钥管理装置 - Google Patents
密钥管理装置 Download PDFInfo
- Publication number
- CN1620780A CN1620780A CNA028260783A CN02826078A CN1620780A CN 1620780 A CN1620780 A CN 1620780A CN A028260783 A CNA028260783 A CN A028260783A CN 02826078 A CN02826078 A CN 02826078A CN 1620780 A CN1620780 A CN 1620780A
- Authority
- CN
- China
- Prior art keywords
- device keys
- leaf
- user
- tree structure
- node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000007726 management method Methods 0.000 claims description 101
- 235000012364 Peperomia pellucida Nutrition 0.000 claims description 2
- 240000007711 Peperomia pellucida Species 0.000 claims description 2
- 230000002596 correlated effect Effects 0.000 abstract 1
- 238000000034 method Methods 0.000 description 32
- 230000008569 process Effects 0.000 description 17
- 238000003860 storage Methods 0.000 description 17
- 238000004590 computer program Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 9
- 239000000284 extract Substances 0.000 description 6
- 239000000463 material Substances 0.000 description 5
- 238000013478 data encryption standard Methods 0.000 description 4
- 230000001174 ascending effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000033228 biological regulation Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/0021—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/00137—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to contents recorded on or reproduced from a record carrier to authorised users
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/00188—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised devices recording or reproducing contents to/from a record carrier
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/0021—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
- G11B20/00217—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source
- G11B20/00246—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is obtained from a local device, e.g. device key initially stored by the player or by the recorder
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/0021—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
- G11B20/00217—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source
- G11B20/00253—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is stored on the record carrier
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/0021—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
- G11B20/00485—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier
- G11B20/00492—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted
- G11B20/00536—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted wherein encrypted content data is subjected to a further, iterated encryption, e.g. interwoven encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0822—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/083—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
- H04L9/0833—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
- H04L9/0836—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key using tree structure or hierarchical structure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
- H04L2209/605—Copy protection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Storage Device Security (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
一种数字作品保护系统,其构成是:(a)用户装置,即用于记录或再现诸如电影的数字内容的记录装置和/或再现装置,(b)记录介质,和(c)利用树结构管理设备密钥向用户装置的分配的密钥管理装置。密钥管理装置在树结构中总是保持一些没有用户装置与之关联的叶子,生成与这些叶子相连的并且属于新一层的新叶子,并将新的用户装置分配给新生成的叶子。
Description
发明领域
本发明涉及一种用于在记录介质上记录数字作品和从记录介质再现数字作品的技术,更具体来说,涉及一种为保护数字作品而管理用于内容加密/解密的密钥信息的技术。
发明背景
随着诸如数字处理、存储和通信等技术近年来的发展,通过销售或出租大容量记录介质而向用户提供诸如电影的内容服务已经变得普遍。此外,其中数字化内容被广播、被接收装置接收、在诸如可记录光盘的记录介质上被存储、然后被再现装置再现的系统,也正在普及。
在提供这样的服务或系统时,有必要保护内容的版权,并在版权持有人同意的限制下进行再现、复制等等,以便内容不被非法使用。
一般来说,以以下方式保护数字作品不受版权持有人没有同意的非法复制。记录装置用加密密钥加密数字内容,然后将加密的内容记录在盘上。只有具有与加密密钥对应的解密密钥的再现装置才能解密加密的内容。记录装置和再现装置等的制造商与版权持有人协力确定一个版权保护协议,制造商获得加密密钥或解密密钥(以下简称“密钥”),条件是制造商遵守协议。制造商必须严格管理所获得的密钥,使密钥不被泄露给第三方。
然而,即使制造商严格管理密钥,第三方也有可能非法获得密钥。一旦密钥被泄露给第三方,第三方就可能传播密钥,制造非法使用内容的记录和/或再现装置,或者编制非法使用内容的计算机程序并通过因特网散布该计算机程序,而不顾由制造商和版权持有人同意的协议。在这种情况下,版权持有人最好能在密钥已经被泄露后使已经提供的内容不能用所泄露的密钥使用。
以下是响应这种愿望的最简单的方法。
密钥管理组织(以下简称“组织”)有一个由多个设备密钥(设备密钥)和多个介质密钥(media key)组成的密钥集。组织将设备密钥之一和一个设备密钥标识号分别分配给多个记录装置和多个再现装置的每一个,然后提供每个记录装置和再现装置相应的设备密钥和设备密钥标识号。此外,组织还向记录介质分配介质密钥。然后,组织用分配给记录装置和再现装置的设备密钥每一个加密介质密钥,以生成加密的介质密钥,并将对应于所有设备密钥的加密的介质密钥的一个列表以及密钥标识号,作为密钥信息存储在记录介质上。
当记录介质被装入记录装置或再现装置时,装置从记录介质中的密钥信息中提取与分配给装置本身的密钥标识号对应的加密的介质密钥,并分配给装置本身的设备密钥解密所提取的加密的介质密钥,以生成介质密钥。然后,记录装置用所获得的介质密钥加密内容,把所得到的加密的内容记录在记录介质上。另一方面,再现装置用所获得的介质密钥以相同的方式解密加密的内容。
这样,如果记录设备或再现设备有一个合法分配的设备密钥,它就总能从记录介质获得相同的介质密钥,由此保持设备之间的相容性(compatibility)。
这里,假设某具体记录装置或再现装置的设备密钥已经被泄露。当在设备密钥已经被泄露后在一个新的记录介质上存储密钥信息时,组织创建不包括所泄露设备密钥的密钥信息,并所创建的密钥信息存储在该记录介质上。这样,知道所泄露设备密钥的非法装置就不能从该密钥信息中获得正确的介质密钥,因为在记录介质中存储的密钥信息中不包括用所泄露设备密钥加密的加密的介质密钥。结果,非法装置就不能非法使用内容。例如,如果非法装置是个记录装置,则用该记录装置记录的加密的内容就不是用正确的密钥加密的,因此该加密的内容就不能用合法的再现装置解密。此外,如果非法装置是个再现装置,该再现装置不能获得正确的介质密钥,因此就不能正确地解密已经被一个合法记录装置记录的加密的内容。这样,就能使一个被泄露的密钥失效。
然而,这个简单例子中的一个缺陷是,在有大量装置时,密钥信息的数据规模大得不合实际。例如,假设某特定类型的数字设备在全世界上变得流行起来,世界上存在数十亿的该特定设备。如果在生成上述的加密的内容时使用的加密算法是美国标准加密三重DES加密(triple DES encryption),则一个包括填充字(padding)的介质密钥的长度是16个字节。因此,加密介质密钥的长度也是16字节。此外,如果用一个4字节的值作为密钥标识号,择密钥信息的规模将是20字节*10亿(装置)=200亿字节=20G字节。鉴于目前的可记录盘的容量,这个大值是不合实际的。
在这种系统中,条件是记录介质上记录的密钥信息的大小与记录介质相比很小。
满足这个条件的系统的一个例子是一种使用树结构的数字作品保护密钥管理方法,该方法见于文件1”Digital Content Hogo-you KagiKanri Houshiki”(保护数字内容的密钥管理方法)(Nakano,Omori和Tatebayashi,Symposium on Cryptography and Information Security2001,SCIS2001,5A-5,2000年1月)。
在描述文件1中披露的方法之前,对一个树结构作简要说明。
就形式而言,该树结构是一个由至少一个节点组成的有限集合T,按定义符合以下条件:
(a)只有一个节点被指定为树结构的根。
(b)其它节点(不含根)被划分为没有m个(m≥0)公共部分的集合T1,...,Tm。每个Ti(i=1,...,m)都是一个高度比T小“1”的深一层的树结构。树结构T1,...,Tm是根的子树。此外,树结构T中的级(层)x数按以下方式定义。T的根是0级。以作为根T的子树的子树Tj为例,根Tj的级比T的大1。
以下说明文件1中披露的使用树结构的数字作品保护密钥管理方法。
在该密钥管理方法中,组织构造—例如—一个有4层的二叉树(binary tree)结构,并生成数量等于所构造的树结构中的节点数量的密钥。所生成的每个设备密钥都被分配给树结构中的一个节点。组织将每个播放器(以下用“播放器”指上述地再现装置)与树结构中的一个叶子对应,并将一个设备密钥集合分配给与叶子一一对应的每个播放器。该集合由被分配给从对应的叶子到根的路径上的节点的多个设备密钥组成。这样,不同的设备密钥集合被分配给每个播放器。
这里,如果一个已经被分配给一个播放器的设备密钥集合被泄露,组织删除所泄露设备密钥集合中包含的设备密钥被分配给的节点。然后,组织规定将设备密钥尚未被泄露的播放器中的大多数播放器的共同的密钥,作为下一次要使用的设备密钥。
文件1显示,按照该方法,如果要无效掉数以十亿计的播放器中的任意10,000个,大约3MB的密钥信息就足够用。
然而,尽管上述数字作品保护密钥管理方法满足记录介质上要记录的密钥信息的大小要远远小于记录介质的容量的条件,该方法却限制系统中装置的总数。这是因为,记录或再现装置是在树结构已经构造好后被分配给叶子的。因此,在树结构已经被构造并且系统投入使用后,就不可能向系统添加记录或再现装置。
发明内容
因此,本发明的一个目的是提供一种数字作品保护系统,该系统能无限制地包括记录装置和/或再现装置,允许新添加的记录装置和/或再现装置与已经存在的记录装置和/或再现装置、密钥管理装置、用户装置、密钥管理方法、密钥管理程序、以及存储密钥管理程序的记录介质相容。应当注意的是,这里的所谓相容的意思是,由新添加的记录装置记录在记录介质上的内容能被已经存在的再现装置再现,由已经存在的记录装置记录在记录介质上的内容能被新添加的再现装置再现。
以上目的由一个数字作品保护系统实现,该系统包括一个密钥管理装置和一个用户装置,密钥管理装置生成设备密钥,将设备密钥与一个树结构中的节点关联,并把用户装置分配给设备密钥,密钥管理装置包含:一个确定单元,可用来根据未分配有用户装置的叶子的数量确定是否向树结构增加新的叶子;一个扩展(extending)单元,可用来—如果确定单元确定要增加—生成要从未分配有用户装置的叶子的其中之一扩展的新的叶子;一个用户装置分配单元,可用来将一个用户装置分配给新生成的叶子的其中之一;一个设备密钥生成单元,可用来生成新的设备密钥,将新的设备密钥与从该新生成的一个叶子到一个根(含)的所有节点中尚无设备密钥与之关联的节点关联;一个设备密钥分配单元,可用来向用户装置分配与从该新生成的一个叶子到根(含)存在的所有节点对应的设备密钥,其中,用户设备或者用所分配的设备密钥的其中之一加密一个内容并把加密的内容写到一个记录介质上,或者从记录介质读取加密的内容并用所分配设备密钥的一个设备密钥解密所读取的内容。
由于上述构造,密钥管理装置生成一个要从一个树结构中存在的叶子扩展(extend)的新叶子,并把一个用户装置分配给对应于新生成的叶子的设备密钥。如果在系统进入服务后系统被请求有一个额外的用户装置,这就使系统能通过生成一个新叶子来包括一个额外的用户装置。
以上目的也由一个密钥管理装置实现,密钥管理装置用于生成设备密钥,将设备密钥与一个树结构中的节点相关联,并分配一个用户装置给设备密钥,包含:一个确定单元,可用来根据未分配有用户装置的叶子的数量确定是否向树结构增加新的叶子;一个扩展单元,可用来—如果确定单元确定要增加—生成要从未分配有用户装置的叶子的其中之一扩展的新的叶子;一个用户装置分配单元,可用来将一个用户装置分配给新生成的叶子的其中之一;一个设备密钥生成单元,可用来生成新的设备密钥,将新的设备密钥与从该新生成的一个叶子到一个根(含)的所有节点中尚无设备密钥与之关联的节点关联;一个设备密钥分配单元,可用来向用户装置分配与从该新生成的一个叶子到根(含)存在的所有节点对应的设备密钥。
由于上述构造,密钥管理装置生成一个从一个树结构中存在的叶子扩展的新叶子,把一个用户装置与新生成的叶子相关联,并分配给该用户装置对应于从新生成的叶子到根(含)存在的节点的所有设备密钥。如果系统被请求有一个额外的用户装置,这就使系统能通过生成一个新叶子并将一个用户装置与该新叶子相关联来包括一个额外的用户装置。并且,被分配给该用户装置的设备密钥集合对该用户装置是独有的,因为该设备密钥集合由对应于从新生成的叶子到根(含)存在的节点的所有设备密钥组成。由此,可使用户装置失效。
以上目的也由一个密钥管理装置实现,密钥管理装置用于生成设备密钥,将设备密钥与一个树结构中的节点相关联,并分配多个用户装置给设备密钥,包含:一个设备密钥存储单元,可用来事先存储该树结构和已经被分配给与树结构中的一些叶子相关联的用户装置的设备密钥;一个确定单元,可用来根据未分配有用户装置的叶子的数量确定是否向树结构增加新的叶子;一个扩展单元,可用来—如果确定单元确定要增加—生成要从未分配有用户装置的叶子的其中之一扩展的新的叶子;一个用户装置分配单元,可用来将一个用户装置分配给新生成的叶子的其中之一;一个设备密钥生成单元,可用来生成新的设备密钥,将新的设备密钥与从该新生成的一个叶子到一个根(含)的所有节点中尚无设备密钥与之关联的节点关联;一个设备密钥分配单元,可用来向用户装置分配与从该新生成的一个叶子到根(含)存在的所有节点对应的设备密钥。
由于上述构造,密钥管理装置在一个树结构中总是有一个或多个没有用户装置尚未与之关联的叶子。这就使系统能通过生成一个新叶子并将一个用户装置与该新叶子相关联来包括一个额外的用户装置。原则上,系统能通过将额外的用户装置与新生成的叶子像关联而无限地有额外的用户装置。并且,被分配给用户装置的设备密钥集合对该用户装置是独有的,因为该设备密钥集合由对应于从新生成的叶子到根(含)存在的节点的所有设备密钥组成。相应地,用户装置能被撤销(revoked)。
在上述密钥管理装置中,确定单元可包括:一个计数单元,可用来查阅在设备密钥存储单元中存储的树结构,并计算未分配有用户装置的叶子的个数;一个比较单元,可用来比较所计算的叶子数与一个阀值,其中,如果所计算的叶子数等于或小于该阀值,则确定单元确定要向树结构添加新的叶子。
由于上述构造,由于该装置计算未分配有用户装置的叶子的个数并比较所计算的叶子数与一个阀值,密钥管理装置在一个树结构中总是有一个或多个没有用户装置尚未与之关联的叶子。这就使系统必要时能生成一个从一个存在的叶子扩展的新叶子。
在上述密钥管理装置中,设备密钥生成单元可进一步生成新的设备密钥,把新的设备密钥与在从叶子到根存在的节点被从树结构删除时所生成的子树的所有根相关联,密钥管理装置进一步包含:一个加密介质密钥生成单元,可用来通过用由设备密钥生成单元生成的所有设备密钥在一对一的基础上加密介质密钥而生成加密的介质密钥;一个加密介质密钥写单元,可用来把所生成的加密介质密钥写到一个记录介质上。
由于上述构造,如果与一个叶子相关联的用户装置被撤销,密钥管理装置能通过用对应于一个子树的根的设备密钥加密一个介质密钥而生成一个加密介质密钥,并把所生成的加密介质密钥写到一个记录介质上。这就使一个与一个在上述用户装置被撤销后新生成的叶子相关联的新用户装置,能与已经被分配了设备密钥的其它用户装置相容(compatible)。
在上述密钥管理装置中,比较单元可以事先存储阀值,并比较所计算的叶子数与阀值。
由于上述构造,由于该装置事先持有阀值,不必在每次执行确定过程时都设定阀值,密钥管理装置就能更容易地确定是否向树结构添加新叶子。
在上述密钥管理装置中,设备密钥存储单元可存储与树结构中具有的节点数量相同的节点信息片断(pieces of node information),各节点信息片断按与树结构中的节点相同的方式互相链接,每个节点信息片断包括用于标识某个节点的节点ID信息、对应于该节点的设备密钥、以及用于标识对应于该节点的用户装置的用户装置ID信息;扩展单元生成一个只含有标识一个新叶子的节点ID信息的新的节点信息片断,该新的节点信息片断与一个含有标识一个没有被分配用户装置的叶子的节点ID信息的节点信息片断链接;用户装置分配单元向该新的节点信息片断添加用户装置ID信息;设备密钥生成单元向该新的节点信息片断添加一个设备密钥。
由于上述构造,密钥管理装置就能像对一个树结构中的一个节点那样地处理每个节点信息片断,这是因为它存储与树结构中具有的节点数量相同的节点信息片断,且各节点信息片断按与树结构中的节点相同的方式互相链接。
在上述密钥管理装置中,存储在设备密钥存储单元中的树结构可以是一个n叉树结构,其中n是个不小于2的整数,扩展单元生成从一个叶子扩展的n个新叶子。
由于上述构造,密钥管理装置能更容易地扩展树结构,因为它使用一个n叉树结构。
在上述密钥管理装置中,存储在设备密钥存储单元中的树结构可以是一个n叉树结构,其中n是个不小于2的整数,扩展单元生成从一个叶子扩展的m个新叶子,其中m是一个满足m>n的整数。
由于上述构造,密钥管理装置就能向设备密钥分配大量的用户装置,因为密钥管理装置生成从一个n叉树结构中的一个叶子扩展的m个(m>n)新叶子。
在上述密钥管理装置中,扩展单元可以生成从一个叶子扩展的m个新叶子,其中m=n+1。
由于上述构造,密钥管理装置就能向设备密钥分配大量的用户装置并能容易地扩展树结构,因为它生成从一个叶子扩展的n+1个新叶子。
在上述密钥管理装置中,扩展单元可以生成从n个新叶子的每个扩展的n个更新叶子,结果生成n2个叶子。
由于上述构造,密钥管理装置就能向设备密钥分配大量的用户装置,因为树结构每次扩展就被扩展两层;并且能更容易地扩展树结构,因为就基本结构而言,它并不改变n叉树结构。
以上目的也能由一个用户装置实现,该用户装置或者用由一个有与从每个叶子到根(含)存在的每个节点对应的一个或多个设备密钥的密钥管理装置分配的多个设备密钥的其中之一加密一个内容,并将该加密的内容写到记录介质上,或者从记录介质读一个加密的内容并用所分配设备密钥的其中之一解密所读的内容,其中,密钥管理装置(a)根据没有被分配用户装置的叶子的数量确定是否向树结构增加新的叶子,(b)如果确定要增加,就生成要从没有被分配用户装置的叶子的其中之一扩展的新的叶子,(c)将一个用户装置分配给新生成的叶子的其中之一,(d)生成新的设备密钥,将新的设备密钥与从该新生成的一个叶子到一个根(含)的所有节点中尚无设备密钥与之关联的节点关联,(e)向用户装置分配与从该新生成的一个叶子到根(含)存在的节点对应的所有设备密钥;用户装置包含:一个介质密钥识别单元,可用来从被写在记录介质上的多个加密的介质密钥中识别一个被用分配给该用户装置的设备密钥的其中之一加密的介质密钥;一个介质密钥解密单元,可用来恢复一个介质密钥,具体是用加密该介质密钥时所用的设备密钥解密所识别的加密的介质密钥,以及一个加密/解密单元,或者可用来用所生成的介质密钥加密一个内容并将所加密的内容写到记录介质上,或者可用来从记录介质读取一个加密的内容并用所生成的介质密钥解密所读取的内容。
由于上述构造,一个用户装置通过扩展一个树结构与一个由密钥管理装置生成的一个新叶子相关联。并且,被分配给该用户装置的设备密钥集合对用户设备是独有的,因为该设备密钥集合由对应于从新生成的叶子到根(含)存在的节点的所有设备密钥组成。相应地,该用户装置能被撤销。
以上目的也能由一个记录介质,该记录介质上记录有:通过以设备密钥作为加密密钥加密介质密钥而生成的加密的介质密钥,其中,设备密钥由一个密钥管理装置生成,该密钥管理装置(a)根据没有被分配用户装置的叶子的数量确定是否向树结构增加新的叶子,(b)如果确定要增加,就生成要从没有被分配用户装置的叶子的其中之一扩展的新的叶子,(c)将一个用户装置分配给新生成的叶子的其中之一,(d)生成新的设备密钥,将新的设备密钥与从该新生成的一个叶子到一个根(含)的所有节点中尚无设备密钥与之关联的节点关联,(e)向用户装置分配与从该新生成的一个叶子到根(含)存在的节点对应的所有设备密钥。
由于上述构造,被密钥管理装置分配设备密钥到其上的用户装置能通过解密一个被记录在记录介质上的加密的介质密钥来恢复一个介质密钥。用户装置用一个设备密钥获得该介质密钥,用所获得的介质密钥加密一个内容,并将所加密的内容记录到记录介质上。或者,用户装置用一个设备密钥获得该介质密钥,用所获得的介质密钥解密一个被记录在记录介质上的加密的内容。
附图简介
图1表示数字作品保护系统10的构造;
图2表示密钥管理装置100的构造的框图;
图3是树结构T100的概念性示意图;
图4表示树结构表D100的数据结构;
图5是树结构T200的概念性示意图;
图6表示树结构表D200的数据结构;
图7是树结构T300的概念性示意图;
图8表示树结构表D300的数据结构;
图9是树结构T400的概念性示意图;
图10是树结构T500的概念性示意图;
图11表示树结构表D500的数据结构;
图12是树结构T600的概念性示意图;
图13表示树结构表D600的数据结构;
图14是树结构T700的概念性示意图;
图15是树结构T800的概念性示意图;
图16表示树结构表D800的数据结构;
图17表示由密钥管理装置100生成的密钥信息的例子;
图18是表示数字作品保护系统10的总体操作的流程图;
图19是表示密钥管理装置100在构造和存储第1代树结构的过程中的操作的流程图;
图20是表示密钥管理装置100在第n代树结构的一个过程中的操作的流程图;
图21是表示记录介质和用户装置在第n代树结构的一个过程中的操作的流程图;
图22是表示密钥管理装置100在向用户装置输出设备密钥和ID信息的过程中的操作的流程图;
图23表示一个其中用户装置已经被撤销的树结构T900;
图24A表示在用户装置1在树结构T900中被撤销之前存储在记录介质1100上的一个加密的介质密钥;
图24B表示在用户装置1在树结构T900中被撤销之后存储在记录介质1200上的一个加密的介质密钥;
最优实施方式
以下参照附图说明作为本发明实施例的数字作品保护系统10。
1.数字作品保护系统10的结构
如图1所示,数字作品保护系统10由密钥管理装置100、密钥信息记录装置200、记录装置300a、300b、300c...(以下称作“记录装置300a等”)和再现装置400a、400b、400c...(以下称作“再现装置400a等”)组成。
密钥管理装置100有由密钥信息记录装置200预先记录在一个记录介质500a上的密钥信息,作为结果,有一个事先生成的在上面已经记录了密钥信息的记录介质500b。注意记录介质500a是一个上面尚未记录由信息的可记录介质,DVD-RAM(数字通用盘式随机存储器)。此外,密钥管理装置100将用于解密密钥信息的设备密钥分别分配给每个记录装置300a等和每个再现装置400a等,并把所分配的设备密钥、标识设备密钥的设备密钥标识信息、以及标识特定记录装置或再现装置的ID信息,事先分发到记录装置300a等和再现装置400a等的每一个。
记录装置300a加密数字内容,以生成加密的内容,然后将所生成的加密的内容记录在记录介质500b上,结果导致一个记录介质500c的生成。再现装置400a从记录介质500c读取该加密的内容,并解密所读取的解密的内容,已获得原始内容。记录装置300b等以与记录装置300a相同的方式操作,记录装置400b等以与记录装置400a相同的方式操作。
注意以下用″用户装置″来指记录装置300b等和再现装置400b等。
1.1密钥管理装置100
如图2中所示的密钥管理装置100,由树结构构造单元101、树结构存储单元102、设备密钥分配单元103、树结构扩展单元104、以及密钥信息生成单元105组成。
特别地,密钥管理装置100是一个包括微处理器、ROM(只读存储器)、RAM(随机存取存储器)、硬盘单元、显示单元、键盘和鼠标器的计算机系统。计算机程序被存储在RAM或硬盘单元中。密钥管理装置100通过按照计算机程序操作的微处理器实现其功能。
(1)树结构构造单元101
树结构构造单元101构造一个对应于二叉树的数据结构,用于管理设备密钥,并将所构造的数据结构存储在树结构存储单元102中。这里,由树结构构造单元101构造的数据结构是在数字作品保护系统10中一个扩展之前的初始树结构。系统能从初始状态开始扩展树结构。初始树结构被称作第1代树结构。
图4具体表示由树结构构造单元101构造的数据结构。图4中所示的树结构表D100对应于图3中所示的树结构T100
树结构T100
如图3中所示的树结构T100是一个由0-3四个层组成的二叉树。树结构T100中的每个节点(不含叶子)都分别通过两个路径连接到两个较低的节点。层0有一个是根的节点。层1有两个节点。层2有4个节点。层3有8个节点。这里要注意到,在树结构中,较低端是叶子端,较高端是根端。
在树结构T100中,对于连接一个节点(不含叶子)与两个较低节点的每对路径,将数字″0″分配给左手侧的路径,将数字″1″分配给右手侧的路径。以下将图3中所示的树结构T100的节点的左手侧上的路径称作“左路径”,将节点的右手侧上的路径称作“右路径”。
每个节点都被分配一个节点名。根节点的节点名是“根”。属于比层0低的层的每个节点都被分配一个节点名,构成节点名的字符的数目等于该节点所属的层的层名(layer name)中包含的字符数目。各节点名是通过按层号(layer number)的升序排列被分配给连接各节点与根的路径的号而生成的。例如,属于层1的两个节点分别有节点名″0″和″1″;属于层2的4个节点分别有节点名″00″、″01″、″10″和″11″;属于层3的8个节点分别有节点名″000″、″001″、″010″、″011″、...″101″、″110″和″111″。
树结构表D100
树结构构造单元101事先有一个其中尚未写数据的树结构表。树结构构造单元101向树结构表写入数据,以生成图4中所示的树结构表D100。
树结构表D100含有与树结构T100中的节点数相同数目的节点信息片断,每个节点信息片断对应于树结构T100中的一个不同节点。
每个节点信息片断包括一个节点名、一个用户装置名和一个设备密钥。节点名标识一个对应于该节点信息片断的节点。用户装置名标识一个对应于该对应节点的用户装置。设备密钥是被分配给该对应节点的设备密钥。
树结构构造单元101通过如下地将节点信息写入以前保存的树结构表而生成树结构表D100。
树结构构造单元101按照层号的升序写与树结构T100中的各层中的节点对应的节点信息。更具体来说,树结构构造单元101先写一个对应于属于层0的节点的节点信息片断,然后写对应于层1中的两个节点的两个节点信息片断,然后写对应于层2中的4个节点的4个节点信息片断,然后写对应于层3中的8个节点的8个节点信息片断。
对于每一层,按照节点名中含有的数的升序,写对应于属于该层的节点的节点信息片断。特别地,将各节点信息片断按下列顺序存储在图4中所示的树结构表D100中:
″根″、″0″、″1″、″00″、″01″、″10″、″11″、″000″、″001″、″010″、″011″、...、″101″、″110″、″111″。
这里,各节点信息片断被存储的顺序由包括在每个节点信息片断中的节点名表示。
树结构构造单元101先生成一个以“根”作为节点名的节点信息片断,并将所生成的节点信息片断写到树结构表。
然后,树结构构造单元101生成标识层1中的两个节点的节点名″0″和″1″,生成分别包括所生成的节点名″0″和″1″的片断信息,并按所述顺序将所生成的两个节点信息片断写到树结构表。
然后,树结构构造单元101标识层2中的4个节点的4个节点名″00″、″01″、″10″和″11″,生成分别包括″00″、″01″、″10″和″11″的节点信息片断,并按所述顺序将所生成的节点信息片断添加到树结构表。
然后,树结构构造单元101按上述的相同方式,按所述顺序生成层3的8个节点信息片断,并将所生成的节点信息写到树结构表。
这里要注意的是,在节点信息中含有的节点名、用户装置名和设备密钥中,被树结构构造单元101生成的数据只有节点名。用户装置名和设备密钥是分别由设备密钥分配单元103和树结构扩展单元104生成并写到树结构表D100中的(后面会详细描述)。
(2)树结构存储单元102
树结构存储单元102是由一个硬盘中能在其中存储一个树结构表的某个区域实现的。
树结构存储单元102存储从树结构构造单元101输出的树结构表D100、或者从设备密钥分配单元103或树结构扩展单元104输出的树结构表。
(3)设备密钥分配单元103
设备密钥分配单元103事先有一个阀值。
设备密钥分配单元103读取树结构存储单元102中的树结构表,将阀值与在树结构表中含有的、其对应的用户装置名没有被指出的叶子的数比较,以判断该叶子数是否大于该阀值,如果判断结果是肯定的,就从这些叶子中选择一个叶子,并将一个用户装置与所选择的叶子对应。设备密钥分配单元103然后生成设备密钥并将所生成的设备密钥分配给与所选择的叶子相关地(in relation to)被选择的某些节点,并将所分配的设备密钥传送到与所选择的叶子相应的用户装置。如果对应的用户装置名没有被指出的包含在读取的树结构表中的叶子的数不大于该阀值,设备密钥分配单元103把所读取的树结构表输出到树结构扩展单元104。
现在将给出详细说明,假设设备密钥分配单元103中保存的阀值是4。
第1代树结构
本节中将说明设备密钥分配单元103如何处理第1代树结构。
设备密钥分配单元103从树结构存储单元102读取树结构表D100,并从中抽取8个节点信息片断。设备密钥分配单元103计算对应的用户装置名没有被指出的叶子的数。结果发现是″8″。设备密钥分配单 103然后比较该数与阀值″4″,认为该数大于阀值。
设备密钥分配单元103从这8个叶子中选择一个叶子。这里假设选择一个对应于节点名″000″的叶子。设备密钥分配单元103然后将″1″作为用户装置名写入具有的节点名″000″节点信息片断。设备密钥分配单元103然后用随机数生成多个设备密钥。设备密钥分配单元103将所生成的设备密钥分配给在从叶子”000”到根(含)中存在的所有节点,以及在这些节点被删除时所生成的所有子树的根。设备密钥分配单元103将设备密钥写入树结构表中的与对应于所分配的节点和子树根节点的节点信息片断中。
设备密钥分配单元103将更新过的树结构表写入树结构存储单元102,代替以前存储的树结构表。
图5表示作为上述操作的结果而生成的一个树结构T200。
如图5中所示,树结构T200中最左边的叶子对应于用户装置1。图6表示一个对应于树结构T200并且当前被存储在树结构存储单元102中的树结构表D200。如图5和6中所示,在所生成的树结构中,根对应于设备密钥″KeyA″、节点″0″对应于″KeyB″,节点″1″对应于″KeyC″,节点″00″对应于″KeyD″,节点″01″对应于″KeyE″,节点″0″对应于″KeyB″,叶子″000″对应于″IK1″、叶子″001″对应于″IK2″。
设备密钥分配单元103从树结构存储单元102读取树结构表D200,按以下方式将ID信息、设备密钥、以及对应的设备密钥ID信息传送到用户装置1。
设备密钥分配单元103从所读取的树结构表D200获得一个含有用户装置″1″的节点信息片断,并从所检测的节点信息片断中抽取节点名和设备密钥。在这个例子中,所抽取的节点名和设备密钥分别是″000″和″IK1″。
设备密钥分配单元103然后从树结构表D200获得一个含有节点名″根″的节点信息片断,并从所检测的节点信息片断中抽取设备密钥。在这个例子中,所抽取的设备密钥是″KeyA″。
设备密钥分配单元103然后从树结构表D200获得一个含有与上面所检测的节点名”000”的第一位相等的节点名″0″的节点信息片断,并从所检测的节点信息片断中抽取设备密钥。在这个例子中,所抽取的设备密钥是″KeyB″。
设备密钥分配单元103然后从树结构表D200获得一个含有与上面所检测的节点名”000”的前两位相等的节点名″00″的节点信息片断,并从所检测的节点信息片断中抽取设备密钥。在这个例子中,所抽取的设备密钥是″KeyD″。
设备密钥分配单元103然后将所检测的节点名″000″作为ID信息传送到用户装置1,把数字″1″、″2″、″3″和″4″作为设备密钥ID信息分别分配给所抽取的四个设备密钥″KeyA″、″KeyB″、″KeyD″和″IK1″,并把这四个设备密钥和四个设备密钥ID信息片断按规定的顺序传送到用户装置1。
设备密钥分配单元103然后通过更新在树结构存储单元102中存储的树结构表D200而生成另一个树结构表,并把新生成的树结构表存储到树结构存储单元102中。
设备密钥分配单元103然后根据新存储的树结构表,将ID信息、四个设备密钥和四个设备密钥ID信息传送到用户装置2。
类似地,设备密钥分配单元103将ID信息、四个设备密钥和四个设备密钥ID信息传送到用户装置3。进一步以类似的方式,设备密钥分配单元103将ID信息、四个设备密钥和四个设备密钥ID信息传送到用户装置4。
图7表示一个作为上述过程的结果而生成的树结构T300。图8具体地表示一个对应于树结构T300并被存储在树结构存储单元102中的树结构表D300。如图7和8中所示,设备密钥分配单元103已经将ID信息″001″、设备密钥″KeyA″、″KeyB″、″KeyD″和″IK2″、以及对应的设备密钥ID信息传送到用户装置2,已经将ID信息″010″、设备密钥″KeyA″、″KeyB″、″KeyE″和″IK3″、以及对应的设备密钥ID信息传送到用户装置3,并已经将ID信息″011″、设备密钥″KeyA″、″KeyB″、″KeyE″和″IK4″、以及对应的设备密钥ID信息片断传送到用户装置4。
设备密钥分配单元103然后开始对用户装置5重复相同的过程。设备密钥分配单元103从树结构存储单元102读取树结构表D300,计算没有指明对应的用户装置名的叶子的数目。发现该结果是“4”。该值不大于阀值。发生这个情况时,设备密钥分配单元103把树结构表D300恢复到树结构存储单元102,并向树结构扩展单元104输出一个信号,该信号含有一条扩展一个对应于在树结构存储单元102中存储的树结构表的树结构的指令。
第2代树结构
本节中,将说明设备密钥分配单元103如何处理第2代树结构。应当注意的是,这里,第2代树结构是通过扩展第1代树结构—使得有层0至层4共5层—而生成的。
设备密钥分配单元103从树结构存储单元102中读取树结构表D400,其中树结构表D400未予示出,但是代表对应于图9中所示的树结构T400的数据结构。设备密钥分配单元103然后从表中抽取对应8个叶子的8个节点信息片断。设备密钥分配单元103计算没有指明对应的用户装置名的叶子的数目。发现该结果是“8”。设备密钥分配单元103然后将该数与阀值″4″比较,认为它大于阀值。
设备密钥分配单元103从8个叶子中选择一个叶子。假设这里选择一个对应于节点名″1000″的叶子。设备密钥分配单元103然后将″5″作为用户装置名写入具有节点名″1000″的节点信息片断。设备密钥分配单元103然后用随机数生成多个设备密钥。设备密钥分配单元103将所生成的所有设备密钥分配给从叶子″1000″至根(含)中存在的所有节点,以及在这些节点被删除时所生成的所有子树的根。设备密钥分配单元103在对应于所分配的节点和子树根的树结构表中的节点信息片断中写设备密钥。
设备密钥分配单元103将更新的树结构表存储到树结构存储单元102中,代替以前存储的树结构表。
图10表示一个作为上述操作的结果而生成的树结构T500。图11表示一个对应于树结构T500并且当前被存储在树结构存储单元102中的树结构表D500。如图10和11中所示,所生成的树结构含有新建立的对应关系:节点”10”对应于设备密钥″KeyF″,节点”11”对应于″KeyG″,节点”100”对应于″KeyH″,节点”101”对应于″KeyI″,叶子”1000”对应于″IK5″,叶子”1001”对应于″IK6″。
设备密钥分配单元103从树结构存储单元102读取树结构表D500,按以下方式将ID信息、设备密钥、以及对应的设备密钥ID信息传送到用户装置5。
设备密钥分配单元103从所读取的树结构表D500获得一个含有用户装置″5″的节点信息片断,并从所检测的节点信息片断中抽取节点名和设备密钥。在这个例子中,所抽取的节点名和设备密钥分别是″1000″和″IK5″。
设备密钥分配单103然后从树结构表D500获得一个含有节点名″根″的节点信息片断,并从所检测的节点信息片断中抽取设备密钥。在这个例子中,所抽取的设备密钥是″KeyA″。
设备密钥分配单元103然后从树结构表D500获得一个含有与上面所检测的节点名”1000”的第一位相等的节点名″1″的节点信息片断,并从所检测的节点信息片断中抽取设备密钥。在这个例子中,所抽取的设备密钥是″KeyC″。
设备密钥分配单元103然后从树结构表D500获得一个含有与上面所检测的节点名”1000”的前两位相等的节点名″10″的节点信息片断,并从所检测的节点信息片断中抽取设备密钥。在这个例子中,所抽取的设备密钥是″KeyF″。
设备密钥分配单元103然后从树结构表D500获得一个含有与上面所检测的节点名”1000”的前三位相等的节点名″100″的节点信息片断,并从所检测的节点信息片断中抽取设备密钥。在这个例子中,所抽取的设备密钥是″KeyH″。
设备密钥分配单元103然后将所检测的节点名″1000″作为ID信息传送到用户装置1,把数字″1″、″2″、″3″、”4”和″5″作为设备密钥ID信息分别分配给所抽取的四个设备密钥″KeyA″、″KeyC″、″KeyF″、”KeyH”和″IK5″,并把这五个设备密钥和五个设备密钥ID信息片断按规定的顺序传送到用户装置5。
设备密钥分配单元103然后通过更新在树结构存储单元102中存储的树结构表D500而生成另一个树结构表,并把新生成的树结构表存储到树结构存储单元102中。
设备密钥分配单元103然后根据新存储的树结构表,将ID信息、五个设备密钥和五个设备密钥ID信息传送到用户装置6。
类似地,设备密钥分配单元103将ID信息、五个设备密钥和五个设备密钥ID信息传送到用户装置7。进一步以类似的方式,设备密钥分配单元103将ID信息、五个设备密钥和五个设备密钥ID信息传送到用户装置8。
图12表示一个作为上述过程的结果而生成的树结构T600。如图12中所示,属于第3层的全部4个叶子都被分配给用户装置;在属于第4层的8个叶子中,4个叶子被分配给用户装置,但是另外4个叶子没有被分配给用户装置。图13表示一个对应于树结构T600并且当前被存储在树结构存储单元102中的树结构表D600。如图12和13中所示,设备密钥分配单元103已经将ID信息″1001″、设备密钥″KeyA″、″KeyC″、″KeyF″、″KeyH″和”IK6”传送到用户装置6,已经将ID信息″1010″、设备密钥″KeyA″、″KeyC″、″KeyF″、”KeyI”和″IK7″传送到用户装置7,并已经将ID信息″1011″、″KeyA″、″KeyC″、″KeyF″、”KeyI”和″IK8″、传送到用户装置8。
设备密钥分配单元103然后开始对用户装置9重复相同的过程。设备密钥分配单元103从树结构存储单元102读取树结构表D600,计算没有指明对应的用户装置名的叶子的数目。发现该结果是“4”。该值不大于阀值。发生这个情况时,设备密钥分配单元103把树结构表D600恢复到树结构存储单元102,并向树结构扩展单元104输出一个信号,该信号含有一条扩展一个对应于在树结构存储单元102中存储的树结构表的树结构的指令。
第3代树结构
本节中,将说明设备密钥分配单元103如何处理第3代树结构。应当注意的是,这里,第3代树结构是通过扩展第2代树结构—使得有层0至层5共6层—而生成的。
设备密钥分配单元103分配一个用户装置9给属于图14中所示的树结构T700中的第5层的一个叶子。设备密钥分配单元103进一步将某些节点与设备密钥关联。然后,在一个与对应于第2代树结构的类似的过程之后,生成图15中所示的一个树结构T800。
如图15中所示,在树结构T800中,属于第3层的全部4个叶子和属于第4层的全部4个叶子都被分配给用户装置;在属于第5层的8个叶子中,4个叶子被分配给用户装置,但是另外4个叶子没有被分配给用户装置。图16表示一个对应于树结构T800并且当前被存储在树结构存储单元102中的树结构表D800。如图15和16中所示,设备密钥分配单元103已经将ID信息″11000″、设备密钥″KeyA″、″KeyC″、″KeyG″、″KeyJ″、″KeyL″和”IK9”以及对应的设备密钥ID信息传送到用户装置9,已经将ID信息″11001″,设备密钥″KeyA″、″KeyC″、″KeyG″、″KeyJ″、″KeyL″和”IK10”以及对应的设备密钥ID信息传送到用户装置10,已经将ID信息″11010″,设备密钥″KeyA″、″KeyC″、″KeyG″、″KeyJ″、″KeyM″和”IK11”以及对应的设备密钥ID信息传送到用户装置11,已经将ID信息″11011″,设备密钥″KeyA″、″KeyC″、″KeyG″、″KeyJ″、″KeyM″和”IK12”以及对应的设备密钥ID信息传送到用户装置12。
设备密钥分配单元103然后开始对用户装置13重复相同的过程。设备密钥分配单元103从树结构存储单元102读取树结构表D800,计算没有指明对应的用户装置名的叶子的数目。发现该结果是“4”。该值不大于阀值。发生这个情况时,设备密钥分配单元103把树结构表D800恢复到树结构存储单元102,并向树结构扩展单元104输出一个信号,该信号含有一条扩展一个对应于在树结构存储单元102.中存储的树结构表的树结构的指令。
(4)树结构扩展单元104
树结构扩展单元104在从设备密钥分配单元103接收到一个含有一条要扩展一个树结构的指令的信号后,从树结构存储单元102读取数结构表,通过更新树结构表,将对应于所读取的树结构表的树结构扩展一代,并将所更新的树结构表存储到树结构存储单元102中。以下是这个过程的详细说明。
例如,树结构扩展单元104从树结构存储单元102中读取分别在图8、13和16中表示的树结构表D300、D600和D800。这些表对应于分别在图7、11和15中表示的树结构T300、T600和T800。如对应的树结构表明的那样,树结构表D300、D600和D800每个都有4个尚未被分配用户装置的叶子。
当树结构扩展单元104从树结构存储单元102中读取树结构表D300时,通过生成从属于第3层并且没有被分配用户装置的每个叶子扩展的两个节点而生成属于第4层的8个叶子。更具体来说,树结构扩展单元104生成分别含有节点″1000″、″1001″、″1010″、″1011″、″1100″、″1101″、″1110″和″1111″的8个节点信息片断,将所生成的8个节点信息片断添加到树结构表D300中,并将新的树结构表存储到树结构存储单102中。该新的树结构表就是图9中所示的树结构表D400。
当树结构扩展单元104从树结构存储单元102中读取树结构表D600时,通过生成从属于第4层并且没有被分配用户装置的每个叶子扩展的两个节点而生成属于第5层的8个叶子。更具体来说,树结构扩展单元104生成分别含有节点名″11000″、″11001″、″11010″、″11011″、″11100″、″11101″、″11110″和″11111″的8个节点信息片断,将所生成的8个节点信息片断添加到树结构表D600中,并将新的树结构表存储到树结构存储单元102中。对应于该新的树结构表的新的树结构就是图14中所示的树结构T7400。
类似地,当树结构扩展单元104从树结构存储单元102中读取树结构表D800时,通过生成从属于第5层并且没有被分配用户装置的每个叶子扩展的两个节点而生成属于第6层的8个叶子。更具体来说,树结构扩展单元104生成8个节点信息片断,将所生成的节点信息片断添加到树结构表D800中,并将新的树结构表存储到树结构存储单元102中。
应当注意的是,第4代树结构以及对应的树结构表没有在图中表示。
(5)密钥信息生成单元105
密钥信息生成密钥信息并将所生成的信息写到一个记录介质500a上。每个密钥信息片断包括一对或多对ID信息与加密的介质密钥。
图17表示由密钥信息生成单105生成的密钥信息的一个例子。在这个例子中,密钥信息210包括三对(a)设备密钥ID信息和(b)加密的介质密钥。
在这个例子中,每个加密的介质密钥都以E(″设备密钥″,″介质密钥″)的格式表示。这里,″E(A,B)″表示数据B是被一个加密算法E运用一个密钥A加密的。加密算法E例如是DES(数据加密标准DataEncryption Standard)
设备密钥ID信息被用来标识一个设备密钥,该设备密钥被用来生成一个对应的加密的介质密钥。树结构中的要被分配目标设备密钥的节点的节点名,被写入设备密钥ID信息中。
1.2密钥信息记录装置200
密钥信息记录装置200从密钥信息生成单元105接收密钥信息,并将所接收的密钥信息写到记录介质500a上。
1.3记录介质500a、b、c
记录介质500a是一个诸如DVD-RAM的可记录介质,在上面没有记录数据。
记录介质500b是在密钥管理装置100和密钥信息记录装置200将密钥信息写到记录介质500a上时被生成的。
记录介质500c是在记录装置300a等的任何一个写一个加密的内容时被生成的。
1.4记录装置300a等
记录装置300a包括一个微处理器、一个ROM和一个RAM。RAM存储一个计算机程序。记录装置300a的功能是在微处理器按照计算机程序运行时实现的。图中没有表示出记录装置300a的构造。
记录介质500b被插入到记录装置300a中。记录装置300a通过根据存储在记录装置300a本身上的ID信息分析被写入记录介质500b上所记录的密钥信息中的设备密钥ID信息,识别一个要被解密的加密的介质密钥和一个要被使用的设备密钥。记录装置300a然后利用所识别的设备密钥解密所识别的加密的介质密钥,并将加密的内容记录到记录介质500b上。
1.5再现装置400a等
再现装置400a包括一个微处理器、一个ROM和一个RAM。RAM存储一个计算机程序。再现装置400a的功能是在微处理器按照计算机程序运行时实现的。图中没有表示出再现装置400a的构造。
记录介质500c被插入再现装置400a中。再现装置400a通过根据存储在再现装置400a本身上的ID信息分析被写入记录介质500c上所记录的密钥信息中的设备密钥ID信息,识别一个要被解密的加密的介质密钥和一个要被使用的设备密钥。再现装置400a然后通过用所识别的设备密钥解密所识别的加密的介质密钥获得一个介质密钥。再现装置400a用所获得的介质密钥解密一个被记录在记录介质500c上的加密的数字内容,以再现该内容。
2.数字作品保护系统10的操作。
在本节中,将解释数字作品保护系统10的操作。
2.1总体操作
将参照图18中所示的流程图解释数字作品保护系统10的总体操作。
首先,数字作品保护系统10构造第1代树结构并存储所生成的树结构(步骤S101)。数字作品保护系统10然后执行一个对一个第n代树结构的处理(步骤S102),其中n是一个不小于″2″的整数。按需要重复S102。
2.2第1代树结构的构造和存储
将参照图19中所示的流程图解释密钥管理装置100在构造第1代树结构过程中的操作。注意到这里解释的操作是图18中所示的步骤S101的详述。
树结构构造单元101生成包括作为节点名的”根”的节点信息,并将所生成的节点信息写到由树结构构造单元101保存的树结构表(步骤S151)。
其次,树结构构造单元101对层i(i=1,2,3)重复以下的步骤S152至S155。
树结构构造单元101生成一个2i个字符的串作为节点名(步骤S153),并按顺序将包括作为节点名的该2i个字符的串的节点信息写到树结构表(步骤S154)
2.3处理第n代树结构
将参照图20和21中所示的流程图解释本发明系统在构造第n代树结构过程中的操作。注意到这里解释的操作是图18中所示的步骤S102的详述。
密钥管理装置100的设备密钥分配单元103选择一个叶子并将一个用户装置与所选择的叶子对应(步骤S201)。设备密钥分配单元103然后生成设备密钥(步骤S202)并将所生成的设备密钥分配给予所选择的叶子有关的某些节点(步骤S203),然后将所分配的设备密钥和ID信息传送到与所选择的叶子对应的用户装置(步骤S204)。用户装置接收设备密钥和ID信息(步骤S205)。密钥信息生成单元105生成介质密钥(步骤S206),并生成密钥信息(步骤S207)。密钥信息生成单元105通过密钥信息记录装置200将所生成的密钥信息输出到一个记录介质(步骤S208)。记录介质接收密钥信息(步骤S209)。设备密钥分配单元103计算没有指明对应的用户装置名的叶子的数目(步骤S210)。设备密钥分配单元103然后判断该叶子数等于还是小于阀值(步骤S211)。如果判断是肯定的,树结构扩展单元104生成一个新一代树结构(步骤S212)。如果步骤211中的判断是否定的,则控制返回到步骤S201。
用户装置在步骤S205接收设备密钥和ID信息后,在自身存储所接收的设备密钥和ID信息(步骤S221)。
记录介质在步骤S209接收密钥信息后,在自身存储所接收的密钥信息(步骤S222)。
在记录介质被插入用户装置的同时,记录介质将密钥信息输出到用户装置,用户装置接收密钥信息(步骤S223)。用户装置通过查阅密钥信息而抽取加密的介质密钥(步骤S224)。用户装置利用一个设备密钥解密所抽取的加密的介质密钥(步骤S225),用所获得介质密钥加密或解密一个内容(步骤S226)。
2.4输出设备密钥和ID信息
将参照图22中所示的流程图解释密钥管理装置100在向用户装置输出设备密钥和ID信息的过程中的操作。注意到这里解释的操作是图20中所示的步骤S204的详述。
设备密钥分配单元103获得N-位的ID信息和被分配给所选择的叶子的设备密钥″A″(步骤S241)。设备密钥分配单元103然后获得被分配给根的设备密钥″B″(步骤S242)。设备密钥分配单元103从M=1至M=N-1重复步骤S244(步骤S243至S245)。设备密钥分配单元103获得被分配给其节点名是ID信息的前M位的节点的设备密钥″KM″(步骤S244)。设备密钥分配单元103向用户装置输出ID信息(步骤S246),然后将所获得的各设备密钥与各设备密钥ID信息片断对应,并按照″B、K1、...KN-1、A″的顺序向用户装置输出各设备密钥与各设备密钥ID信息片断(步骤S247)。
3.撤销设备密钥
在本节中,说明如何用常规的设备密钥撤销方法在数字作品保护系统10中撤销设备密钥。与其相关地,也讨论用户装置之间的相容性。
将图7中所示的第1代树结构T300扩展,生成图12中所示的第2代树结构T600。在这个扩展中,层数被增加1,并且4个用户装置被添加到系统中。在这种情况下,例如有5个设备密钥(KeyA、KeyC、KeyF、KeyI和IK8)被分配给用户装置8。这5个设备密钥的集合是用户装置8独有的,与分配给其他用户装置的任何设备密钥集合都不同。因此,就有可能个别地撤销用户装置8,如本技术领域中已知的那样。
类似地,将树结构T600扩展,生成图15中所示的第3代树结构T800。在这个扩展中,层数被增加1,并且4个用户装置被进一步添加到系统中。在这种情况下,例如有6个设备密钥(KeyA、KeyC、KeyG、KeyJ、KeyM和IK12)被分配给用户装置12。这6个设备密钥的集合是用户装置12独有的,与分配给其他用户装置的任何设备密钥集合都不同。因此,就有可能个别地撤销用户装置12,如本技术领域中已知的那样。
现在将讨论在(i)一个与在第3代树结构被生成时的一个树结构关联的用户装置(以下称该用户装置为第3代用户装置。这也适用于其它代)与(ii)一个与在另一代树结构被生成时的树结构关联的用户装置—之间的相容性。
图15中所示的树结构T800处于尚无装置被撤销的状态。在这个状态下,一个通过用设备密钥″KeyA″加密一个介质密钥而生成的加密的介质密钥被记录在记录介质1100中,如图24A中所示的那样。当用户装置12是个记录装置时,用户装置12通过用设备密钥″KeyA″解密该加密的介质密钥而获得一个介质密钥,用所获得的介质密钥加密一个数字内容,并将该加密的内容记录到记录介质1100上。当第1代用户装置1是个再现装置时,用户装置1通过用设备密钥″KeyA″解密该加密的介质密钥而获得一个介质密钥,用所获得的介质密钥解密在记录介质1100上记录的一个加密的数字内容,以再现该内容。
下面将讨论在用户装置12被添加到系统之前第1代用户装置1已经被撤销的情况。图23表示其中的用户装置1已经被撤销的一个树结构T900。在这个时刻,系统包括两种记录介质:图24A中所示的、在用户装置1被撤销之前含有数据的记录介质1100和图24B中所示的在用户装置1被撤销之后含有数据的记录介质1200。记录介质1200存储着被用设备密钥″KeyC″、″KeyE″和″IK2″作为密钥信息加密的加密的介质密钥。如果在这个条件下将用户装置12添加到系统,用户装置12持有设备密钥″KeyA″、″KeyC″、″KeyG″、″KeyJ″、″KeyM″和″IK12″,如图15中所示的那样。在这个状态下,当记录介质1100被插入时,用户装置12用KeyA获得一个介质密钥,用所获得的介质密钥加密一个内容,并将所加密的内容记录到记录介质1100上。当存储着一个加密的内容的记录介质1100被插入时,用户装置12用KeyA获得一个介质密钥,用所获得的介质密钥解密该加密的内容。同样,当记录介质1200被插入到其中时,用户装置12用KeyC获得一个介质密钥,用所获得的介质密钥加密一个内容,并将所加密的内容记录到记录介质1200上。当存储着一个加密的内容的记录介质1200被插入到其中时,用户装置12用KeyC获得一个介质密钥,用所获得的介质密钥解密该加密的内容。
6.其他修改
注意,尽管根据是根据以上实施例对本发明进行说明的,本发明并不限于该实施例。本发明也包括诸如以下的情形。
(1)在以上实施例中,密钥管理装置100构造一个二叉树。然而,密钥管理装置100并不仅限于构造二叉树,而是可以构造n叉树,其中n是个不小于2的整数。
(2)在以上实施例中,可以用任何方法将设备密钥与树结构中的节点关联,或者将用户装置分配给设备密钥。
(3)在以上实施例中,树结构中的每个节点与一个设备密钥关联。然而,每个节点可以与多个设备密钥关联。在这种情况下,对于从一个被分配有一个用户装置的叶子到根(包括该叶子和根)存在的每个节点,密钥管理装置将与该节点关联的多个设备密钥中的一个或多个设备密钥分配给用户装置。例如,本发明包括这样的情形:一个三叉树的每个节点与6个或7个设备密钥关联,这些设备密钥中的3个或4个设备密钥被分配给一个用户装置。
(4)在以上实施例中,密钥管理装置100事先有一个阀值。然而,密钥管理装置可以事先没有一个阀值,而是在开始构造一个树结构是接收一个阀值,以便在其中设置它。此外,密钥管理装置也可以在树结构构造过程中接收一个阀值来替换一个老阀值。
(5)在以上实施例中,密钥管理装置100首先构造一个二叉树结构,然后通过每个叶子生成两个叶子地扩展它。然而,密钥管理装置可以通过每个叶子生成三个叶子地扩展树结构。此外,密钥管理装置还可以先构造一个n叉树结构,然后通过每个叶子生成m个叶子地扩展它,其中n是个不小于2的整数,m是个不小于n的整数。
(6)在以上实施例中,密钥管理装置100将树结构扩展一代,并将用户装置分配给叶子。然而,密钥管理装置100可以一次性将树结构扩展两代。例如,密钥管理装置可以通过从属于层3的、没有被分配给任何用户装置的4个叶子生成16个属于层5的叶子,一次性地将图7中所示的树结构T300扩展两代。此外,密钥管理装置100可以一次性地将树结构扩展k代,其中,k是个不小于2的整数。
(7)在以上实施例中,首先构造第1代树结构,然后将树结构向上扩展到第3代树结构。然而,树结构并不限于第3代树结构,而是原则上可以被无限地扩展。树结构的扩展也可以在树结构的层数达到一个预定的数目而停止。
(8)密钥管理装置可以根据要被分配给设备密钥的用户装置的数量来选择一个树结构扩展方法。这里所说的树结构扩展方法包括一种由n叉树扩展n叉树的方法,一种由m叉树扩展n叉树的方法(n<m),一种一次性地将树扩展k代的方法(k是个不小于2的整数),以及这些方法的组合。
(9)本发明可以是以上所示的各方法。此外,这些方法也可以是由计算机实现的计算机程序,可以是计算机程序的数字信号。
此外,本发明也可以是一种存储着计算机程序或数字信号的计算机可读记录介质装置,例如软盘、硬盘、CD-ROM(压缩盘只读存储器),以及M0(磁-光magneto-optical)、DVD-ROM(数字多用只读存储器)、DVD RAM、或半导体存储器。此外,本发明可以是在上述记录介质装置的任何一个上记录的计算机程序或数字信号。
此外,本发明可以是在电通信线路、无线或有线通信线路、或以因特网为代表的网络上传送的计算机程序或数字信号。
此外,本发明可以是一个包括微处理器和存储器的计算机系统,其中,存储器中存储着计算机程序,微处理器按照计算机程序运行。
此外,通过将程序或数字信号传送到记录介质装置,或者通过网络之类传送程序或数字信号,程序或数字信号可以被另一个独立的计算机执行。
(10)本发明可以是上述实施例和修改的任何组合。
工业应用
由密钥管理装置和用户装置组成的上述数字作品保护系统是当诸如存储在DVD等上的音乐、电影或小说在市场上流通时防止非法使用内容的理想方法。
Claims (16)
1.一种数字作品保护系统,该系统包括一个密钥管理装置和一个用户装置,密钥管理装置生成设备密钥,将设备密钥与一个树结构中的节点关联,并把用户装置分配给设备密钥,密钥管理装置包含:
一个确定单元,可用来根据未分配有用户装置的叶子的数量确定是否向树结构增加新的叶子;
一个扩展单元,可用来—如果确定单元确定要增加—生成要从未分配有用户装置的叶子的其中之一扩展的新的叶子;
一个用户装置分配单元,可用来将一个用户装置分配给新生成的叶子的其中之一;
一个设备密钥生成单元,可用来生成新的设备密钥,将新的设备密钥与从该新生成的一个叶子到一个根包含的所有节点中尚无设备密钥与之关联的节点关联;
一个设备密钥分配单元,可用来向用户装置分配与从该新生成的一个叶子到根包含存在的所有节点对应的设备密钥,其中,
用户设备或者用所分配的设备密钥的其中之一加密一个内容并把加密的内容写到一个记录介质上,或者从记录介质读取加密的内容并用所分配设备密钥的一个设备密钥解密所读取的内容。
2.一种密钥管理装置,用于生成设备密钥,将设备密钥与一个树结构中的节点相关联,并分配一个用户装置给设备密钥,包含:
一个确定单元,可用来根据未分配有用户装置的叶子的数量确定是否向树结构增加新的叶子;
一个扩展单元,可用来—如果确定单元确定要增加—生成要从未分配有用户装置的叶子的其中之一扩展的新的叶子;
一个用户装置分配单元,可用来将一个用户装置分配给新生成的叶子的其中之一;
一个设备密钥生成单元,可用来生成新的设备密钥,将新的设备密钥与从该新生成的一个叶子到一个根包含的所有节点中尚无设备密钥与之关联的节点关联;
一个设备密钥分配单元,可用来向用户装置分配与从该新生成的一个叶子到根包含存在的所有节点对应的设备密钥。
3.一种密钥管理装置,用于生成设备密钥,将设备密钥与一个树结构中的节点相关联,并分配多个用户装置给设备密钥,包含:
一个设备密钥存储单元,可用来事先存储该树结构和已经被分配给与树结构中的一些叶子相关联的用户装置的设备密钥;
一个确定单元,可用来根据未分配有用户装置的叶子的数量确定是否向树结构增加新的叶子;
一个扩展单元,可用来—如果确定单元确定要增加—生成要从未分配有用户装置的叶子的其中之一扩展的新的叶子;
一个用户装置分配单元,可用来将一个用户装置分配给新生成的叶子的其中之一;
一个设备密钥生成单元,可用来生成新的设备密钥,将新的设备密钥与从该新生成的一个叶子到一个根包含的所有节点中尚无设备密钥与之关联的节点关联;
一个设备密钥分配单元,可用来向用户装置分配与从该新生成的一个叶子到根包含存在的所有节点对应的设备密钥。
4.权利要求3的密钥管理装置,其中,
确定单元包括:
一个计数单元,可用来查阅在设备密钥存储单元中存储的树结构,并计算未分配有用户装置的叶子的个数;
一个比较单元,可用来比较所计算的叶子数与一个阀值,其中,如果所计算的叶子数等于或小于该阀值,则确定单元确定要向树结构添加新的叶子。
5.权利要求4的密钥管理装置,其中,
设备密钥生成单元进一步生成新的设备密钥,把新的设备密钥与在从叶子到根存在的节点被从树结构删除时所生成的子树的所有根相关联,密钥管理装置进一步包含:
一个加密介质密钥生成单元,可用来通过用由设备密钥生成单元生成的所有设备密钥在一对一的基础上加密介质密钥而生成加密的介质密钥;
一个加密介质密钥写单元,可用来把所生成的加密介质密钥写到一个记录介质上。
6.权利要求5的密钥管理装置,其中,
比较单元事先存储阀值,并比较所计算的叶子数与阀值。
7.权利要求5的密钥管理装置,其中,设备密钥存储单元存储与树结构中具有的节点数量相同的节点信息片断,各节点信息片断按与树结构中的节点相同的方式互相链接,每个节点信息片断包括用于标识某个节点的节点ID信息、对应于该节点的设备密钥、以及用于标识对应于该节点的用户装置的用户装置ID信息,
扩展单元生成一个只含有标识一个新叶子的节点ID信息的新的节点信息片断,该新的节点信息片断与一个含有标识一个没有被分配用户装置的叶子的节点ID信息的节点信息片断链接,
用户装置分配单元向该新的节点信息片断添加用户装置ID信息,
设备密钥生成单元向该新的节点信息片断添加一个设备密钥。
8.权利要求5的密钥管理装置,其中,
存储在设备密钥存储单元中的树结构是一个n叉树结构,其中n是个不小于2的整数,扩展单元生成从一个叶子扩展的n个新叶子。
9.权利要求5的密钥管理装置,其中,存储在设备密钥存储单元中的树结构是一个n叉树结构,其中n是个不小于2的整数,和
扩展单元生成从一个叶子扩展的m个新叶子,其中m是一个满足m>n的整数。
10.权利要求9的密钥管理装置,其中,
扩展单元生成从一个叶子扩展的m个新叶子,其中m=n+1。
11.权利要求8的密钥管理装置,其中,扩展单元生成从n个新叶子的每个扩展的n个更新叶子,结果生成n2个叶子。
12.一种用户装置实现,该用户装置或者用由一个有与从每个叶子到根包含存在的每个节点对应的一个或多个设备密钥的密钥管理装置分配的多个设备密钥的其中之一加密一个内容,并将该加密的内容写到记录介质上,或者从记录介质读一个加密的内容并用所分配设备密钥的其中之一解密所读的内容,其中,
密钥管理装置(a)根据没有被分配用户装置的叶子的数量确定是否向树结构增加新的叶子,(b)如果确定要增加,就生成要从没有被分配用户装置的叶子的其中之一扩展的新的叶子,(c)将一个用户装置分配给新生成的叶子的其中之一,(d)生成新的设备密钥,将新的设备密钥与从该新生成的一个叶子到一个根包含的所有节点中尚无设备密钥与之关联的节点关联,(e)向用户装置分配与从该新生成的一个叶子到根包含存在的节点对应的所有设备密钥;
用户装置包含:
一个介质密钥识别单元,可用来从被写在记录介质上的多个加密的介质密钥中识别一个被用分配给该用户装置的设备密钥的其中之一加密的介质密钥;
一个介质密钥解密单元,可用来恢复一个介质密钥,具体是用加密该介质密钥时所用的设备密钥解密所识别的加密的介质密钥;
一个加密/解密单元,可用来或者用所生成的介质密钥加密一个内容并将所加密的内容写到记录介质上,或者从记录介质读取一个加密的内容并用所生成的介质密钥解密所读取的内容。
13.一种记录介质,该记录介质上记录有:
通过以设备密钥作为加密密钥加密介质密钥而生成的加密的介质密钥,其中,
设备密钥由一个密钥管理装置生成,且
密钥管理装置(a)根据没有被分配用户装置的叶子的数量确定是否向树结构增加新的叶子,(b)如果确定要增加,就生成要从没有被分配用户装置的叶子的其中之一扩展的新的叶子,(c)将一个用户装置分配给新生成的叶子的其中之一,(d)生成新的设备密钥,将新的设备密钥与从该新生成的一个叶子到一个根包含的所有节点中尚无设备密钥与之关联的节点关联,(e)向用户装置分配与从该新生成的一个叶子到根包含存在的节点对应的所有设备密钥。
14.一种在用于生成设备密钥、将设备密钥与一个树结构中的节点相关联并分配多个用户装置给设备密钥的密钥管理装置中使用的密钥管理方法,其中:
密钥管理装置存储着该树结构和已经被分配给与树结构中的一些叶子相关联的用户装置的设备密钥;
该密钥管理方法包含:
一个确定步骤,根据未分配有用户装置的叶子的数量确定是否向树结构增加新的叶子;
一个扩展步骤,如果确定单元确定要增加,则生成要从未分配有用户装置的叶子的其中之一扩展的新的叶子;
一个用户装置分配步骤,将一个用户装置分配给新生成的叶子的其中之一;
一个设备密钥生成步骤,生成新的设备密钥,将新的设备密钥与从该新生成的一个叶子到一个根包含的所有节点中尚无设备密钥与之关联的节点关联;
一个设备密钥分配步骤,向用户装置分配与从该新生成的一个叶子到根包含存在的所有节点对应的设备密钥。
15.一种在用于生成设备密钥、将设备密钥与一个树结构中的节点相关联并分配多个用户装置给设备密钥的密钥管理装置中使用的密钥管理程序,其中:
密钥管理装置存储着该树结构和已经被分配给与树结构中的一些叶子相关联的用户装置的设备密钥;
该密钥管理程序包含:
一个确定步骤,根据未分配有用户装置的叶子的数量确定是否向树结构增加新的叶子;
一个扩展步骤,如果确定单元确定要增加,则生成要从未分配有用户装置的叶子的其中之一扩展的新的叶子;
一个用户装置分配步骤,将一个用户装置分配给新生成的叶子的其中之一;
一个设备密钥生成步骤,生成新的设备密钥,将新的设备密钥与从该新生成的一个叶子到一个根包含的所有节点中尚无设备密钥与之关联的节点关联;
一个设备密钥分配步骤,向用户装置分配与从该新生成的一个叶子到根包含存在的所有节点对应的设备密钥。
16.一种计算机可读记录介质,上面记录着一个在用于生成设备密钥、将设备密钥与一个树结构中的节点相关联并分配多个用户装置给设备密钥的密钥管理装置中使用的密钥管理程序,其中:
密钥管理装置存储着该树结构和已经被分配给与树结构中的一些叶子相关联的用户装置的设备密钥;
该密钥管理程序包含:
一个确定步骤,根据未分配有用户装置的叶子的数量确定是否向树结构增加新的叶子;
一个扩展步骤,如果确定单元确定要增加,则生成要从未分配有用户装置的叶子的其中之一扩展的新的叶子;
一个用户装置分配步骤,将一个用户装置分配给新生成的叶子的其中之一;
一个设备密钥生成步骤,生成新的设备密钥,将新的设备密钥与从该新生成的一个叶子到一个根包含的所有节点中尚无设备密钥与之关联的节点关联;
一个设备密钥分配步骤,向用户装置分配与从该新生成的一个叶子到根包含存在的所有节点对应的设备密钥。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001329862 | 2001-10-26 | ||
JP329862/2001 | 2001-10-26 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1620780A true CN1620780A (zh) | 2005-05-25 |
Family
ID=19145682
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA028260783A Pending CN1620780A (zh) | 2001-10-26 | 2002-10-21 | 密钥管理装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20030081786A1 (zh) |
EP (1) | EP1459475A2 (zh) |
KR (1) | KR20040044560A (zh) |
CN (1) | CN1620780A (zh) |
MX (1) | MXPA04003933A (zh) |
WO (1) | WO2003036859A2 (zh) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7409685B2 (en) | 2002-04-12 | 2008-08-05 | Hewlett-Packard Development Company, L.P. | Initialization and update of software and/or firmware in electronic devices |
US8479189B2 (en) | 2000-11-17 | 2013-07-02 | Hewlett-Packard Development Company, L.P. | Pattern detection preprocessor in an electronic device update generation system |
US7395425B2 (en) * | 2001-03-29 | 2008-07-01 | Matsushita Electric Industrial Co., Ltd. | Data protection system that protects data by encrypting the data |
CN1666460A (zh) * | 2002-05-09 | 2005-09-07 | 松下电器产业株式会社 | 公用密钥证撤销表产生装置、撤销判断装置、和验证系统 |
US8233893B2 (en) | 2002-08-22 | 2012-07-31 | Hewlett-Packard Development Company, L.P. | Mobile handset update package generator that employs nodes technique |
US7894603B2 (en) * | 2002-11-20 | 2011-02-22 | Sony Corporation | Recording system and method, recording device and method, input device and method, reproduction system and method, reproduction device and method, recording medium, and program |
US7835520B2 (en) * | 2003-02-20 | 2010-11-16 | Zoran Corporation | Unique identifier per chip for digital audio/video data encryption/decryption in personal video recorders |
US7584466B1 (en) * | 2003-06-16 | 2009-09-01 | Hewlett-Packard Development Company, L.P. | Management tree management in a mobile handset |
US8555273B1 (en) | 2003-09-17 | 2013-10-08 | Palm. Inc. | Network for updating electronic devices |
KR20050078773A (ko) * | 2004-02-02 | 2005-08-08 | 삼성전자주식회사 | 브로드캐스트 암호화 방법을 위한 사용자 키 할당 방법 |
US7904895B1 (en) | 2004-04-21 | 2011-03-08 | Hewlett-Packard Develpment Company, L.P. | Firmware update in electronic devices employing update agent in a flash memory card |
JP2005333242A (ja) * | 2004-05-18 | 2005-12-02 | Pioneer Electronic Corp | 鍵管理システム、及び再生装置 |
US8526940B1 (en) | 2004-08-17 | 2013-09-03 | Palm, Inc. | Centralized rules repository for smart phone customer care |
US8090105B2 (en) * | 2004-11-24 | 2012-01-03 | International Business Machines Corporation | Broadcast encryption with dual tree sizes |
KR100717005B1 (ko) * | 2005-04-06 | 2007-05-10 | 삼성전자주식회사 | 폐기 키를 결정하는 방법 및 장치와 이것을 이용하여복호화하는 방법 및 장치 |
WO2007146710A2 (en) | 2006-06-08 | 2007-12-21 | Hewlett-Packard Development Company, L.P. | Device management in a network |
WO2008014454A2 (en) | 2006-07-27 | 2008-01-31 | Hewlett-Packard Development Company, L.P. | User experience and dependency management in a mobile device |
JP2008103936A (ja) * | 2006-10-18 | 2008-05-01 | Toshiba Corp | 秘密情報管理装置および秘密情報管理システム |
US8290157B2 (en) * | 2007-02-20 | 2012-10-16 | Sony Corporation | Identification of a compromised content player |
JP2009027557A (ja) * | 2007-07-20 | 2009-02-05 | Toshiba Corp | コンテンツデータ配信端末、及びコンテンツデータ配信システム |
US8219595B2 (en) * | 2008-02-14 | 2012-07-10 | Hewlett-Packard Development Company, L.P. | System and method for efficient remote data access for server management |
JP4905575B2 (ja) * | 2010-03-30 | 2012-03-28 | 日本電気株式会社 | 情報処理システム、情報処理方法、複製元情報処理装置、複製先情報処理装置、及び、プログラム |
KR102306676B1 (ko) | 2014-06-27 | 2021-09-28 | 삼성전자주식회사 | 스토리지 디바이스용 호스트 키 생성 방법 및 시스템 |
WO2016147303A1 (ja) * | 2015-03-16 | 2016-09-22 | 株式会社東芝 | 管理装置、プログラム、システム、機器および方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5995971A (en) * | 1997-09-18 | 1999-11-30 | Micdrosoft Corporation | Apparatus and accompanying methods, using a trie-indexed hierarchy forest, for storing wildcard-based patterns and, given an input key, retrieving, from the forest, a stored pattern that is identical to or more general than the key |
US6263435B1 (en) * | 1999-07-06 | 2001-07-17 | Matsushita Electric Industrial Co., Ltd. | Dual encryption protocol for scalable secure group communication |
JP2001186119A (ja) * | 1999-12-22 | 2001-07-06 | Nippon Telegr & Teleph Corp <Ntt> | 木構造を用いた鍵管理方法および鍵管理装置並びに記録媒体 |
US6614789B1 (en) * | 1999-12-29 | 2003-09-02 | Nasser Yazdani | Method of and apparatus for matching strings of different lengths |
JP4023083B2 (ja) * | 2000-04-06 | 2007-12-19 | ソニー株式会社 | 情報処理システム、情報処理方法、および情報記録媒体、並びにプログラム提供媒体 |
JP4078802B2 (ja) * | 2000-12-26 | 2008-04-23 | ソニー株式会社 | 情報処理システム、情報処理方法、情報処理装置、および情報記録媒体、並びにプログラム記録媒体 |
-
2002
- 2002-10-21 KR KR10-2004-7006168A patent/KR20040044560A/ko not_active Application Discontinuation
- 2002-10-21 CN CNA028260783A patent/CN1620780A/zh active Pending
- 2002-10-21 MX MXPA04003933A patent/MXPA04003933A/es unknown
- 2002-10-21 WO PCT/JP2002/010870 patent/WO2003036859A2/en not_active Application Discontinuation
- 2002-10-21 EP EP02802033A patent/EP1459475A2/en not_active Withdrawn
- 2002-10-23 US US10/277,747 patent/US20030081786A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20030081786A1 (en) | 2003-05-01 |
MXPA04003933A (es) | 2004-06-18 |
KR20040044560A (ko) | 2004-05-28 |
WO2003036859A2 (en) | 2003-05-01 |
WO2003036859A3 (en) | 2004-07-08 |
EP1459475A2 (en) | 2004-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1620780A (zh) | 密钥管理装置 | |
CN1172244C (zh) | 著作权保护系统、记录设备及解密设备 | |
CN1114919C (zh) | 具有密码化复制管理信息的非法数据复制防止装置和方法及记录媒体 | |
CN1270246C (zh) | 信息处理设备和方法 | |
CN1698040A (zh) | 信息记录媒体、信息处理设备、方法和计算机程序 | |
CN1203639C (zh) | 信息处理系统及方法 | |
CN1188857C (zh) | 根据作为电子水印埋入在著作物中的复制属性,在记录媒体上记录著作物的复制品的记录装置,进行对记录的复制 | |
CN1294718C (zh) | 信息记录/重放装置和方法 | |
CN1241351C (zh) | 信息记录/再生装置和方法 | |
CN1383644A (zh) | 信息处理系统、信息处理方法以及信息记录介质和程序提供介质 | |
CN1389041A (zh) | 信息记录/再生装置及方法 | |
CN1610917A (zh) | 许可管理装置、许可管理方法和计算机程序 | |
CN1571959A (zh) | 信息处理设备、信息处理方法和计算机程序 | |
CN1901446A (zh) | 使用了加密密钥组的信息处理系统及方法 | |
CN1848279A (zh) | 信息处理装置、信息处理方法、以及计算机程序 | |
CN1394409A (zh) | 加密设备和方法、解密设备和方法、及存储介质 | |
CN1389042A (zh) | 使用了加密密钥组的信息处理系统及方法 | |
CN1533646A (zh) | 信息处理设备和方法、信息提供设备和方法、使用权利管理设备和方法、记录介质和程序 | |
CN1898737A (zh) | 记录装置以及记录方法 | |
CN1918553A (zh) | 服务提供服务器、信息处理设备、数据处理方法,以及计算机程序 | |
CN1389043A (zh) | 信息处理装置及处理方法 | |
CN1848271A (zh) | 信息处理装置和方法、信息记录介质、以及计算机程序 | |
CN1811954A (zh) | 内容管理方法和记录媒体 | |
CN1692599A (zh) | 信号处理系统、记录方法、程序、记录介质、再现装置和信息处理装置 | |
CN1627414A (zh) | 数据记录装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |