数据处理系统、数据处理方法和程序提供介质的制作方法

文档序号:6571001阅读:349来源:国知局
专利名称:数据处理系统、数据处理方法和程序提供介质的制作方法
本申请要求对日本专利第P2000-247461(2000年8月17日提交)的优先权,该申请根据法律允许的程度在此引作参考。
本发明涉及一个数据处理装置、一个数据处理方法和一个程序提供介质。更具体地说,本发明涉及这样一种数据处理装置、数据处理方法和程序提供介质,其分别产生校验根据分别的内容数据而存储在一个存储装置中的内容数据的完整性的校验值,并且随后进行核查,通过应用每个内容数据的类型独立产生的该校验值而探测侵害内容数据行为的存在或不存在,从而实现高效率的探测内容数据侵害行为的处理中。
最近,经包括音乐数据、游戏程序、图片数据等各种软件数据发布的所谓“内容”数据进一步增长,这些数据是分别通过诸如互联网服务线路、或包括记录卡、DVD(数字多功能盘)、CD(密致盘)等便于分发的记录介质分别发布的。
以上的发布的内容数据由个人计算机、再生装置或得到许可的游戏机再生,或者通过包括存储卡、CD、DVD等装载到以上所提到的装置的记录介质再生。另外,以上的内容数据还被可再生地存储在安装在个人计算机的一个再生装置和一个记录介质中(比如诸如存储卡或硬盘等)。
上述的再生装置、以及例如个人计算机的信息装置的任何之一都包括用于接收分布的接口装置,用于接收分配的内容数据或用于存取DVD和CD,并且还包括为了再生内容数据的而需要的控制装置并且包括用于存储程序和多种数据的RAM(随机存取存储器)和ROM(只读存储器)。
根据再生装置、游戏机或个人计算机用户的指令,或根据连接的输入装置的用户的指令,例如音乐数据、图像数据的各种内容数据或程序从内置或可分离记录介质输出然后由数据再生装置再生或由连接显示装置或扬声器单元再生。
通常,游戏程序、音乐数据、图像数据等分布权是由相应的制作者和市场代理商保留的。因此,任何时候分配的内容数据都仅限于适当授权的用户使用,使得未经授权的再生不能实施。换言之,建立一种防范措施以确保安全性是通常的实践。
一种用于加密可分配内容数据的处理构成这种实际限制用户使用该内容数据的手段。具体地说,该加密方法把包括加密音频数据、图像数据、游戏程序的多种内容数据通过例如互联网用户线分配,并且还仅允许认证的适当用户解码该所分配的加密内容数据。换言之,只有那些验证的用户才被给予接收解码密钥的权力。
只在根据预定的过程完成这种解码处理以后,才能把加密数据恢复成可实际使用的解码数据,即纯文本数据。通过加密处理进行加密的过程和通过解码方法的解码数据的处理是通常公知的。
通过应用加密密钥和解码密钥进行加密和解码数据的各种方法中存在例如一种所谓的公用密钥加密系统。这种公用密钥加密系统通过采用一个公用密钥实现数据的加密和数据的解码。该系统为验证的适当用户提供以用于加密和解码可接收信息的公用密钥,从而避免缺乏该公用密钥的未验证用户不正当地存取数据。该公用密钥加密系统的典型之一是DES(数据加密标准)。
用于上述加密和解码处理的这种加密密钥和解码密钥可以采用一种单向函数,例如根据一种确定的口令的Hash函数而确保安全。这种单向函数包括从一个输出值反相地计算一个输入值的一个极大的困难。例如,根据用户预定的一个输入口令,通过采用该单向函数和产生的输出值,分别产生加密密钥和解码密钥。另一方面,从经由上述处理产生的加密和解码密钥识别作为原始数据的上述口令几乎是不可能。
存在一种所谓的开放密钥加密处理,其使用一种基于利用加密密钥的加密处理和利用一种解码密钥的解码处理的算法是不同的算法。该开放密钥加密处理利用这样一个可由非特定用户使用的开放密钥。这种加密方法通过采用由具体个人给出的公开密钥加密发给一个具体个人的文件。通过这种开放密钥加密的文件只能通过使用对应于用于加密本文件的开放密钥的一个隐秘的密钥才能够解码。因为该隐秘密钥由发出开放密钥的具体个人保留,所以由该开放密钥加密的文件仅能由保留该隐秘密钥的个人所解码。RSA(Rivest ShamirAdleman)密码是上述该开放密钥加密方法的典型系统。使用利用该公开密钥加密方法,有可能建立这样一种系统,实现仅供验证的适当用户解码的加密内容数据。
通常,用于验证内容数据的完整性的处理通过下面的步骤执行为了探测不存在侵害内容数据的行为,根据一个正确的内容数据产生用于验证的检验值,然后预先存储在一个存储器中。每当利用该内容数据时,根据该要求确认的数据产生一个检验值,与存储在该存储器中的检验值比较。
但是相关于存储在该存储器中的内容数据的数量的递增,引发的一个困难是要根据正确的内容数据产生用于验证的检验值,而另一困难是正确地存储和控制这些检验值。具体地说,在当今可用闪速存储器的存储卡的实际存储容量的一种记录介质的情况下,大量值的内容数据被共同地存储在该存储器中,包括的各种类型有音乐数据、图像数据、程序数据等。在这种复杂环境中,很难正确地控制用于产生侵害内容数据的行为的进行探测的上述检验值的产生、存储和使用的处理过程。当产生用于探测该存储器中的整个数据的完整性的这种检验值时,需要产生用于探测该存储中的全部数据的这种检验值。例如,当通过使用例如由DES CBC产生的信息授权认证码(MAC)计算一个完整性检验值(ICV)时,必需执行该DES CBC处理,以便处理该存储器中的全部数据。由于数据长度越长则该将要计算的数据量也越大,从而产生处理效率的问题。
本发明旨在解决该传统技术中的上述问题。更具体地说,本发明的一个方面是提供一个数据处理装置、数据处理方法和程序提供介质,分别地实现下面处理过程被十分有效率地执行,该处理过程包括内容数据完整性的授权认证、相对于记录装置的授权认证内容数据的下载或在完成授权认证以后的再生处理。
根据本发明的第一实际方案,提供这样一种数据处理装置,其最初地产生用于检验存储在一个存储装置中的内容数据的完整性的检验值,然后根据该内容数据存储该检验值,最后探测该侵害内容数据的行为的实际存在或不存在。每一内容数据类型的内容数据检验值被独立地产生和存储。
根据本发明的相关数据处理装置的进一步的实际方案,每当使用内容数据时,该数据处理装置最初根据构成该可用内容数据计算检验值,随后把计算的检验值与预先存储在一个存储器中的其它检验值比较,最后仅当该两个值被标识彼此一致时才启动该对应内容数据的利用。
根据本发明的数据处理装置的进一步实际方案,上述存储装置存储对应于多个目录的各种类型的内容数据。上述内容数据检验值是根据对应于多个目录的分别单元内容数据的一个集合而产生的。
根据本发明的数据处理装置的进一步实际方案,上述存储装置包括一个闪速存储器。每一目录的每一类型的内容数据检验值被存储在该闪速存储器中预置作为一个禁止利用块的一个域中。
根据本发明的数据处理装置的进一步实际方案,上述分类的预置是根据一种内容数据,其中所说的类型预置并存储每一内容数据种类彼此独立的多个检验值。
根据本发明的数据处理装置的进一步实际方案,根据分别的使能密钥块(EKB)的一个控制实体预置上述类型,其使能密钥块(EKB)提供一个建立的加密内容密钥(Kcon)作为用于加密内容数据的密钥。每一所说类型预置并存储彼此独立的该使能密钥块(EKB)的每一控制实体的检验值。
根据本发明的数据处理装置的更进一步的实际方案,根据通过应用到局部数据信息的DES加密方法产生的信息授权认证码(MAC)而产生上述内容数据检验值,该局部数据信息包括内容相关数据,例如将要被验证的内容数据和标题数据。
根据本发明的第二实际方案,提供一个数据处理装置,其产生并存储多个信息授权认证码(MAC),该授权认证码(MAC)起到用于进行探测的数据的作用,探测在一个存储装置中存储的多种内容数据或标题数据中的侵害内容数据的行为实际存在或不存在。
该数据处理装置在内容数据或标题数据中的互相不同的数据域中产生多个信息授权认证码(MAC);其中用于产生该信息授权认证码(MAC)的该数据域的一部分被使用作为一个公用数据;其中每当更新任何上述授权认证码(MAC)时,该公用数据也被更新,以便进一步更新其它信息授权认证码(MAC)。
根据本发明的第三实际方案,提供这样一种数据处理方法,其最初地产生用于检验内容数据的完整性的检验值,然后根据分别的内容数据存储该产生的检验值,从而探测侵害内容数据的行为的实际存在或不存在。上述值被产生并存为每一内容数据的独立的检验值。
根据相关本发明的数据处理方法的一个实际方案,执行一连续处理,其包括根据在实际使用所说内容数据的情况下使用的内容数据的数据而计算内容数据检验值的一个初始步骤、把计算的检验值与预先存储的检验值比较的随后步骤和只在其中两个值被标识为互相一致的情况下才使用该相应的内容数据的最终步骤。
根据本发明的数据处理方法的进一步实际方案,上述存储装置存储对应于多个目录的多种类型的内容数据,其中产生该检验值以便处理分别对应于多个目录的内容数据的一个集合。
根据本发明的数据处理方法的进一步实际方案,上述存储装置包括一个闪速存储器,其中每一类型的分别的检验值存储在该闪速存储器中的预置为一个禁止利用块的一个域中。
根据本发明的数据处理方法的进一步实际方案,上述类型的每一个的预置是根据一种内容数据,其中所说的类型的每一个预置并存储每一内容数据种类彼此独立的多个检验值。
根据本发明的数据处理方法的进一步实际方案,根据使能密钥块(EKB)的一个控制实体预置上述类型的每一个,该使能密钥块(EKB)加密和提供一个内容密钥,提供作为用于加密一个内容数据的密钥,其中每一类型把检验值设置和存储为分别使能密钥块(EKB)的每一控制实体彼此独立。
根据本发明的数据处理装置的进一步实际方案,上述内容数据检验值是根据由用于加密包括一个内容相关数据的局部数据信息的一个处理产生的信息授权认证码(MAC)产生的,该内容相关数据包括将要被通过采用DES加密方法验证的内容数据和标题数据。
根据本发明的数据处理方法的更进一步实际方案,一个内容数据或标题数据包括在互相不同的数据域中产生的多个信息授权认证码(MAC),其中用于产生分别的信息授权认证码(MAC)的数据域的一部分构成一个公用数据,从而每当更新任何信息授权认证码(MAC)时,该公用数据也连带地更新其它信息授权认证码(MAC)。
根据本发明的第四实际方案,提供这样一种数据处理方法其产生并存储多个起到用于探测作用的数据的信息授权认证码(MAC),探测存储在一个存储装置中的内容数据或标题数据中侵害内容数据的行为的实际存在或不存在。
根据本发明第四方案的数据处理方法在一个内容数据或一个标题数据的互相不同的数据域中产生多个信息授权认证码(MAC),其中用于产生该信息授权认证码(MAC)的数据域的一部分中包括公用数据,从而每当更新任何信息授权认证码(MAC)时,其它信息授权认证码(MAC)也被更新。
根据本发明的第五实际方案,提供一种节目提供介质,其提供给计算机系统一个用于启动该计算机系统的一个计算机程序,以执行串行处理,包括产生用于检验存储在一个存储装置中的内容数据的完整性的检验值的最初步骤,根据内容数据把产生的检验值存储在该存储装置中的随后步骤,和探测实际上存在或不存在侵害内容数据的行为的探测步骤。
上述计算机程序包括产生上述检验值的步骤,上述检验值在存储到存储装置以前,内容数据的每一类型的上述检验值是彼此独立的。
根据本发明第六方面的程序提供介质提供了可由一个相应计算机利用多种程序代码读取的一般用途的计算机系统。对于这种程序提供介质没有特定的限制,即可以包括例如CD、DVD、MO或网络业务线。
该程序提供介质限定了在计算机程序和程序提供介质之间结构或有效的合作关系,以便实现在计算机系统上的一个预定计算机程序的适当功能。换言之,通过该程序提供介质把计算机程序安装到一个计算机系统中,将在该计算机系统上实施协作功能,从而产生与上述本发明的实际方案所能实现的完全一样的有益动作与功能。
本发明的更进一步的方案、特征以及优点将从实施例的实际形式以及从根据相关附图的详细描述而得知。
附图中

图1示出一个涉及本发明的数据处理系统的概念的总体的示意性的设计;图2示出一个涉及本发明的数据处理系统所使用的系统和数据的总体的概念的示意性的设计;图3示出一个分层树状密钥结构的原理框架图,它说明涉及本发明的数据处理系统中的数据和密钥的加密处理过程;图4示出用来发布涉及本发明的数据处理系统中的各种各样的密钥和数据的使能密钥块(EKB)的例子;图5示出使用涉及本发明的数据处理系统中的内容密钥的使能密钥块(EKB)发布数据(或密钥)和解码的示例;图6示出涉及本发明的数据处理系统中的使能密钥块(EKB)一种典型的格式;
图7示出涉及本发明的数据处理系统中的使能密钥块(EKB)的原理框架图;图8示出涉及本发明的数据处理系统中的使能密钥块(EKB)、相联内容密钥发布的数据和内容数据的一个结构;图9示出另一个涉及本发明的数据处理系统中的使能密钥块(EKB)、相联内容密钥发布的数据和内容数据的结构;图10示出在向涉及本发明的数据处理系统中的存储装置存储使能密钥块(EKB)和内容数据的处理过程;图11示出一个在涉及本发明的数据处理系统中的归类再每一个目录的分层树状密钥结构的例子;图12示出一个在涉及本发明的数据处理系统中生成简化的使能密钥块(EKB)的处理过程;图13示出一个在涉及本发明的数据处理系统中生成使能密钥块(EKB)的处理过程;图14示出在涉及本发明的数据处理系统中的简化的使能密钥块(EKB);图15示出一个在涉及本发明的数据处理系统中用到的再生装置和存储装置的原理框架图;图16示出一个存储在涉及本发明的数据处理系统中的存储装置的数据;图17示出一个存储在涉及本发明的数据处理系统中的存储装置的储存单元中的数据;图18示出一个存储在涉及本发明的数据处理系统中的再生控制数据文件中的数据的原理示意结构;图19示出一个存储在涉及本发明的数据处理系统中的数据文件中的数据的原理示意结构;图20示出一个存储在涉及本发明的数据处理系统中的数据再生控制文件中的数据的进一步原理示意结构;图21示出一个存储在涉及本发明的数据处理系统中的数据文件中的数据的进一步原理示意结构;图22示出部分存储在涉及本发明的数据处理系统中的数据文件中的属性标题数据;
图23示出部分存储在涉及本发明的数据处理系统中的数据文件中的属性标题数据;图24示出涉及本发明的数据处理系统中的数据文件操作模式的种类以及各个模式的记录时间;图25示出在涉及本发明的数据处理系统中再生控制数据;图26示出部分存储在涉及本发明的数据处理系统中的数据文件中的属性标题数据;图27示出一个相应的在涉及本发明的数据处理系统中的数据文件的数据块的标题数据的原理示意布置;图28示出在涉及本发明的数据处理系统中记录相关数据的过程的流程图;图29示出一个可施加于涉及本发明的数据处理系统的相互授权认证处理过程;图30示出在涉及本发明的数据处理系统中再生相关数据的过程的流程图;图31示出一个用以认可涉及本发明的数据处理系统中的密钥的发布的数据文件的格式;图32示出涉及本发明的数据处理系统中存储的数据的一个方案;图33示出通过利用涉及本发明的数据处理系统中的使能密钥块(EKB)解码相关数据的过程的流程图;图34示出用于联合发布使能密钥块(EKB)、授权认证密钥的数据结构,以及通过涉及本发明的数据处理系统中的相关装置处理数据的一个示例;图35示出另一个用于联合发布使能密钥块(EKB)、授权认证密钥的数据结构,以及通过涉及本发明的数据处理系统中的相关装置处理数据的一个示例;图36示出伴随向涉及本发明的数据处理系统施加一个虚拟存储装置的一个授权认证处理序列;图37示出一个用来生成完整性检测值(ICV)的信息授权认证代码(MAC)的示例,检测值(ICV)被涉及本发明的数据处理系统使用;图38示出涉及本发明的数据处理系统中的完整性检测值(ICV)的储存的一方案;图39示出涉及本发明的数据处理系统中的信息授权认证代码(MAC)的存储的序列页的格式;图40示出涉及本发明的数据处理系统中的完整性检测值(ICV)的存储的组页面的格式;图41示出涉及本发明的数据处理系统中的完整性检测值(ICV)的检测的流程图;图42示出生成可扩充的MAC的值的过程和存储启用密钥块扩充的MAC的值在涉及本发明的数据处理系统中的过程;图43示出通过利用涉及本发明的数据处理系统中的使能密钥块(EKB)获得一个内容密钥的过程的一方案;图44示出被用涉及本发明的数据处理系统用到的装置密钥块(DKB)的结构;图45示出示例一个涉及本发明的数据处理系统中储存使能密钥块(EKB)和装置密钥块(DKB)的结构安排;图46示出通过利用涉及本发明的数据处理系统中的使能密钥块(EKB)和装置密钥块(DKB)获得一个内容密钥的处理过程的一方案。
实施例的详细描述数据处理系统概要图1图示了一个可应用本发明的数据处理系统的内容数据发布系统的一个示例。一个内容数据发布装置10传送各种加密的数据(包括内容数据或内容密钥、实施授权认证的特定的密钥等类似的数据)到数据处理装置20。然后,数据处理装置20在加密的条件下开始解码接收到的内容数据或内容密钥;然后在最终重新生成图片数据或音频数据或执行各种程序之前获得这些内容数据或内容密钥。在内容数据发布装置10和数据处理装置20之间交换数据通过网络服务线路(如互联网服务线路)或可发布的记录介质(如DVD、CD或其他方式)来执行。
数据处理装置20在数据储存装置(30)(如带有闪存等类似的存储装置的储存卡等)储存多个数据。数据储存装置30包含带有加密功能的存储装置,一个具体的例子时,存储装置包含一个“存储棒Memory Stick”(Memory Stick是sony公司的注册商标)。无论何时当从数据处理装置20向数据储存装置30转移数据或反向转移使,一个相互授权认证过程和一个数据加密过程被执行,以阻止未经授权的内容数据和密钥的再生被允许。
也可能在数据处理装置20中的各个装置之间转移内容数据,通过在部件装置之间执行一个相互授权认证过程和一个数据加密过程。
内容数据发布装置10包含一条互联网服务线路11、一个卫星广播站12、一条电话线路13、诸如DVD,CD等类似的记录介质。另一方面,数据处理装置(20)也可能是个人计算机(21)、PD(便携式装置)22、便携式电子装置23(象便携式电话、PDA个人数字助理等类似的)、数字数据再生装置25(利用记录和再生装置如DVD、CD等)、游戏终端单元24、存储卡(如“存储棒”(Memory Stick)(Memory Stick是sony公司的注册商标)等)。数据处理装置20的单个的装置分别可以经由通讯装置(如网络服务线路)获取从内容数据发布发布装置10的内容数据,或者可以从其他的数据处理装置获取,或者从以上提到的数据储存装置30获取。
图2示意性地图示了转移内容数据的过程的典型示例。图2所示的系统例示了一个在个人计算机100、再生装置200和存储装置300之间转移内容数据的典型示例。个人计算机100包含一个硬盘(HD)和一个内在地载入外部存储媒体(例如CD、DVD)的机制。
个人计算机100被接入如互联网和公共电话线路等网络服务线路。例如,个人计算机100可以通过网络服务线路从被服务提供商(图中未示)所有的主机接收各种数据(包括音频数据、图片数据和程序等),服务提供商通过EMD(电子音乐发布)提供数据服务;随后,按需求解码接收的数据并递送松据到再生装置25。当接收内容数据时,个人计算机100按服务提供商拥有的主机的要求执行一个授权认证过程和一个付费处理过程。而且,个人计算机100输出从CD或DVD接收到的各种数据到数据再生装置200。
存储装置300可以被装载到数据再生装置200和卸载。以上提到的“存储棒”(sony公司的产品和注册商标)自己作为一个存储装置300,包含一个如闪存的可重写的半导体存储器。
如图2所示,无论何时在上述的个人计算机100、数据再生装置200和存储装置300中转移数据、再生如音频数据,图片数据等数据、记录数据和再生数据时,一个相互授权认证过程被在数据转移装置之间执行,以阻止内容数据被未经授权的装置转移,这一过程会在稍后描述。而且,无论何时在个人计算机100和再生装置之间或在数据处理装置和诸如存储卡等存储装置之间转移数据或通过网络服务线路发布内容数据或通过各种存储介质发布数据时,内容数据的安全可以通过加密内容数据的到保证。[构建一个密钥发布系统的树状结构]现在参照图3,以下阐述一个分层密钥树状结构,它使得本系统能够向正当的授权装置发布加密密钥以加密以上提到的内容数据,例如,这些各种各样的加密密钥包括用来加密内容数据的内容数据密钥和用来正确地加密内容数据的内容数据密钥加密密钥。
参照图3的底部所示,标号0到15分别表示用以够成以上所述的用以再生或执行相关内容数据的数据处理装置20的各个装置,例如,这些装置独自地构成一个内容数据(音乐数据)再生装置。用另一句话说,分层树状结构的每一个枝叶与相应内容数据再生装置相对应。
或者在生产阶段、或者在从生产工厂交货的时候、或者在生产过程或从工厂交货后的某个时候,从0到15的每个装置存储一个从自身的枝叶到相应的根的为这一节点分配的节点密钥和包含有分层树状结构中各个枝叶的枝叶密钥的一个密钥集合(如图3所示)在一个预定的存储器中。在图3的底部所示的标数K0000到K1111分别表示为装置0到15分配的枝叶密钥。也已做出这样的安排,底部的第二个节点的从KR(根密钥)到K111的密钥相应的构成节点密钥。
例如,在图3所示的树状结构中,提供给装置0以枝叶密钥K0000和节点密钥K000,K00,K0,以及KR;提供给装置5以密钥K0101,K010,K01,K0,以及KR;提供给装置15以密钥K1111,K111,K11,K1,以及KR。图3所示的装置包含有从0到15的16个装置,因而,树状结构包含有在双向对称平衡的4个级别的单元。然而,树状结构也可以有更多的装置,也可以在各个不同的部分有不同的级别数量。
图3所示的为树状结构提供的每个装置包含有一个能够利用各种存储装置(包含各种记录介质,如利用内建的或者可卸载的闪有的存储卡、DVD、CD或MD等)的装置。另外,许多服务应用程序也可内建提供。基于联合存在的各种装置和服务应用程序,采用了用以发布内容数据和加密密钥的分层树状结构以应用本发明。
在各种装置和服务应用程序联合存在的系统中,也已做出这样的安排,图3所示的以点划线园圈起来的部分的装置0、1、2和3被安装为一个使用同一记录介质的群组。例如,经过加密处理过程之后,提供商交付加密的公用内容数据或者为以点划线园圈起来的装置所公用的内容数据密钥。在另一个例子中,每一装置输出与内容数据使用付费相关的加密数据到提供商或金融机构。另一方面,诸如提供商或指定的结算账户的金融机构(通常从单个装置接收数据或项它们发送数据)执行一个进程以发送整块的相关数据给装置0、1、2和3(如图3所示的以点划线园圈起来的作为一个单个群组的部分)。实际上,在图3所示的树状结构中有多个类似群组,此类通常向诸如数据提供商或机融机构等单个装置发送或接收数据的相关的部分自己作为一个发布信息数据的装置。
以上提到的节点密钥和枝叶密钥可能整个地被一个单个的密钥控制中心所控制。相应地,它也允许在提供商或指定的结算账户的金融机构方的,通常和单个的群组交换大量数据的信息数据发布装置能够控制节点密钥和枝叶密钥。在节点密钥或枝叶密钥泄漏或失窃的情形下,一个升级的进程就被密钥控制中心所执行,或者被相关的提供、或者被相关的金融机构。
就像图3所清楚表现的,在这一独到的树状结构中,以上提到的包含在一个群组中的三个装置0、1和2分别被赋予公共节点密钥K000,K00和KR。例如,通过利用节点密钥沟通结构,就可能为装置0、1和2唯一地提供公共内容密钥。例如,通过将公共持有的节点密钥K00自己安装为一个内容密钥,就可能安装这群一个对装置0、1和2唯一的内容密钥,而不用交付新的密钥。而且,通过经由网络服务线路或经由储存在记录介质中发布一个包含有被节点密钥K00加密的新的内容密钥(Kcon)的数值编码(K00,Kcon)给装置0、1和2(利用为单个装置所持有的公共密钥K00),就唯一使得装置0、1、2和3在请求内容数据密钥(Kcon)之前可以解码加密的加密的码值编码(K00,Kcon)。编码(Ka,Kb)表示了数据的K数(为Ka所加密)。
而且,在装置3持有的密钥K0011,K001,K00,K0和KR最终被骇客的非法分析所泻漏的情况下,为了保护包含有装置0、1、2和3的群组所接收和发送的数据,因此就非常必要使装置3从群组系统中被拆卸。为实现这点,就非常必要使节点密钥K0011,K001,K00,K0和KR相应为新的密钥K(t)0011,K(t)001,K(t)00,K(t)0和K(t)R所替换,而且也必要知会装置0、1和2更新的密钥。字符K(t)aaa表示新的密钥更新于先前密钥Kaaa的第(t)代。
其次,发布更新密钥的进程描述如下对密钥的更新只通过经由网络服务线路交付一个如图4中A所示的包含有一个称之为使能密钥块(EKB)的数据块的表格或经由储存在记录介质中给装置0、1和2而执行。EKB包含了发布升级密钥给和如图3所示的构成树状结构的各个枝叶相应的装置。以上的EKB也可称之为密钥更新块(KRB)。
如图4中A所示,以上提到的EKB包含有这样一个数据块,它有一个数据结构,其中只有装置请求的更新节点密钥被更新。图4中A所示的EKB表示了这样一个数据块,它共享图3所示的密钥树状结构的一部分,发布升级装置0、1和2中的第“t”代节点密钥。如图3清楚表明的,装置0和1分别请求更新节点密钥的K(t)00、K(t)0和K(t)R,而装置2请求更新节点密钥的K(t)001、K(t)00、K(t)0和K(t)R。
如图4中A所示,以上提到的EKB包含多个加密密钥。底层的加密密钥对应着Enc(K0010,K(t)001),对应着为装置2所拥有的以上提到的枝叶密钥K0010所加密的升级节点密钥K(t)001。通过应用自身的枝叶密钥,装置2也可以解码加密的密钥从而获得经过升级节点密钥K(t)001。进一步,通过使用升级的节点密钥K(t)001,装置2也可以解码图4中A所示的第二底层的加密的密钥Enc(K(t)001和K(t)00),从而获得经过升级的节点密钥K(t)00。通过这种方式,装置2顺次解码了图4中A所示的第二最上层的加密的密钥Enc(K(t)00和K(t)0)。从而也解码了图4中A所示的最上层的经过升级的节点密钥K(t)0和加密的密钥Enc(K(t)0和K(t)),因而获得经过升级的节点密钥K(t)R。另一方面,在装置K0000和装置K0001方面,节点密钥K0000不包括在更新的对象中,因而只有K(t)00、K(t)0和K(t)R被请求为更新的节点密钥。在另一方面,装置K0000和装置K0001分别解码图4中A所示的第三最上层的加密的密钥Enc(K000和K(t)00),从而获得节点密钥K(t)00。
装置K0000和装置K0001更进一步地解码图4中A所示的第二层的加密的密钥Enc(K(t)0和K(t)0),从而分别获取经过升级的节点密钥K(t)0。装置K0000和装置K0001更进一步地解码图4中A所示的作上层的加密的密钥Enc(K(t)0和K(t)R),从而分别获取经过升级的节点密钥K(t)R。通过这种方式,就可能使得装置0、1和2分别获取经过升级的节点密钥(包括K(t)001、K(t)00、K(t)0和K(t)R)。图4中A所示的索引分别表示了用作解码密钥的节点密钥和枝叶密钥的绝对地址。
并不要求更新图3所示的密钥树状结构的顶层相应的节点密钥K(t)0和K(t)R),加入只要更新节点密钥K00,通过施加图4中B所示的EKB,就可以发布经过升级的节点密钥K(t)00到装置0、1和2。
图4中B所示的EKB可以应用到新的被特定的群组所公共拥有的内容数据被发布的情形,举一个具体的例子,假定图3所示的以点划线园圈起来的群组的装置0、1、2和3分别使用某种记录介质,并且分别不同的新的内容数据密钥K(t)。在这种情形下,利用从对装置0、1、2和3同样的节点密钥K00升级来的节点密钥K(t)00,通过加密一个和如图4中B所示的EKB相连的经过升级的公共内容数据密钥K(t)con,一个数据Enc(K(t)00和K(t)con)就被产生。作为这一发布过程的结果,这样一个内容数据密钥就可以作为数据发布,这一数据不能为包含装置4的群组中的其他装置所解码。
也就是说,通过使得装置0、1和2能够通过应用经由利用EKB产生的K(t)00解码以上提到的加密字符,就可能获得在相应的“t”瞬间获得内容密钥K(t)con。[发布对EKB有用的内容密钥]图5给出了装置0(已经接收到通过应用K(t)00从一个升级的公共内容密钥K(t)con加密的数据Enc(K(t)00和K(t)con))执行的一个进程作为产生在相应的“t”时刻生成内容密钥K(t)con和分别经由记录介质接收到的图4中B所示的EKB的进程的例子。具体的说,它举例说明了通过应用EKB加密的信息数据已经被转换为内用数据密钥K(t)con的情形。
如图5所示,利用储存在记录介质的相应的“t”代的EKB和一个先前储存在装置0自己上的节点密钥K000,通过执行一个于以上描述同样的EKB进程,装置0生成一个节点密钥K(t)00。而且,通过施加解码的经过升级的节点密钥K(t)00,装置0通过施加装置0自己唯一拥有的枝叶密钥K000加密经过升级的内容密钥K(t)con,然后,为了以后利用经过升级的内容密钥K(t)con,装置0储存经过加密的升级过的内容密钥K(t)con在自身上。[EKB的格式]图6例示了EKB的格式。相应的识别成分的版本(601)表示了EKB的版本。版本包含了这样一个功能——指明相应的标识最新的EKB的功能和内容数据之间的关系。深度标示相应的作为EKB发布的目标的装置的分层密钥树的层树。数据指针(603)代表一个表示EKB中数据块的位置的指针。标签指针标示标签部分的位置。签名指针标示签名位置。
数据部分(606)储存有包含等待升级的加密节点密钥的数据。例如,数据部分(606)储存和图5所示的经过升级的节点密钥相关的加密密钥。
标签指针(607)标示储存在数据部分(606)的经过加密的节点密钥和枝叶密钥之间的位置关系。接下来,参照图7,提供标签的规则描述如下图7例示了在先前参照图4中A描述为数据的EKB的交付。这一数据通过表格对应图7中b所示。加密密钥包含的顶节点地址被假定为顶节点地址。在本例中,由于由于一个经过升级的根密钥的密钥K(t)R包含在加密密钥中,顶节点地址就变成KR。在本例中,在顶层的数据Enc(K(t)00和K(t)con)在图7中a所示的分层密钥树的位置中。相应Enc(K(t)00和K(t)con)的下一个数据,处在一个相对低些的位置,在分层密钥树中表示为在先前数据的左面。当上面的数据有时,标签的值是0,当上面的数据没有时,标签的值是1。标签被假定为左标签和右标签。由于左面的数据是做上面的数据Enc(K(t)001和K(t)00),左标签就变成0。而且,由于在最上层的数据的左面没有数据,有标签就变成1。通过这种方式,所有的数据都被提供一个标签,从而形成一个如图7中c所示的数据阵列和标签阵列。
以上提到的标签被提供以指定分层密钥树状结构的数据Enc(Kxxx,Kyyy)的实际位置。储存在数据部分的密钥数据Enc(Kxxx,Kyyy)表示对应多个加密的密钥数据。因而,也做出安排使得加密密钥的实际位置可以通过应用标签所表明。另外,在利用以上所述的标签的情形下,通过以上参照图4所述的应用节点索引兼容加密的数据,也可能构建以下所示的数据结构。
0Enc(K(t)0,K(t)root)00Enc(K(t)00,K(t)0)000Enc(K(t)000,K(t)00)尽管如此,当通过涉及以上的节点索引应用以上的数据结构时,冗长的数据的体积就会增加,因而,利用这样一个冗长的数据通过网络服务线路发布并不理想。另一方面,通过利用以上提到的标签作为标示密钥的实际位置的方式,就可能通过应用少量的数据标示相关密钥的实际位置。
参照图6,EKB的格式在下面作进一步的描述。签名包含有被发行EKB的控制中心、内容数据提供商或指定的金融机构等所执行的电子签名。接收EKB的装置通过签名验证接收到的EKB确实对应的有权发布的经过验证的正当的EKB的发行商。[通过应用EKB发布内容密钥和内容数据]在以上所述的本发明的实践形态中,一个与EKB一道发布内容数据的例子以被详尽描述。以下的描述进一步参照这些一个经由用加密密钥加密的法布内容数据的结构安排;一个施加内容密钥加密密钥加密的内容密钥;一个以EKB加密的内容密钥加密密钥。
图8标明了单个数据的结构。在图8所示的结构中,Enc(Kcon,内容)801对应一个包含被内容密钥(Kcon)加密的内容数据的数据。Enc(KEK,Kcon)802对应一个包含有施加内容密钥加密密钥(Key Encryption Key,KEK)的内容密钥(Kcon)的数据。Enc(KEB,KEK)803对应一个包含以EKB加密的内容密钥加密密钥(KEK)的数据。
在本例中,内容密钥加密密钥(KEK)可能包含如图3所示的节点密钥(K000,K00)、或者根密钥(KR)自身、或者节点密钥(K000,K00),它也可能包含一个被根密钥(KR)加密的密钥。
图8在(b)中标明了这样一个示例,多个数据被记录在记录介质中,在其中这些内容数据分别利用一个相同的Enc(KEB,KEK)(805)。在这种结构中,也可以添加数据一个指向Enc(KEB,KEK)的表示联接,而不用为每个数据添加同样的Enc(KEB,KEK)。
图9示例了这样一个结构安排,内容密钥加密密钥(KEK)通过更新图3所示的节点密钥K00转换为一个升级的节点密钥K(t)00。在这种情形下,假定在图3所示的点划线圆圈起来的一组中的装置3由于泄漏密钥被废除,剩下的装置0、1和2可以如图9(a)所示通过使得它们可以接收EKB,经由发布而分别获取内容数据;获取一个包含一个通过施加如9(b)所示的内容密钥加密密钥(KEK=(t)00)加密的内容密钥的数据;获取一个包含有通过施加图9(a)所示的内容密钥所加密的内容数据的数据。
装置0的序列的解码进程如图9右面所示。首先,装置0通过利用自己的枝叶密钥K000从接收到的EKB中获取一个内容密钥加密密钥(KEK=K(t)00)。随后,装置0通过利用获取的加密密钥K(t)00的解码进程获取一个内容密钥(Kcon)。随后,装置0通过施加内容密钥(Kcon)进一步解码内容数据。在完成这些进程之后,装置0就可以利用解码的数据。装置1和装置2也可以由相互的不同的进程通过处理EKB而获取内容密钥加密密钥(KEK=(t)00),从而使它们能够利用解码的内容数据。
在另一方面,即使接收到和EKB相关的数据,图3中属于另一组的装置4、5、6…不能通过施加自身的枝叶密钥和节点密钥来获取内容密钥加密密钥(KEK=K(t)00)。相似的,以上提到的废除的装置3不能施加自身的枝叶密钥和节点密钥来获取内容密钥加密密钥(KEK=K(t)00)。更具体地说,只有那些得到正当授权认证的装置才能解码和利用内容数据。
在通过利用EKB来执行发布以上的内容密钥时,只有得到授权的人才唯一可能安全正当地通过减少数据体积的方式解码和发布加密的内容数据。
以上提到的EKB、内容密钥和加密的内容数据可以经由网络服务线路安全发布。在本例中,也可以通过储存在DVD、CD等记录介质中来向各个用户提供以上的EKB、内容密钥和加密的内容数据。在本例中,通过利用在解码储存在记录介质中的加密内容数据之前经由解码储存在同一储存介质中EKB生成的内容密钥,就可能实现发布只能唯一为施加经过认证的正当的用户拥有的枝叶密钥和节点密钥才能利用的经过加密的内容数据的发布。换句话说,可能在一个简单的系统结构上实现一个以限制用户方的有效装置的内容数据发布系统。
图10例示了一个储存以上提到的EBK和加密的内容数据联合出储存的记录介质的结构。在图10所示的例中,多个从C1到C4的数据以及包含有和相应的各个内容数据对应的EKB的数据联合储存在某个记录介质。另外,另一个和版本M相应的EKB也被储存在这一记录介质中。例如,EKB-1用以生成一个内容数据1中加密的内容密钥Kcon-1。类似的,EKB-2用以生成一个内容数据2中加密的内容密钥Kcon-2。在本利中,一个和版本M相应的EKB-2也被储存在某一记录介质中。其余的内容数据C3和C4分别对应一个EKB-M,因而通过解码EKB-M,就可能获取和内容数据C3和C4对应的内容密钥。另一方面,由于以上提到的EKB-1和EKB-2不储存在记录碟中,因而就有必要通过利用如网络服务线路或记录介质之类的新的发布方式获取用以解码的各个内容密钥。[分层树状密钥结构的编目分类]以上的描述已经参照了多种为图3所示的分层树状密钥结构的提供密钥(包括跟密钥、节点密钥、枝叶密钥、内容密钥、认证密钥、ICV生成密钥等)的系统,也已参考了通过加密联合EKB一起加密程序代码和数据以发布程序代码和数据的系统。
随后,通过划分归类定义节点密钥和归入目录的装置的分层树状密钥结构,用以有效更新以上提到的密钥和有效地发布加密的密钥和数据的结构安排描述如下图11例示了一个编目分类的分层树状密钥结构。在图11中,一个根密钥Kroot1101被安装在分层树状密钥结构的最顶层。一个节点密钥1102被安装在中间层,而一个枝叶密钥1103倍安装在底层。每一单元装置包含有从枝叶密钥到根密钥的自己的枝叶密钥以及一系列的节点密钥和根密钥。
例如,对应从最顶层第M层的节点被安装上为目录节点1104,明确地说,对应第M层的每个节点被确定为特定目录的装置设置节点。那些在M+1层一下的节点和枝叶距顶节点较M层的节点低一层,分别构成节点和包含在相应的目录的装置的相关的枝叶。
例如,一个“存储棒”(“memory stick”是sony公司的注册商标)的被设定在图11所示的对应第M层的一个节点1105。相应地,在M层以下的节点和枝叶被确定为只为包含含有“存储棒”的各种装置的目录所使用的节点和枝叶。用另外一句话说,在1105节点以下的节点和枝叶被定义为定义和在“存储棒”目录之中的装置相关的节点和枝叶的集合。
而且,也可以设置在第M层以下的相应的几个层中的一个为子目录节点1106。例如,如图11所示,一个称之为只再生的装置的节点被设置在一个低于与以上提到的目录“存储棒”相应的节点1105两级的节点,作为一个包含在利用“存储棒”的装置的目录的一个子目录节点。进一步,一个和包含在只再生装置目录下的有音乐再生功能的电话相应的节点1107被设置在节点1106(对应只再生装置,被深是一个子目录节点)之下。更进一步地,也可以在节点1107下包含有音乐再生功能的目录中设置一个PHS(个人手持系统)节点1108和一个手持电话节点1109。
进一步,不只是装置的类型,也可以基于为特定的生产商、内容数据提供商和特定的金融机构所单独控制的节点的目录和子目录,用另一句话说,就是基于一个处理单元、一个控制单元,或者基于提供的服务,或者某一可选的单元(这些单元因而对应某一“实体”)。例如,当某一目录节点被设置为顶为某一游戏机生产商销售的游戏机XYZ所唯一所有的节点时,就可能通过储存节点密钥和顶层以下的相应的层的枝叶节点来销售这一游戏机XYZ。从而,发布加密的内容数据或者发布更新各种加密密钥就可以通过生成包含这些节点密钥和枝叶密钥的EKB来执行。更具体的说,只有可以应用到定点节点以下的装置的数据可以被发布。
如上所需的,通过建立这样一个系统,相关某一特定的目录或子目录的节点包含在定点节点以下的节点,被定义为顶节点,就可能使得生产商和内容数据提供商可以控制某一顶节点,以独立地生成包含顶节点的目录或子目录的EKB,以发布给属于顶节点以下的节点的装置,因而使得可能不更新定点节点而更新相关的密钥,而且不用影响整个的属于本节点以下其他目录的装置。[应用简化(EKB)的密钥发布系统]以以上描述的图3所示的树状密钥结构为例,例如,当付送一个内容密钥到预定的装置(枝叶)时,以装置拥有的枝叶密钥和节点密钥作为密钥发布的目标,一个可解码的EKB被生成以付送到目标。例如,如图12所示的树状密钥结构中,当传送一个内容密钥给装置a,g和j以合成枝叶时,一个可以为个别的装置a,g和j的节点所解码的EKB被生成以用于发布。
例如,这样一个情形假定,内容密钥K(t)con通过施加升级过的根密钥K(t)root加密,然后与EKB联合在一起发布。在这种情形下,使用图12(b)所示的枝叶密钥和节点密钥,执行一个EKB进程以请求内容密钥K(t)root,然后通过执行一个施加获取的经过升级过的根密钥K(t)root解码内容密钥K(t)con的进程,获取内容密钥。
图13标示了以上例子的EKB的结构。图13所示的EKB和前面参照图6描述的EKB的格式一样。图13所示的EKB包括加密密钥数据和相应的标签。就像前面参照图7所叙的,加入在左方或右方有任何数据,标签指示为0,否则加入两个方向都没有数据的话,标签指示为0。
在接收到EKB之后,基于加密EKB的密钥和相应的标签,装置在请求更新上一层的节点的密钥之前顺次执行一个进程以解码加密密钥。如图13所示,从根到枝叶的深度的数越大,包含在EKB的数据的体积就越大。具体地说,由于深度相关装置(枝叶)的数量而增长,因而,当更多的装置成为密钥发布的目标时,EKB中数据的体积也随之增加。
一个可以减少EKB的数据的体积的系统结构被描述如下,图14示例了这样一个与密钥发布装置相应的简化了的EKB的结构。
在图13的情形中,假定了这样一种情况,内容密钥被传送到装置a,g和j以组成枝叶。如图14中(a)所示,这样一个只有密钥发布装置所组成的树状密钥结构就被构建成了。新的树状密钥结构可能是从Kroot到Kj只含有单个的分支而没有其他的分支。通过提供一个唯一地指向从Kroot到Ka和Kj之间的K0的分支指针,就形成了一个如图14中(a)包含有两个分枝的树状密钥结构。
如图14中(a)所示,一个只有一个节点K0的简化的树状密钥结构就被生成。基于这个简化的树状密钥结构,一个简化的EKB就被生成以用于发布升级的密钥。图14中(a)表示了这样一个通过删除不必要的节点(通过选择包含双分支类型的树状结构构成EKB的路径作为一个可解码的底层的终端节点或枝叶)而重新构建的分层树状密钥结构。这样一个用来发布经过升级的密钥的EKB仅仅基于这样一个相应于重构的分层树状密钥结构的节点和枝叶的密钥而构建。
先前的参照图13描述的EKB储存所有的从各个枝叶a,g和j到Kroot的经过加密的密钥的数据。而以上提到的简化的EKB储存经过解码的用来构成简化树状密钥结构的节点的数据。如图14中(b)所示,以上提到的标签包含3个数位,其中第一和第二数位分别和图13所示的例子表示相同的含义,当左或右右有任何数据时,指定为0;当左右都为数据时,指定为1。第三个数位指示是否有一个加密密钥储存在EKB中,当任何数据储存其中时,第三数位指示为1,而当没任何数据时,它指示为1。
对照图13所示的结构,这个图14中(b)所示的经由数据通讯网络服务线路或储存有这一数据的记录介质发布给装置的EKB的体积较先前的EKB急剧减少。如图14所示,在接收到EKB的情况下,通过唯一地解码相应后续的标签的第三数位储存为二近制1的部分的数据,个体的装置被允许解码预定的加密密钥。例如,装置a通过一个密钥Ka解码一个加密数据Enc(Ka,K(t)0),然后请求节点密钥K(t)0。随后,装置a通过应用节点密钥K(t)0解码加密数据Enc(K(t)0,K(t)root),从而请求一个解码的数据K(t)root。另一个装置j通过一个枝叶密钥Kj解码一个加密数据Enc(Kj,K(t)root),从而请求一个解码数据K(t)root。
如上面所述,通过最初形成一个简化的新的树状密钥结构,它通过唯一利用构建密钥树状结构的枝叶密钥河节点密钥,只包含相应的作为根据EKB的世代的发布对象的装置,从而可能生成一个包含较小数据体积的EKB,从而使得可能有效地发布EKB的数据。
以上提到的简化分层树状密钥结构在控制EKB结构的系统中可以非常有效地被操作,一下描述它的每一个实体(“entity”)。术语“entity”代表一个包含多个选自于用来构建用来发布相关的密钥的树状密钥结构的节点和枝叶的集合。这一实体可能是和相关的种类的装置一起提供的集合。另外,这一实体作为多个形态的集合而建立,这些形态包括如相关装置的装置的制造商、内容提供商和指定的结算账户的金融机构等控制单元,各个再生的处理单元、控制单元、或者服务提供单元等相互公共存在的单元。每一实体包含有一个可以划分到同一目录的装置的集合。例如,有可能在属于特定的选定的实体中的装置中生成和发布简化的、可解码的EKB,通过重建经过多个实体的顶节点(子路径)简化的以上提到的树状密钥结构而生成一个EKB的方式。控制实体的系统的每一单元将在以后叙述。
也可能储存EKB在如光盘、DVD或CD等类似的数据记录介质中。例如,有可能构建这样一个系统,为每一装置提供这样一个数据记录介质,它储存有EKB(包含有一个由以上提到的加密数据密钥的数据部分和用作标示以上包含有加密的密钥数据的分层树状密钥结构的位置的标签部分),而且还储存有如被以上描述的升级过的节点密钥加密的内容数据信息数据。有可能使每一个装置顺次分离出包含在EKB中的经过加密的密钥数据;而且,也可能使得每一装置在请求内容数据之前请求特定的用以解码内容数据的密钥。也允许通过如互联网服务等网络服务线路发布EKB。随后,参照在有加密功能的储存介质(如存储卡,典型的如“存储棒”——一种产品及sony公司的注册商标)和数据处理装置之间交换数据的处理过程,一下描述一个利用一个经由EKB发布的特定的加密密钥应用以上描述的分层密钥树状结构的一个处理系统。
图15给出了一个说明数据再生装置和储存如如存储卡等由数据加密功能的存储装置(它们分别能够相互交换数据)的详细结构的原理框架图。
如图15所示,存储装置300包含以下各个方面一个主模块31、一个通讯接口单元32、一个控制模块33、一个闪存34、一个闪存控制模块35。详细的各模块的描述如下[控制模块33]如图15所示,控制模块33包含以下各个方面一个随机数生成单元50、一个储存单元51、一个密钥生成/算法单元52、一个相互授权认证单元53、一个加密/解码单元54以及一个控制单元55。控制模块33包含有一个整合的唯一用作某一单个芯片或类似的电路。而且,控制模块33包含一个多层结构,它包含一个借助由铝层制作成的样本层之间的内在的储存单元。而且,控制模块33还含一个窄幅的操作电压和一个窄带的操作频率,因而进而有了防窜改的能力以防止由外部原因的非法阅读数据。在接到生成随机数的命令的情况下,随机数生成单元50生成一个64位(也就是8字节)的随机数。
储存单元51包含一个非易变的存储器(例如,由EEPROM(可电擦写可编程只读存储器))构成)。例如,其中储存有各种数据,包括为授权认证所需要的数据。图16是特地用于说明储存在储存单元51中的数据的。如图16所示,储存单元51储存了授权认证数据IK0到IK31、装置标示数据Idm以及存储器储存密钥数据Kstm。
授权认证数据IK0到IK31各个用于使存储装置300能与相应的再生装置200共同认证相关数据。如以后要讲到的,无论何时它们之间执行认证操作时,IK0到IK31中的一个被随机选定。也已做出这样的安排,无论以上的认证密钥数据K0到IK31还是存储器储存的密钥数据Kstm都不能被除开存储装置300以外的装置读出。如以后要讲到的,当执行相互授权认证操作时,装置标示数据Idm被读出以付送到相应的再生装置200。如以后要讲到的,当储存一个用来加密闪存34中的内容数据的经过加密的密钥数据CK时,存储器储存的密钥数据Kstm被利用到。
通过执行各种算法操作(如MAC(信息认证码)),以上的密钥生成/算法单元52生成密钥数据。为了实施MAC处理操作,例如,FIPSPUB46-2描述的DES(数据加密标准)用作“块加密算法”。以上的MAC处理操作与单向Hash函数一样,压缩一个长度任意的数据到一个有固定长度的数据,其中函数的值依赖于私钥。
在从再生装置200向闪存34写音频数据之前,以上提到的相互授权认证单元53和相应的再生装置200执行一个授权认证处理。类似的,在从闪存34读出数据付送到再生装置200之前,相互授权认证单元53和再生装置200执行一个授权认证处理。而且,相互授权认证单元53在通过施加储存在储存单元51中的数据执行相互授权认时,执行以上提到的MAC处理操作。
基于以上提到的如DES、IDEA或MISTY等“块加密算法”,加密/解码单元54执行一个加密操作。加密/解码单元54采用以下方式FIPSPUB81(DES操作模式)所规定的ECB(电子码书本)模式和CBC(加密块链)模式。而且,加密解码单元54通过施加以上描述的ECB模式和CBC模式而基于如DES、IDEA和MISTY等块解码算法执行一个解码操作。在通过施加ECB和CBC模式进行块加密和解码的处理过程中,加密/解码单元54通过施加一个特定的密钥数据而加密和解码特定的数据。以上提到的控制单元55整体地控制以上的随机数生成单元50、储存单元51、密钥生成/算法单元52、相互授权认证单元53和加密/解码单元54。闪存34包含一个有能力记录32兆字节的存储器。只有当以上提到的相互授权认证单元53验证再生装置200和存储装置300已经通过在它们之间执行的相互授权认证时,从再生装置200发送的诸如音频数据和图片数据等各种数据才被写入闪存34。同样的,有当以上提到的相互授权认证单元53验证再生装置200和存储装置300已经通过在它们之间执行的相互授权认证时,音频数据和图片数据才被正当地从存储装置300读出以付送到相应的再生装置200。
随后,可储存在闪存34中的数据和相关的格式描述如下。如图17所示,闪存34储存再生控制文件和多个磁道数据(可再生数据)文件。再生控制文件包含控制磁道数据文件再生的数据。每一个磁道数据文件包含相应的磁道数据(音频数据)。在应用本发明的实例的情形下,每个磁道数据蕴涵相对一个音乐曲目的音频数据。以下的描述参照储存音频数据在闪存34中的情形。
图18标示了再生控制文件的组成。图19标示了一个音乐曲目的ATRAC-3数据文件的组成。再生控制文件包含16K字节的固定长度。ATRAC-3数据文件包含一个引导属性标题和跟着的真正加密的音乐数据。引导属性标题也包含16K字节的固定长度,有和再生控制文件类似的组成。
再生控制文件包含以下各个组份一个标题,一个叫做NM2-S的2个子节的编码储存器,以音乐曲目顺序的回放表格,以及一个整体的加进储存卡的附加的数据INF-S。数据文件的导属性标题包含一个标题,叫作NM1的1字节的编码音乐曲目,叫作NM2的2字节的编码音乐曲目,磁道数据TRKINF(例如,包含磁道密钥数据),分段数据数据PRINF,以及加到磁道的附加数据INF。标题包含如分段的总数,属性的名称,附加数据的大小等数据。
接着属性标题的是相应于ATRAC-3数据的音乐数据。音乐数据划为16K字节一个部分。标题被加入到每块数据的开头。标题包含用于解码加密数据的初始值。只有包括ATRAC-3数据文件中的音乐数据等数据被进行加密操作,而再生控制文件和标题的数据不进行加密操作。
图20标示了以上提到的有一个簇(一块=16K字节)的再生控制文件PBLIST的详细的数据组成。图20中A所示的标题包含32字节。除开如图20中B所示的标题部分,图20中B所示的余下的部分再与那些部分一起记录,包含为整个储存卡提供的名称NM1-S(256字节),另一个名称NM2-S(512字节),经过加密的内容密钥(CONTENTS KEY),MAC,S-YMDhms,控制再生顺序的表格TBKTTBL(800字节),加入到整个储存卡的附加数据INF-S(14720字节),以及一部分包含在标题的数据。也已做出这样的规定,各类单个数据组的标题部分相应安置到再生控制文件的一个预定的位置。
参照再生控制文件,从最开始部分到图20A所示的由(0×0000)和(0×0010)所表示的32字节部分组成标题。从最前面的单元的包括每16字节的单元被称之为一个“槽”。为再生控制文件的第一和第二个槽提供的标题被从最前面的位置加入顺次有特定的含义、功能和值的数据(如下面所述)。指示为“保留”的数据表示一个还未定义的数据。通常,标示为0(0×00),但是无论写入的内容是什么,“保留”的数据被忽略。在将来的版本中任何修改都有可能。在这一部分写入数据被禁止。除非被使用,标示为“可选”的部分完全和以上提到的“保留”数据得到相同的对待。
*BLKID-TLO(4字节)含义BLOCKIDFILEID功能一个标示再生控制文件的最前部的值值固定值=“TL=0”(例如,0×544C2D30)*MCODE(2字节)含义MAKERCODE功能标示生产商和记录装置的产品型号值上面的10字节(生产商代码)下面的6字节(产品型号代码)*REVISION(4字节)含义PBLIST的重写轮数功能每重写再生控制文件一次增加值初始为0,按加1增加*SN1C+L(2字节)含义指示写在NM1-S域中的储存卡的名称(1字节)的属性功能指示每一字节的可用的字符代码和语言代码值字符码通过如下所示的上面的一个字节辨别字符00没有设定字符代码00只被处理为二进制数01ASCII(美国信息交换标准码)02ASCII+KANA03修正的8859-181MS-JIS82KSV5601-1989 83GB(英国)2312-8090S-JIS(日本声音工业标准)和EBUTech3258规则一致,使用下面的一个字节,语言代码(L)辨别语言。
00没有设定语言代码08德语09英语 0A西班牙语0F法语15意大利语 1D荷兰语65朝鲜语 69日语 75中文加入为由提供数值的话,语言代码整个的重设为0。
*SN2C+L(2字节)含义指示写在NM2-S域中的储存卡的名称(1字节)的属性功能指示每一字节的可用的字符代码和语言代码值和以上参照SN1C+L描述的相同*SINFSIZE(2字节)含义指示写在INF-S域中的整个储存卡的附加数据的整体大小功能假如在一个16字节的单元中没有数据大小的描述,以上SINFSIZE的值被重设为0值大小从0×0001到0×39C*T-TRK(2字节)含义磁道的总数目功能指示磁道的总数目值从1到0×3190(最大400个磁道)假如没有提供数值,以上的T-TRK的值被重设为0*VerNo(2字节)含义格式的版本号功能上面的字节指示主的版本号下面的字节指示从版本号VerNo也被用作指示是否一个发布的数据是否有相应版权,也就是说,是否发布的数据需要利用基于以上在分层树状密钥结构中的EKB数据发布密钥。
值例如,0×0100(1.0版)0×0203(2.3版)以下的叙述参照一个卸载跟着以上描述的标题的后面的域的数据(如图20中B所示)*NM1-S含义相关整个储存卡的一个字节的名称功能无论何时终止一个被一个字节的字符代码指示的有可变长度的数据(最大256),终止码(0×00)必须写。
计算大小必须从终止码开始。假如没有给出数据,至少一个从最开始(0×0020)到空值的数据必须被一最少1个字节储存。
值各种字符代码类型*NM2-S含义相关整个储存卡的2个字节的名称功能无论何时终止一个被2个字节的字符代码指示的有可变长度的数据(最大512),终止码(0×00)必须写。
计算大小必须从终止码开始。假如没有给出数据,至少一个从最开始(0×0020)到空值的数据必须被一最少2个字节储存。
值各种字符代码类型*EKB Version(4个字节)含义指示以上所述的在分层树状密钥结构中的EKB所提供的内容密钥的代数,或者指示EKB恩件的名称功能指示一个EKB以获得一个正当的在以上所述的分层树状密钥结构中的EKB所提供的内容密钥。
值从0到0×FF*E(Kstm,Kcon)(8个字节)含义包含有用来加密各个内容数据的内容密钥的数据,其中数据在通过施加一个储存卡的储存密钥(Kstm)加密内容数据而生成。
功能用来加密数据值从0到0×FFFFFFFFFFFFFFFF*E(KEKn,Kcon)(8个字节)含义包含有用来加密各个内容数据的内容密钥的数据,其中数据在通过施加一个以上所述的分层树状密钥结构中的EKB提供的密钥加密密钥(KEKn)加密内容数据而生成。
功能用来加密内容数据值从0到0×FFFFFFFFFFFFFFFFFF*C MAC
(8个字节)含义用来检查版权数据的窜改的值功能用来检查窜改行为的值,其中这个值基于储存在以上的再生控制文件中的数据、指示诸如记嘴终数据的内容数据处理过程的时间和日起、以及其他数据而生成。假如时间/日期数据S-YMD已经被窜改,它就表明在检查C_MAC
时已经进行了窜改数据的动作,从而阻止了复制数据的操作。
值从0到0×FFFFFFFFFFFFFFFF*MGR含义内容密钥的类型功能当是0×00时,就有两种内容密钥,包括密钥Kcon和E(KEKn,Kcon)。当指示为0c01时,只提供内容数据E(KEKn,Kcon)。
值从0到0×01*S-YMDhms(4个字节)(可选)含义被一个含有可靠的时钟的装置所记录的年。月,日,时,分和秒功能用来鉴别最后处理内容数据的日期的值,如记录数据的作后的时间和日期等。
值第25到31数位年0到99(1980到2079)第21到24数位月0到12第16到20数位日0到31第11到15数位小时0到23第05到10数位分0到59第00到04数位秒0到29(每单元2秒)这一S-YMDhms数据依据内容数据的处理而更新,例如,在记录内容数据时。更进一步地,给予更新的数据,以上提到的C_MAC
也被更新,然后被储存在存储器中。
*TRK-nnn含义用来复制的ATRAC-3数据的文件的序号功能描述在TRKINF中的Fno值从0到400(0×190)*INF-S含义相关整个储存卡的附加数据,其中附加数据包括照片、单词、备注等功能伴随标题的长度可变的附加数据多个相互各异的附加数据可以通过为每个附加数据提供一个ID码和一个预定的数据大小而排列。每一个附加数据分别被提供一个最小包含16个数位的标题和一个整数两倍长的4个字节的单元。详细的描述见后面。
值参照附加数据的组成为了构建再生控制文件的最后一个槽,和储存在标题相同的BLKID-TLO、Mcode、和Revision被写入。
当操作一个用户的音频装置时,可能有这样一种情况,以上提到的储存卡被故意抽出或电源被切断,因此,就需要在恢复正常操作时检测这一意外发生的情形。如上所述,已经作出这样的安排,以上所述的“修正Revision”被写入到每一块的最前部和最后部,然后任何时候重写时,Revision的值增加1。假如在处理块的过程中有任何意外的中止发生,Revision在最前和最后的相互不一致,从而使得可以检测意外的中断操作。由于提供了两个“修正Revision”代码,就有很高的几率检测意外的中断操作。假如意外的中断操作被检测到的话,就生成一个警告(如通过显示错误信息)。
而且,由于固定值BLKID-TLO被插入到每一块(16KB)的最前部,这个固定的值可以在出现意外时用作标注FAT的修复程度。明确地说,就是通过检测在每一个块的最前部的固定值,就可以辨认文件的类型。而且,由于固定值是被双双写进标题和各个块的中断部分,也就有可能检测固定值的可信度。也允许双倍记录和再生控制文件PBLIST相同的数据。
和磁道数据控制文件相比,ATRAC-3数据文件包含一个相当大的数据体积。ATRAC-3数据文件被提供以块数目BLOCKSERIAL。在ATRAC-3数据文件中,通常在储存卡中有许多文件,因而,除非在通过CONNUM0辨认内容数据之后加入块数目BLOCK SERIAL,否则使得当FAT乱了时,难以恢复文件。换句话说,由于一个ATRAC-3数据文件包含有很多块,每一块可能和其他分离而处理,因此,为了识别构成统一的ATRAC-3数据文件的块,就采用了CONNUM0,而且在ATRAC-3数据文件中的序修改和降低通过块数目BLOCK SERIAL而决定。
同样的,在有逻辑错误在文件中产生任何偏差而没有导致FAT的破坏的情况下,为了写在文件中的装置制造商的产品型号可以被指明,制造商的编码Mcode被记录在每一块的最前面和最后面。
图20中AC标示了包含附加数据的数据的结构。显示在下面的标题被写在附加数据的最前部。长度可变的数据被卸载接着标题部分的部分。
*INF含义域ID功能固定值指示包含附加数据的数据的最前部分值从0到0×FF*SIZE含义单个附加数据的数量功能数据的大小是自由的。但是,数据的大小必须是4字节整数的倍数。数据大小必须最小为16字节。假如在数据的结束点之外生成任何多余的部分,超过的部分必须被填为空码(0×00)。
值从16到14784(0×39C0)*MCODE含义生产商代码功能这一代码分辨性地表明生产商的名称和用来记录数据的装置的产品型号。
值上面的10字节指示生产商代码下面的6字节指示产品型号代码*C+L含义指示写入到数据文件最前面部分开始的第112个字节相关的域中的字符的属性功能通过应用每个字节指示可用的字符代码和语言代码值和以上所述的SNC+L的值相同*DATA含义包含附加数据的单个数据功能单个数据被指定为长度可变的数据。实际数据的最前面部分总是从第12字节开始,其中数据的长度最少为4个字节,而且必须始终是4个字节的整数的倍数。假如在数据的结束点之外生成任何多余的部分,超过的部分必须被填为空码(0×00)。
值依据内容,值被个别地定义。
图21例示了一个相应于ATRAC-3数据文件A3Dnnnn的数据的排列。图21标示了数据文件的一个属性标题(一个块)和一个音乐数据文件(一个块)。图21标示了相应以上两个块(16字节×2=32字节)的个体的槽的最前面的字节(0×000到0×7FF0)。就像图22明确表明的,标题包含有一个从最前面到属性标题的32字节的部分,其中256字节构成音乐名称域NM1,而且512字节构成另一个音乐名称NM2。属性标题的前面部分包含以下所示的数据的描述。
*BLKID-HD0(4个字节)含义BLOCKFILEID功能识别以上的ATRAC-3数据文件的最前面的字节的值值固定值=“HD=0”(例如,0×48442D30)*MCODE(2个字节)含义生产商代码功能这一代码分辨性地表明生产商的名称和用来记录数据的装置的产品型号。
值上面的10字节指示生产商代码下面的6字节指示产品型号代码*BLOCK SERIAL(4个字节)含义加入到每一磁道的序列码功能初始的块的最前面的字节以0开始,然后接着的块增加1。即使块数据被编辑,值不变。
值从0到0×FFFFFFFFFFFFFFFF*N1C+L(2个字节)含义指示磁道数据(NM1)的属性(音乐名称)功能为数据NM2所用的字符码和语言码分别由一个字节指示。
值和前面的SN1C+L的值相同*N2C+L(2个字节)含义指示磁道数据(NM2)的属性(音乐名称)功能为数据NM2所用的字符码和语言码分别由一个字节指示。
值和前面的SN1C+L的值相同*SINFSIZE(2字节)
含义指示与磁道相关的附加数据的总的大小。
功能基于16字节单元描述数据的大小,假如没有数据的话,数据到小被强制设定为0值数据大小从0×0000到0×3C6(966)*T-PRT(2字节)含义部分的总数功能指示构成磁道的部分的数目,通常,部分的数目为1。
值从1到0×285(十进制为645)*T-SU(4字节)含义相应部分的最小单元的声音单元SU的总数,同时它也在应用ATRAC-3压缩音频数据时构成最小的数据单元。声音单元的总数相应有几百字节,包含相应的经由通过压缩音频数据到大约原始数据的1/10而44.1KHz取样而生成的1024样本(1024×16位×2声道)的音频数据。每一个SU大约相应通过时间转换的23毫秒。通常,一个部分由几千个SU组成。在单个簇包含42个SU单元的情形下,就可以用单个簇表达大约1秒的声音。构成单个磁道的部分的数来内附加数据的大小所影响。由于本分的数量在去掉标题、音乐名称和包含附加数据的数据之后由单个块的数目所决定,这样一个情形整个地避免了相应于启动多个部分(645个单元)的条件的附加数据被利用。
功能指示在磁道中的US的总数。这相应于完成一个音乐曲目的时间。
值从0×01到0×001FFFFF*INX(2字节)(可选)含义INDEX的相对位置功能表示一个音乐曲目的典型的部分的顶端的指针。通过除SU的单元数为1/4而指示一个音乐曲目的顶端的位置。这一位置相应于一个四倍于SU通常长度的时间(大约93毫秒)。
值从0到0×FFFF(最多大约6084秒)*XT(2字节)(可选)含义复制INDEX的时间功能表示从以INX-nnn指定的最前面代码复制的SU的时间单元数目,通过除这一数为1/4。这相应于一个四倍于SU通常长度的时间(大约93毫秒)。
值0×0000=除去时间设定影响从0×01到音乐曲目的结束0×FFF(最大6084秒)随后,音乐名称域NM1和NM2描述如下。
*NM1含义表达音乐名称的字符阵列功能通过一个字节字符代码表达长度可变的音乐名称(最多256)无论何时终止音乐名称数据,有必要必须写终止码(0×00)。大小应该有终止码计算出。假如没有提供数据,必须至少有一个从最前面(0×0020)到空码(0×00)的字节被记录。
值各种字符代码*NM2含义表达音乐名称的字符阵列功能通过两个字节字符代码表达长度可变的音乐名称(最多512)无论何时终止音乐名称数据,有必要必须写终止码(0×00)。大小应该有终止码计算出。假如没有提供数据,必须至少有2个从最前面(0×0020)到空码(0×00)的字节被记录。
值各种字符代码TRKINF在属性标题的一个固定的位置(0×320)开始。TRKINF(磁道数据域)包含80字节数据,主要整体地控制相干安全和再生控制数据的控制数据。图23标示了TRKINF部分。以下按照排列的顺序描述TRKINF域中的数据。
*EKI(1字节)含义以上所述的分层树状密钥结构中的EKB提供的内容加密密钥。EKI标示是否提供了E(KEKn,Kcon)。
功能数位7=1标示提供了密钥E数位7=0标示未提供密钥E当是条件“数位7=0”时,应该不参照R(KEKn,Kcon)进入EKB_version。
值从0到0×FF*EKB version(4字节)含义表示以上所述的在分层树状密钥结构中的EKB所提供的内容密钥的代数,或者/和表示EKB文件的名称功能表示一个EKB以获得一个正当的在以上所述的分层树状密钥结构中的EKB所提供的内容密钥。
值从0到0×FF*E(Kstm,Kcon)(8个字节)含义包含有用来加密内容数据的内容密钥的数据,这一数据被储存卡中的储存密钥(Kstm)加密。
功能用来加密内容数据。
值从0到0×FFFFFFFFFFFFFFFF*E(KEKn,Kcon)(8个字节)含义包含有用来加密各个内容数据的内容密钥的数据,其中数据被通过施加一个以上所述的分层树状密钥结构中的EKB提供的密钥加密密钥(KEKn)而加密。
功能用来加密内容数据值从0到0×FFFFFFFFFFFFFFFF*C_MAC[n](8个字节)含义用来检测版权数被窜改的值。
功能一个从包含内容数据的累积数的以上的多个TRKINF数据的内容和从隐藏的序列数中生成的值。隐藏的序列数值的是记录在一个储存卡中的隐藏域的中的序列数。一个没有安全版权装置的记录装置不能阅读隐藏域。另一方面,一个有版权装置的激励装置和一个装载有能够阅读储存卡的应用程序的个人计算机可以获得访问隐藏的域的权限。
*A(1个字节)含义部分的属性功能表示在部分中的如压缩模式等数据值参照图24,详细描述如下。
一个特别的结合方式被称之为诞生到信号的“单声道”模式1(其中N=0),但声道闹包含为二进制码1的数位7和为0的子信号,其中主信号只包含(L+R)信号部分。对应于数位2、1的数据可能被传统的再生装置所忽略。
以上属性A的数位0构成降噪开/关的数据,而数位1构成一个表示跳过再生模式或者正常再生模式的数据。数位2构成一个差异数据,换句话说,数位2构成一个比较音频数据和其他的诸如电传数据或类似的数据等的数据。数位3还未定义。如图24所示,通过组合数位4、5、6,ATRAC-3的模式的数据就被规定。特别的,N标示一个由数位4、5、6表述的模式值。模式值标示了记录时间(当利用64M储存卡时),数据传输速率,相应于5类模式(包括单声道(N=0,1),LP(N=2),SP(N=4),EX(N=5)和,HQ(N=2))的每一块的SU的数。SU单元在单声道模式包含136字节,在LP模式包含192字节,在SP模式包含304字节,在EX模式包含384字节,在HQ模式包含512字节。进一步的,以上提到的ATRAC-3的“双声道”模式(N=0)和“联合”模式(N=1)在数位7指出。
例如,假定在利用64M储存卡时进入SP模式。64M储存卡包含3968块。由于每隔SU单元包含304字节,当进入SP模式时,每一块有53个SU单元。一个SU单元相应1024/44100秒。相应地,每一块相应(1024/44100)×53×(3968-16)=4863秒=81分。另一方面,数据传输率计算如下。
(44100/1024)×304×8=104737bps*LT(1个字节)含义复制限制的标记(包括数位6和7)和安全版本(数位5到0)。
功能标示加到磁道的限制条款值数位70=没有限制 1=限制数位60=有效期内 1=过期数位5到0安全版本=0*FNo(2个字节)含义初始记录的磁道数。这一值指定用来计算记录在储存卡的隐藏的域的MAV得值的位置。
功能每一记录装置完全不同的是当的值值从0到0×FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF*CONNUM(4个字节)含义一个以每一音乐曲目累积的值。这一值被每个记录装置提供的安全块控制。总共准备了42亿音乐曲目(232)用来表示记录的音乐曲目。
功能每一记录装置完全不同的是当的值值从0到0×FFFFFFFF*YMDhms-S(4个字节)(可选)含义开始复制限制被复制的磁道的日期和时间功能核准由EMD指定的复制开始的日期和时间值和以上提到的日期和时间相同*YMDhms-E(4个字节)(可选)含义终止复制限制被复制的磁道的日期和时间功能核准由EMD指定的核准复制的日期和时间的终止值和以上提到的日期和时间相同*XCC(1个字节)含义以下所描述的CC(复制控制)的扩展部分功能控制复制*CT(1个字节)(可选)含义复制的回合功能和总的可复制的回合数相对的实际的复制回合数。回合数载每次复制之后减少。
值从0×00到0×FF,当允许的复制的回合数还完全未被使用时,值是空值(0×00)。当LT的第7数位指向1而CT的指向00时,复制被禁止。
*CC(1个字节)含义控制复制功能控制复制操作值如图25所示,数位6和7一起表示一个再生控制数据,数位4和5一起联合表示一个相关高速数码复制操作的再生控制数据,数位2和3一起联合表示一个安全块授权认证等级。数位0和1尚未定义。
再生控制操作包含以下方面当使用数位6和7时,数据代码11允许不确定的操作;数据代码01禁止复制操作;数据代码00允许复制操作一次。当使用数位2和3时,数据代码00允许从一个模拟输入或数码输入记录;数据代码0表示MG授权认证等级。在通过CD数码记录的情形下,数位6和7相应前面的功能00,而数位2和3相应后面的功能00。
*CN(1个字节)(可选)
含义在HSCMS(高速串联复制管理系统)复制允许的回合数功能在一次复制和不确定复制回合数之间的区分本扩展未表示允许复制的回合数。允许复制的回合数只在第一次复制时有效,然后再每次复制操作时减少。
值00=禁止复制。从01到0×FE表示可复制的回合数,0×FF标示不确定回合数。
接着以上所述的磁道数据域TRKINF,这样一个从0×0370开始的24字节的数据被称作控制部分的部分数据域PRTINF。当用河多部分合成一个单一的磁道时,PRTINF按时间轴顺序排列。图26标示了和PTTINF相关的部分。以下按照排列的顺序详细描述PRTINF域中的数据。
*PRTSIZE(4个字节)含义部分的大小功能表示部分的大小,包括以下簇被提供2个字节(最上面);开始SU一个字节(上些的部分)和终止SU一个字节(最下面的部分)。
值簇从1到0×1F40(8000)开始SU从0到0×A0(160)终止SU从0到0×A0(160)注意SU码是从0,1,2……向上计数。
*PRTKEY(8个字节)含义用来加密部分的值功能初始值=0当进入一个编辑进程时,编辑规则比如遵守。
值从0到0×FFFFFFFFFFFFFFFF*CONNUM0(4个字节)含义一个初始产生的用来表示内容数据的累积数的密钥功能作为定性内容数据的ID的角色值和累积内容数据数的初始值的值相同。
再次参照图21,如图21所示,ATRAC-3数据文件的属性标题包含一个附加数据INF。附加数据INF和磁道相关,磁道有着可变的长度,和标题相伴。根据情形,多个和相互不同的附加数据可能被排列。每一附加数据被加入一个ID号和一个数据大小。这样一个附加数据包含最少有16字节的标题,而且含有倍数于4个字节的整数的倍数的单元。
以上所述的ATRAC-3数据文件的各个块跟在以上所述的属性标题的后面。如图27所示,在每个块中加入标题。用在ATRAC-3数据文件的每一块的数据描述如下。
*BLKID-A3D(4个字节)含义块化的文件的ID功能表示ATRAC-3数据文件的最前部的值值固定值=“A3D”(例如,0×41334420)值固定值=“HD=0”(例如,0×48442D30)*MCODE(2个字节)含义生产商代码功能这一代码分辨性地表明生产商的名称和用来记录数据的装置的产品型号。
值上面的10字节表示生产商代码,而下面的6字节表示产品型号代码*CONNUM0(4个字节)含义初始产生的用来表示累积内容数据数功能作为定性内容数据的ID的角色。即使被编辑时,值不变。
值和累积内容数据数的初始值密钥的值相同。
*BLOCK SERIAL(4个字节)含义加入到每一磁道的序列码功能初始的块的最前面的字节以0开始,然后接着的块增加1。即使块数据被编辑,值不变。
值从0到0×FFFFFFFFFFFFFFFF*BLOCK SEED(8个字节)含义用来加密一个块的密钥功能初始的块使得相应记录装置的安全块能够产生随机数。接着的块记数加1。假如本值丢失的话,相应的块的任何一秒声音都不能生成,而且,一个相同的值被双倍写入到块的标题和作后部分。即被编辑,值保持不变。
值在初始阶段是8个字节的随机数
*INITIALIZATION VECTOR(8个字节)含义一个必须的用来加密的解密以上所述的每一磁道的ATRAC-3数据文件的初始值功能初始的块以0开始,而结下的块利用最后的SU的最终的加密的8字节值。在加密和解码一个块的中间的部分的数据的情形下,最后的在初始SU之前的8个字节被利用。即被编辑,值保持不变。
值从0到0×FFFFFFFFFFFFFFFF*SU-nnn含义声音单元的数据功能从1024样本压缩的数据。依据压缩的模式,输出的字节数不同。即被编辑,值保持不变。比如,当进入SP模式时,N对应384字节。
值ATRAC-3数据文件的数据的值参照图21所示的结构,由于N=384,总共42个SU被写入一个块中。每块一对最前面的槽(4个字节)构成标题。并且,BLKID-A3D、Mcode、CONNUM0和BLOCK SERIAL双倍写入最后一块(2个字节)。相应地,富余的域占了每块的M字节(16384-384×42-16×3=208字节)就像以前提到的,一个8字节的BLOCK SEED被双倍记录在M字节的剩余的域。
块寻址数据通过每块生成随机数的方式生成。闪存控制模块35控制写进数据到闪存34和从闪存读出数据的操作。
图15所示的再生装置的构造描述如下。图15所示的再生装置包含以下部分一个主控制模块,一个通讯接口装置42,一个控制模块43,一个编辑模块44,一个压缩/伸长模块45,一个扬声器模块46,一个数/模转换器47,以及一个模/数转换器48。主控制模块41整合地控制操作再生装置200的操作的进程。如图15所示的控制模块43包含以下部分一个随机数生成单元60,一个储存单元61,一个密钥生成和密钥算法操作单元62,一个相互授权认证单元63,一个加密和解码单元64,一个控制单元65。类似另外一个控制模块33,控制模块43自己由一个单芯片的多层集成电路组成,这一电路值对秘密处理过程可操作,控制模块43的储存单元夹在由铝制造的伪层之间。进一步地,控制模块43还含一个窄幅的操作电压和一个窄带的操作频率,因而进而有了防窜改的能力以防止由外部原因的非法阅读数据。在接到生成随机数的命令的情况下,随机数生成单元60生成一个64位(也就是8字节)的随机数。储存单元61储存各种执行授权认证处理所要的各种数据。
通过执行许多算法操作(如采用ISO/IEC9797 MAC算法操作格式),密钥生成和密钥算法操作单元62生成各种密钥数据。在生成密钥数据时,密钥生成单元62采用FIPSPUB46-2所规定的DES作为“块”加密算法2。
在把从个人计算机输入的音频数据付送到存储装置300之前,相互授权认证单元63和存储装置300执行一个授权认证处理。进一步,在从存储装置300接收音频数据之前,相互授权认证单元63也和存储装置300执行一个授权认证处理。而且,在执行相互授权认证时,共授权认证单元63也执行MAC算法操作。为了实现相互授权认证,储存在存储装置300中的数据也被利用到。进一步,在和个人计算机100或另外一个在网络服务线路上的个人计算机100之间减缓输入或输出的音频数据时,共授权认证单元63也和个人计算机100或另外一个在网络服务线路上的个人计算机100之间交换共授权认证。
如以上提到的,通过选择性地利用FIPS PUB81规定的ECB或CBC模式,加密/解码单元64执行一个加密处理操作。
在FIPSPUB81规定的模式中,加密解码单元64选择性地解码ECB和CBC模式。当解码CBC模式时,如通过施加一个56位的密钥数据“K”,加密/解码单元64通过在最终生成纯文本之前将包含有64数位的加密的块作为一个处理单元的方式而解码一个加密的字母。
以上提到的控制单元65整体地控制随机数生成单元60、储存单元61、密钥生成/算法单元62、相互授权认证单元63和加密/解码单元64执行的功能性操作。例如,如图16所示,基于从用户来的操作指令,编辑模块44编辑储存在存储装置300的闪存34中的磁道数据文件,从而生成新的磁道数据文件。
例如,当复制一个解码于从比如存储装置300输入的加密音频数据时,压缩/伸长模块45首先伸长相应的被ATRAC-3数据文件格式压缩的音频数据,然后付送伸长的音频数据到数/模转换器47。进一步,当储存从CD,DVD或个人计算机输入的音频数据到以上的存储装置300时,压缩/伸长模块45基于ATRAC-3数据文件格式压缩相应的音频数据。通过转换从压缩/伸长模块45接收到的数字格式的应聘数据成模拟格式的音频数据,数/模转换器47输出经过数/模转换的音频数据到扬声器单元46。扬声器单元46相应从数/模转换器47输入的模拟音频数据输出声音。例如,通过转换从CD播放器输入的模拟格式的音频数据成数字格式,模/数转换器48经过模/数转换的音频数据到压缩/伸长模块45。储存器49本身由E2PROM构成(例如,闪存),其中内在储存有包括以上所述的EKB或通过EKB生成的装置密钥块、和一个作为装置识别成分的装置ID。[储存内容数据到一个存储装置的处理过程和再生内容数据的处理过程]在再生装置和存储装置300之间交换的内容数据如图15所示。具体地说,一个通过再生装置200再生内容数据的处理过程和一个同时的储存内容数据到存储装置300的闪存的操作被执行。另外,一个通过从存储装置300的闪存34来的数据到再生装置200的处理过程被执行。
记录和再生内容数据的处理过程描述如下。首先,通过参照图28所示的流程图,记录再生装置200的数据到存储装置300的闪存的处理过程描述如下。
在交换数据之前,起初,再生装置和存储装置300分别执行一个相互授权认证处理过程,如处理步骤S2701和S2702所示。图29标示了一个如ISO/IEC9798-2所规定的通过施加一个公钥加密的方式的公共公授权认证方法。虽然在图29中采用DES作为公钥加密方式,任何其他的除开的DES的方式用作公钥加密方式也是实际可行的。参照图29,开始,B单元生成64位的随机数Rb然后传送随机数Rb和自己标示的代码ID给A单元。在接收到发送的代码的情况下,A单元最新生成64位的随机数,然后基于DES的CBC模式,A单元通过施加加密密钥(Kab)而顺次加密接收到的数据Ra,Rb和ID(b),最终返还加密的数据给B单元。加密密钥(Kab)分别存在A单元和B单元的相应的记录部分中。在采用如DES格式的CBC模式用加密密钥的加密处理过程中,初始值和加密密钥(Kab)被进行异或操作。随后两个值都被通过施加加密密钥(Kab)由DES加密单元加密,从而生成一个经过加密的字符E1。接着经过加密的字符E1和上面的随机数Rb进行一个异或操作。随后,经过加密的字符E1和随机数Rb通过施加加密密钥(Kab)而被DES加密单元加密,从而生成另一个经过加密的字符E2。
进一步的,加密的字符E2和ID(b)被进行一个异或操作。最终,DES加密单元通过利用经过加密的字符E3(经由一个使用加密密钥(Kab)的加密处理过程而生成的)而生成一个可传送的数据(Token-AB)。
在接收到数据的条件下,B单元施加储存在相应的记录单元的作为公钥的授权认证密钥(Kab)而解码接收到的数据。接收到的数据通过以下所述的序列步骤所解码。开始,经过加密的字符E1通过施加授权认证密钥(Kab)而解码以生成随机数Ra。随后,经过加密的字符E2通过施加公钥的授权认证密钥(Kab)而解码。随后。解码的结果和经过加密的字符E1被进行一个异或操作以生成随机数Rb。最后,经过加密的字符E3通过施加授权认证密钥(Kab)而解码。随后,解码的数据和经过加密的字符E2被进行一个异或操作以生成ID(b)。随后,对于那些结果数据Ra,Rb和ID(b),一个验证操作被执行以验证是否结果数据Rb和ID(b)精确地和从B单元传来的数据一致。只有当两者之间的一致被验证时,B单元才认证A单元为正当。
随后,通过施加随机数,B单元生成一个之后实现授权认证操作有用的区间密钥。随后,通过经由DES格式的CBC模式施加授权认证密钥(Kab),本单元在将数据返还给A单元之前顺次加密随机数Ra、Rb和区间密钥(Kses)。
在接收到以上的经过加密的随机数和区间密钥的情况下,B单元基于和已经施加到为B单元所执行的解码处理过程的解码方法相同的解码方法解码接收到的数据。对于那些结果数据Ra,Rb和区间密钥(Kses),A单元执行一个验证操作是否结果数据Ra和Rb和从A单元传送的数据完全一致。只有当两者之间的一致被验证时,A单元才认证B单元为正当。在相互都被认证为正当之后,区间密钥(Kses)被用作接着相互授权认证之后的执行机密的通讯的公钥。
即使在验证接收的数据的过程中有差异和不正当行为的情况下,被认定为相互授权认证被忽略,从而终止相关的过程。在流程度所示的处理步骤S2703中,以上的失败被表示为“否”。
当相互授权认证已经被实行时(处理步骤S2703中的“是”),进入步骤S2794,在这一步骤终,再生装置200执行一个生成内容密钥(Kcon)的操作。这一操作被以上所述的密钥生成/密钥算法操作单元62执行,通过施加图15所示的以上所述的随机数生成单元60所生成的随机数来执行。
随后,进入步骤S2705,在这一步骤中,那些序列的处理操作被执行。第一步,密钥数据E(KEK,Kcon)通过施加从EKB获得的加密密钥(KEK)加密内容密钥(kcon)而生成。第二步,内容密钥(kcon)通过施加以上认证过程产生的区间密钥(Kses)而加密。从而生成密钥数据E(Kses,Kcon),这一数据接着被传送到储存卡,以构建以上的存储装置300。
随后,进入步骤S2706,在这一步骤中,存储装置300通过解码以上的密钥数据E(KEK,Kcon)的方式获得内容密钥(kcon),以上的密钥数据E(KEK,Kcon)通过施加区间密钥(Kses)而从再生装置200接收到。随后,内容密钥(kcon)被一个前面储存在存储装置300的储存密钥(Kstm)加密,从而生成一个密钥数据E(Kstm,Kcon),这一数据接着被传送到再生装置200。
随后,进入步骤S2707,在这一步骤中,使用由步骤S2705生成的密钥数据E(Kses,Kcon)和另一个在前面的步骤S2706中从储存装置300接收到的密钥数据E(Kstm,Kcon),再生装置200生成一个构成如图21所示的数据文件的磁道数据域TRKINF。在格式化数据文件之后,经过格式化的数据文件被传送到存储装置(储存卡)300。
随后,进入步骤S2708,在这一步骤中,存储装置(储存卡)300储存从再生装置接收的数据文件到它自己的闪存中。
依据以上的安排,如图21和23所示,已经做出这样的那排,以上所述的格式化的数据文件的磁道数据域TRKINF储存以下内容通过施加从EKB中获取的加密密钥(KEK)加密内容密钥(kcon)而得到的经过加密的密钥数据E(KEK,Kcon);另一个通过施加先前储存在存储装置300中的储存密钥(Kstm)加密内容密钥(kcon)而得到的经过加密的密钥数据E(Kstm,Kcon)。
也可能通过直接利用内容密钥(kcon)作为加密内容数据的密钥而执行一个加密音乐数据和图片数据的处理过程。进一步,也可能通过基于内容密钥的代数相关的数据将它们划分到部分单元和块单元而初始生成那些加密密钥和基于时的密钥加密处理过程能被每一部分和块单元执行而生成其它的密钥。
在利用以上所述的数据问件的再生处理过程中,可能通过选择性地施加加密密钥数据E(KEK,Kcon)和其它的加密密钥数据E(Kstm,Kcon)而获取内容密钥(Kcon)。
接着参照图30所示的流程图,从存储装置300的闪存34中读出储存的数据的处理过程被再生装置200执行,换言之,执行再生处理过程的情形,被描述如下。
在交换数据之前,再生装置200和存储装置300分别按照先前的依图29所示的流程图的方式执行一个相应步骤S2901和S2902的相互授权认证处理过程。当相互授权认证处理被忽略时(在步骤S2902中标示为“否”),整个的处理过程被终止。
当相互授权认证已经被执行时(步骤S2903所指示的“是”),进入步骤S2704,在这一步骤中,存储装置300传送特定的数据文件到再生装置200。在接收到数据问件的条件下,再生装置200检查数据文件中的磁道数据域TRKIN以辨认储存的内容密钥(Kcon)的实际状态。本处理过程使得再生装置200辨认是否内容密钥(比如,由EKB获取的加密密钥(KEK)加密的加密密钥数据E(KEK,Kcon))正真储存在磁道数据域TRKINF中。有或没有密钥数据E(KEK,Kcon)可以通过先前参照图21和23描述的磁道数据域TRKINF中的数据[EKI]而辨认。
当加密密钥数据E(KEK,Kcon)储存在磁道数据域TRKINF时(步骤S2906标示的“是”),进入步骤S2907以通过操作EKB获取加密密钥(KEK),随后,基于获取的加密密钥(KEK),加密密钥数据E(KEK,Kcon)被解码。从而获取内容密钥(Kcon)。
相反的,当加密密钥数据E(KEK,Kcon)未储存在磁道数据域TRKIN时(步骤S2906标示的“否”),进入步骤S2908,在这一步骤中,通过施加储存密钥(Kstm),存储装置300的控制模块33解码由预先储存在存储装置300的储存密钥(Kstm)加密的加密密钥数据E(KEK,Kcon)。进一步,控制模块33利用以上的相互授权认证处理过程中为再生装置200和存储装置200之间所共有化的区间密钥(Kses)而生成一个数据E(Kses,Kcon),接着传送数据E到再生装置200。
随后,进入步骤S2909,在这一步骤中,再生装置200通过在获取内容密钥(Kcon)之前施加区间密钥(Kses)而解码从存储装置300接收到的数据Kses,Kcon)。
随后,进入步骤S2910,在这一步骤中,通过施加由以上的步骤S2907和S2909获取的内容密钥(Kcon),内容数据被解码。
如上所述的,作为经由操作EKB通过施加以上的加密密钥(KEK)使得再生装置200能够解码数据E(KEK,Kcon)的结果和基于由预先储存在存储装置300中的储存密钥(Kstm)加密的数据E执行一个预定的处理步骤得结果,内容密钥(Kcon)最终被获取。
解码音乐数据和图片数据的操作过程通过施加内容密钥(Kcon)自己作为解码内容数据的密钥而执行。另外,解码音乐数据和图片数据的操作过程也可每部分单元或每块单元执行,通过基于相关其它密钥的代数的内容密钥和数据相应分别构成内容数据的部分和块而分别生成一个每部分单元或每块单元的解码密钥。[储存KEK的EKB格式]总体的EKB的格式先前参照图6描述。下面的描述参照一个具体的通过存储器保存密钥加密密钥(KEK)在EKB中的例子。
图31示例了一个可以发布密钥的数据文件的结构,其中相关EKB的数据文件包含储存在EKB中的密钥加密密钥(KEK)的数据。一个相关的装置(相应以再生装置)按请求从数据文件提取出密钥加密密钥(KEK),接着通过密钥加密密钥(KEK)解码加密的密钥数据E(KEK,Kcon),从而在最终解码内容数据之前获取内容密钥(Kcon)。可适用的数据的细节描述如下。
*BLKID-EKB(4个字节)含义BLOCKID FILEID功能识别密钥的数据文件的最前面的值值固定值=“EKB”(例如,0×454B4220)*MCODE(2个字节)
含义生产商代码功能表明用来记录数据的装置的生产商的名称和产品型号。
值上面的10字节(生产商代码);下面的6字节(产品型号代码)*LKF含义连接文件信息功能标识一个包含有这样一个内容数据的连接文件,其中由EKB获取的内容数据可以被应用。
值0到0×FF数位71=应用到再生控制文件(PBLIST)0=没有应用数位61=应用到窜改检验值(ICV)0=没有应用数位5到0保留*LINKCOUNT含义连接数功能连接的文件的数目(例如,ATTAC-3数据文件)。
值0到0×FFFFFFFF*VERSION含义版本功能标识密钥发布核准数据文件的版本值0到0×FFFFFFFF*EA含义加密算法功能标识密钥发布核准数据文件的跟踪算法值0到0×FF00h以三DES模式处理01h以单DES模式处理三DES模式利用超过2种加密密钥处理,而单DES模式采用超过1个加密密钥。
*KEK1
含义密钥加密密钥功能一个被EKB中的根密钥(相应最上层)加密的内容密钥加密密钥值0到0×FFFFFFFFFFFFFFFF*KEK2含义密钥加密密钥功能一个被EKB中的根密钥(相应最上层)加密的内容密钥加密密钥值0到0×FFFFFFFFFFFFFFFF*E(VERSION)含义加密版本功能一个被EKB中的根密钥(相应最上层)加密的版本号。解码处理过程中底下的4个字节被保留。
值0到0×FFFFFFFFFFFFFFFF*SIZE OF TAG PART含义标签部分的大小功能构成密钥发布核准数据文件的数据的标签部分的大小(字节)。
值0到0×FFFFFFFF*SIZE OF KEY PART含义密钥部分的大小功能构成密钥发布核准数据文件的数据的密钥部分的大小(字节)。
值0到0×FFFFFFFF*SIZE OF SIGN PART含义签字部分的大小功能构成密钥发布核准数据文件的数据的签字部分的大小(字节)。
值0到0×FFFFFFFF*TAG PART含义标签部分功能相应的构成密钥发布核准数据文件的数据的标签部分的数据。
值所有值在少于8个字节的情形下,0被使用以使之成为8个字节。
*KEY PART
含义密钥部分功能相应的构成密钥发布核准数据文件的数据的密钥部分的数据。
值所有值*SIGNATURE PART含义签名部分功能相应的构成密钥发布核准数据文件的数据的签名部分的数据。
如图31所示,并且可以从上面的描述了解到,包含为相应的装置提供的密钥发布核准数据文件的数据文件储存数据LKF以识别一个特别的连接文件,连接文件包含有从以上所述的数据文件中获取的密钥加密密钥(KEK)可以施加的数据文件。另外,以上的数据文件也储存表示连接的文件数(例如,ATRAC-3数据文件)的数据Link Count。通过参照以上的数据LKF和Link Count,就可能使再生装置辨识一个要求应用从以上的密钥发布核准数据文件获取的密钥加密密钥(KEK)的数据是否实际被提供,从而也可能辨识这一数据的编号。[解码和再生使用连接数据的数据]图32例示了存储装置3000的一个数据储存域,明确地说,一个储存在存储装置300中的闪存34中的数据文件的示例。图32唯一地例示了一个高保真音乐数据的目录的结构。但是,也允许包括包含图片文件的目录。
图32所示的音乐数据目录包括一个再生控制文件(PBLIST)和多个ATRAC-3数据文件(A3D)。进一步,存储装置300也储存多个EKB。储存在ATRAC-3数据文件(A3D)中的指针标示一个用来获取特定的可应用来解码ATRAC-3数据文件(A3D)的内容密钥的EKBn。如图32所示,其中一个(表示为3101)使能密钥块(EKB1)被利用来解码多个(3个单元)的ATRAC-3数据文件(A3D)。
在这种情形中,可应用到三个内容数据的数据被储存在相应以上所述的使能密钥块(EKB1)3101的密钥发布核准数据文件的Link Count数据中。
图33表示了一个描述从存储装置300解码和再生内容数据的序列的处理过程,存储装置如图32所示包含一个储存多个内容数据和多个EKB的储存卡。
在当储存卡被装载到再生装置200时或当装载有储存卡的再生装置200的电源被打开时,这些序列的处理过程被再生装置200执行。
首先,当进入S3201步骤时,再生装置200读出各个EKB文件的磁道数据,接着检查“Link Count”数据。随后,再生装置200按照有着较大的Link Count数据的EKB数据的顺序选择相应预定的编号[n]的EKB文件。单元编号[n]相应一个可储存在再生装置的预定的储存域(例如,单元编号可储存在保持KEK在储存中的域)中的单元编号。
随后,进入S3202步骤,在本步骤中,选定的EKB文件被处理,接着再生装置200多个(相应于[n])密钥加密密钥(KEK),随后,它们被储存到安装到再生装置200中作为密钥储存域的RAM的一个预定的域中。
随后,进入S3203步骤,在本步骤中,再生装置200选择应被解码和再生的数据。当已经进入步骤S3204时,再生装置200辨识可应用来解码选定的内容数据的密钥加密密钥(KEK)是否真正储存在RAM中。假如密钥加密密钥(KEK)正真正地在RAM中(“是”),进入S3205步骤,在本步骤中,基于相应的密钥加密密钥(KEK),再生装置200解码加密数据E(KEK,Kcon),接着获取一个内容密钥。当已经进入下一个步骤S3209时,再生装置200通过施加获取的内容密钥解码和再生内容数据。
当以上的步骤S3206在进行中时,在可用来解码选定的内容数据的密钥加密密钥(KEK)没有储存在RAM中的情况下,进入步骤S3206,在本步骤中,再生装置200辨识被储存密钥(例如,加密数据E(KEK,Kcon))加密的内容密钥是否真正存在。假如存在的话,进入步骤S3207,在本步骤中,加密数据E(KEK,Kcon)被解码以使再生装置200可以获取内容密钥,从而进入步骤S3209,在本步骤中,再生装置200通过施加获取的内容密钥解码和再生数据。
假如辨识到在步骤S3206在进行中时加密数据E(KEK,Kcon)不存在,再生装置200获取一个应用到内容数据的从存储装置300解码的正当的EKB,接着解码获取的EKB以保护密钥加密密钥(KEK)。再生装置200进一步解码加密数据E(KEK,Kcon)从而获得内容密钥。当已经进入步骤S3209时,再生装置200通过施加获取的内容密钥解码和再生内容数据。
如上所述,再生装置200首先检查先前储存在存储装置300中的多个EKB的“Link Count”数据,接着执行解码这样一个包含多个“Link Count”数据的EKB,从而储存密钥加密密钥(KEK)在再生装置自身。相应地,无论何时再生内容数据时,再生装置被能够以高概率使用储存在自身的RAM中的密钥加密密钥(KEK),因而使得它可能高效地再生内容数据。[利用EKB发布授权认证密钥]在利用以上所述的EKB发布加密密钥的情形中,也以作出这样的安排,一个对授权认证处理过程有用的授权认证密钥Ikn被发布给所有有关的方面。用经由付送一个为相关的装置共有的授权认证密钥作为一个安全的密钥来执行一个遵照公钥格式的授权认证处理过程的系统被描述如下。
一个经由利用根据ISO/IEC9798-2标准的公钥加密格式的相互授权认证处理过程已经在先前参照图29描述。在执行数据传送和接收之前,为了确认和验证相关的装置和部分的正确性,一个相互的授权认证处理过程被执行。在实际的授权认证处理过程中,数据在相关的装置之间传送和接收。例如,再生装置和存储装置公有化一个授权认证密钥(Kab)。公钥(Kab)通过利用以上所述的EKB发布到相关的再生装置。
图34和图35分别例示了一个通过EKB发布一个相互授权认证密钥Ikn到多个装置的系统。图34例示了一个可解码的授权认证密钥Ikn被发布到装置0,1,2和3的情形,图35例示了一个可解码的授权认证密钥Ikn被发布到装置0,1和2,而装置3唯一在0,1,2和3中被撤销的情形。
在图34所示的系统中,通过利用和包含一个被升级的节点密钥K(t)加密的授权认证密钥Ikn的数据相连的装置0,1,2和3所拥有的节点密钥,一个可以解码升级的节点密钥K(t)00的EKB被生成,接着生成的EKB被分别发布给装置0,1,2和3。通过首先解码接收到的EKB,这些装置分别获取升级的节点密钥K(t)00,随后,解码被获取的节点密钥K(t)00加密的授权认证密钥Enc(K(t)00,Ikn)),从而使得可能最终获取授权认证密钥Ikn。
即使当接收到一个相同的EKB时,其余的装置4,5,6,7……分别不能一个经由EKB升级的节点密钥K(t)00,由于利用它们分别的节点密钥和枝叶密钥。由于这点,就可能安全地唯一传送授权认证密钥给经过验证的正当装置。
在另一方面,图35例示了另外一个情形,其中基于由于例如密钥泄漏的结果而已经定义装置3为撤销的判定的情形,一个只能为装置0,1和2所解码的EKB就被生成,接着发布给这些装置0,1和2。在这个情形中,一个使能密钥块EKB(a)和一个包含有为图35所示的节点密钥K(t)00所加密的授权认证密钥Ikn(b)被分别发布到装置0,1和2。
解码顺序如图35右面所示。首先,利用从接收到的EKB提取出的枝叶密钥和节点密钥,装置0,1和2分别通过解码自己的枝叶密钥和节点密钥而获取升级的节点密钥K(t)00。随后,通过解码经过升级的节点密钥K(t)00,装置0,1和2分别获取一个授权认证密钥Ikn。
即使当接收到一个相同的EKB数据时,其余的装置4,5,6,……通过施加它们分别的节点密钥和枝叶密钥获取经过升级的节点密钥K(t)00。类似的,撤销的装置3不能通过施加自己的枝叶密钥和节点密钥获取升级的节点密钥K(t)00。相应地,只有那些有认证的正当的权力的装置能够解码授权认证密钥给分别使用。
如上所述,通过利用EKB发布授权认证密钥,就有可能减少数据的体积并安全地发布能唯一被那些认证为正当权限方面的(人)所解码。进一步,这样一个经由发布在被EKB数据加密之后付送的EKB数据的发布的授权认证密钥受版本的控制,从而使得它可能执行一个每版本的更新处理,因而它也有可能基于选择的时间撤销任意装置。
由于以上的用来经由应用EKB的处理过程付送授权认证密钥的处理过程,任何撤销的装置(如再生装置)不能和相应的储存设被实现相互的授权认证密,从而使得它实际上不可能发生非法的数据解码。
进一步,通过经由应用EKB的处理过程传送授权认证密钥,也可能正当地控制储存和再生数据,不能到任何除开储存卡(如装载到再生装置的硬盘)的记录介质中。
如早先参照图28和30所述的,为了通过应用一个存储装置执行记录和再生内容数据的处理过程,相互的授权认证处理过程被按时地执行。作为结果,基于相互的授权认证处理过程被按时地执行的条件,记录和再生相关数据被正当执行。相互的授权认证处理过程在如储存卡等能够执行相互的授权认证处理过程的装置之间有效地执行。另一方面,在储存和记录数据到没有基加密功能的存储装置(如装载到再生装置的不能执行相互的授权认证处理过程的硬盘和CD-R(可记录CD))或从它们储存和记录时,执行相互的授权认证处理过程就没有意义。然而,这一独到的系统使得即使在利用没有相互的授权认证处理过程能力的再生装置储存或再生数据数据的情形时,授权认证程序也被执行。由于硬盘和CD-R分别没有执行相互的授权认证处理过程能力,也做出这样的安排,一个虚拟的储存卡(“Memory Stick”sony公司的产品和注册商标)被装载到各个再生装置,以使得相互执行的授权认证处理过程在“Memory Stick”和再生装置之间执行以建立相互执行的授权认证相容的条件,从而使得可以储存数据到一个没有执行相互的授权认证处理过程能力的存储装置和从这一存储装置再生数据。
图36表示了一个描述通过应用虚拟储存卡记录和再生数据的序列处理过程的流程图。起始,相应的再生装置和装入的储存卡执行一个相互的授权认证处理过程。当进入步骤S3502时,再生装置辨认是否已经执行一个相互的授权认证处理过程。随后,基于应经执行相互的授权认证处理过程的条件,进入步骤S3503,在这一步骤中,应用没有相互的授权认证功能的硬盘、CD-R、DVD执行记录和再生数据。
当进行步骤S3502时,加入辨认到相互的授权认证处理过程已经失败,相应步骤S3503的应用没有相互的授权认证功能的硬盘、CD-R、DVD无论记录还是再生数据都不被执行。
以上所述的预先装载入的有相互的授权认证功能的虚拟储存卡前面以经参照图16描述。进一步,也以作出这样的安排,对再生装置有用的授权认证密钥由以上所述的EKB提供。
如上所述,通过促成EKB付送对再生装置有用的授权认证密钥,就可能唯一地为有正当授权的再生装置提供一个能够和相应的虚拟储存卡交换相互的授权认证的授权认证密钥。一个没有使能授权认证密钥的再生装置不能实现相互的授权认证,结果,一个撤销的再生装置就不能正当地通过利用有授权认证功能的储存卡(如没有授权认证功能的硬盘、CD-R、DVD)记录和再生数据,从而可能阻止任何不当的装置非法记录和再生数据。
具体地说,在那些分别构成分层树状密钥结构的枝叶的数据处理装置中,提供的授权认证密钥的EKB只能唯一被有正当授权的数据处理装置所解码,从EKB不能为不当的没有正当授权的数据处理装置所解码。这一安排阻止了一个不当的数据处理装置和装载入不当的数据处理装置的虚拟储存卡交换授权认证。因而实现了一个能构阻止不当的数据处理装置非法利用内容数据的授权系统。[完整性检测值(ICV)的构成]随后,一个辨识实际已经发生窜改内容数据或缺失这一条件的状态的系统描述如下,这一处理过程通过检查相应的内容数据的完整性检测值(ICV)而实现阻止内容数据非法被窜改。
例如,用来检测窜改内容数据行为的完整性检测值通过基于等式ICV=Hash(Kicv,C1,C2……)对内容数据应用Hash函数计算而得。Kicv表示一个生成完整性检测值的密钥。C1,C2分别表示内容数据。为实现以上的等式,信息授权认证码MAC被利用以认证内容的重要数据。象先前描述的信息授权认证码MAC也被包含在参照图21所述的ATRAC-3数据文件中。通过利用以上的数据和MAC,计算完整性检测值的操作被执行。
图37标示了一个利用DES加密处理过程生成以上所述的MAC值的示例。如图37所示,目标信息被分成包括M1,M2……Mn等8字节的单元。第一步,初始值IV和分成的信息M1被一起执行一个异或操作,从而生成结果值I1。随后,结果值I1被加入DES加密单元,它在生成输出值E1之前通过时间密钥K1而加密。随后,输出值E1和分成的信息M2被一起执行一个异或操作,从而生成结果值I2。随后,结果值I2被加入DES加密单元,它在生成输出值E2之前通过时间密钥K1而加密。这些序列的处理过程被重复直到所有的分成的信息全部被加密。最终的输出值EN包含“信息授权认证密钥”MAC。为了建构以上的信息,允许使用构成内容相关数据的部分数据,如内容数据和标题数据,作为以上授权认证处理的目标。
通过向以上所述的用来认证信息内容的MAC值应用Hash函数和向以上的用来生成完整性检测值(ICV)的密钥Kicv,ICV值就被生成以检测内容数据的整体性。在比较一个在生成内容数据的同时生成的不验证窜改行为的ICV值和另一个新近基于内容数据生成的ICV值之后,假如一个完全相同的ICV值被生成,就验证了没有对内容数据的窜改动作。相反的,假如ICV的结果值互不相同,就表明了内容数据实际已经被窜改。
通过应用多个经由和各个内容数据相应生成的信息授权认证代码MAC,就有可能生成一个单一的完整性检测值(ICV)。例如,一个完整性检测值(ICV)通过应用与下面所示的等式相应的多个MAC值等计算出。
ICV=MAC(Kicv,C_MAC
‖C_MAC[1]‖C_MAC[2]……)
首先,一个和生成内容数据同时生成的完整性检测值(ICV)被储存。这一ICV值和另一个在检测内容数据的完整性生成的ICV值比较。假如两个值相互一致,就表明没有内容数据的窜改动作。相反的,假如两个值互不相同,就表明实际有一个内容数据的窜改动作,因而有必要需要一个限制再生内容数据的装置。
不单是音乐数据,储存卡等存储装置也储存各种数据包括图片数据,游戏程序数据,或者其他的各种目录下的类似数据。为了阻止这些内容数据被非法窜改,就能有效地个别地为每个目录生成以上所述的完整性检测值(ICV),以被储存。
然而,相关储存在存储器中的内容数据的数目的增长,也带来一个困难,难以基于正当的内容数据生成授权认证所需的检测值并储存和控制检测值。实际上,在用包括版含闪存的储存卡等有更大的储存能力的记录介质升级记录介质时,那些诸如音乐数据,图片数据,程序数据和类似的处在各种目录下的内容数据被联合储存在存储器中。在这样一个情况的条件下,就难以正当地控制生成和储存ICV值,并辨识内容数据的窜改的处理过程。就有必要执行一个生成检测值以免整个的数据被检测的处理过程。例如,当通过用如通过DES-CBC模式生成的信息授权认证代码MAC计算完整性检测值(ICV)时,就有必要执行一个将整个的数据以DES-CBC模式处理的处理过程。相应数据长度的伸长而来的计算体积的增长,结果导致产生处理效率的问题。
每一个储存卡作为一个储存有各种目录底下的各种数据的存储装置。通过经由生成一个完整性检测值(ICV)而执行一个检测各种目录底下的内容数据的窜改动作的处理过程,就可能在检测值ICV时或在检测ICV值和数据时新生成一个合检测值(ICV),通过以一个目录内的特定的数据为目标而不影响其它的目录。一个按每隔目录储存储存多个完整性检测值(ICV)的系统被描述如下。
图38表示了储存在存储装置中的数据的结构和一个储存与这些数据相关的完整性检测值(ICV)储存状态的示例。如这里所示的,储存在储存卡的闪存的音乐数据目录包括多个包含加密的内容数据的ATRAC-3数据文件(A3D)。另外,多个属于许多目录的内容数据(#1到#n)被储存在闪存中。多个目录包括音乐数据,图片数据,游戏程序和类似的数据。也可能控制类似的图片数据为一个独立的分类作为另一个和个别的数据提供商相关的目录。
也可能建立一个以上所述的EKB的控制单元(实体)作为一个单独的目录。换句话说,允许一个内容数据的集合作为一个单个的目录,一个被从某个EKB获取的密钥加密密钥(KEK)解码的内容密钥(Kcon)可以被应用到其中。
多个再生控制文件(PBLIST)和ATRAC-3数据文件(A3D)中的每一个包含有检查内容数据的窜改动作的信息授权认证码(MAC)。基于MAC码,完整性检测值(ICV)被生成。多个相应内容数据的MAC值被储存在闪存的序列的页中,并且,通过应用基于MAC列表而生成ICV密钥而获得的完整性检测值(ICV(con))也被储存在再生控制文件(PBLIST)和ATRAC-3数据文件(A3D)中。
图39标示了用来储存检测内容数据的信息授权认证码MAC的序列页的格式。序列的页面域被提供来禁止写入常规的内容数据到其中。图30所示的序列页面的组成描述如下。
内容密钥E(Kstr,Kcon)一个储存卡的储存密钥所加密。上面和下面的Ids分别储存储存卡的识别成分(ID)。相应MAC值的码C_MAC
基于上面的再生控制文件(PBLIST)的组份数据而生成。例如,基于基于以上的ATRAC-3数据文件#1而生成MAC值,每个内容数据的分别的MAC值储存在C_MAC[1]值。基于这些MAC值,完整性检测值(ICV(con))被生成,接着通过序列协议被写入存储器。为了处理各部相同的密钥系统,优先的是各个成各个系统生成的ICV值应该被储存到特别的各不相同的区域。
为每一目录生成的用来检测每一个目录的内容数据的窜改动作的完整性检测值ICV被储存在储存卡的闪存的一组页面中。组页面包含有一个禁止写入常规的数据的域。
图40标示了储存每个目录的完整性检测值ICV的组页面的格式。码#0_revision被提供一个目录#的更新日期。无论何时更新日期被升级时,一个增加过程被执行。码#0_version相应一个目录#0的版本。码#0_E(KEK,Kicv)相应一个被相应的目录#0的密钥加密密钥(KEK)加密的ICV生成密钥(Kicv)。码ICV0表示相应目录#的完整性检测值ICV。也以作出这样的安排,类似的数据可以被储存到每个目录的组页面直到#15。
通过完整性检测值检测内容数据的实际情况的处理过程在电源被打开或如储存卡等储存装置被装载到相应的再生装置时被执行。图41标示用Icv值的检测处理过程的流程图。
首先,当再生装置检测到电源被打开或一个新的储存卡被装入时,进入步骤S4001,在这一步骤中,识别是否相互的授权认证可以在再生装置和储存卡之间执行。假如识别到可以执行,进入步骤S4002,在这一步骤中,一个相互认证再生装置和储存卡的处理过程被执行(参照图29)。另一方面,当步骤S4001在进行中时,假如识别到在再生装置和储存卡之间的相互的授权认证不可执行,进入步骤S4003,在这一步骤中,一个相互认证在再生装置和以上所述的虚拟储存卡的处理过程被执行。
当步骤S4004在进行中时,它识别是否相互的授权认证已经在再生装置和储存卡之间执行。假如它们之间的相互的授权认已经失败,所有的处理因此被终止不再执行。假如它们之间的相互的授权认已经实现,进入步骤S4005,在这一步骤中,计算完整性检测值ICV。如先前所述的,ICV值基于用来检测内容数据完整性的信息授权认证码(MAC)而计算。
当以经进入下一步骤S4006时,经由计算生成的ICV值被和另一个先前储存的ICV值比较。当它们相互相同时,就表明没有内容数据的窜改操作,从而操作模式进行到步骤S4007,在这一步骤中,各种操作被执行,包括再生内容数据。另一方面,假如以上的ICV值相互不同,就表明有窜改内容数据的动作,从而终止所有的处理,因而没有执行数据再生。通过顺次执行以上的处理,内容数据就可以被阻止被非法窜改,从而可能撤销被非法窜改的数据。
如上所述,控制性地生成多个对每个目录独立的完整性检测值ICV,当检测各个Icv值时或当修改各个Icv值时或当相关内容数据的改变生成新的Icv值时,由可能只检测对某一个单个的目录的内容数据的ICV值,而不影响其它目录中的数据。[扩展的MAC码的结构]作为一个生成信息授权认证码(MAC)(用以检测先前通过参照以上所述的再生控制文件和储存在ATRAC-3数据文件中的内容数据描述的内容数的完整性)的处理过程的变化的例子,也作为一个储存以上的相应数据文件的数据的处理过程的变化的例子,用来生成和储存一个扩展版本的MAC码的处理过程描述如下。
图42示例了生成和储存扩展版本的MAC码的处理过程。图42标示了图21和23所示的ATRAC-3数据文件的部分。信息授权认证码(MAC)相应于基于相应的多个如ATRAC-3数据文件中的数据目录的一些数据经过图37所示的处理过程而生成的置。通过比较预先储存在数据文件中的MAC值和在检测过程中生成的另一个MAC值,辨认了是否有一个窜改内容数据的动作的证据。
例如,那些储存在图42所示的ATRAC-3数据文件中的信息授权认证码(MAC)和那些通过MAC值检验完整性的内容数据相关,这些内容数据被划分为从“INF-seq#”开始的多个数据目录。那些MAC码预先基于被通过相应的储存在相应的数据文件中的MAC代码处理的数据目录而生成。具体地说,这一条件被表述为MAC(INF-seq#‖A‖LT……)。在括号内的内容数据被同哦MAC码执行检测处理过程,换句话说,这些内容数据被接收检测判定是否实际被窜改。
然而,有这样一种情形,有多个内容数据储存在每个ATRAC-3数据文件中,因而要检查完成性的内容数据可能增长很多。为了应付这一问题,假定有多个新近的MAC码和增加的数据相连生成,以接收检测,因而构成了扩展版本的MAC码。扩展的MAC码被储存在每个数据文件中。那些只生成来处理常规的接收完整性检测的原始的MAC码只处理不变的目标域,以检测相关数据的完整性。这以安排被描述如下。
如图42所示,一个用来检测以上所述的数据目录“INF-seq#”下的数据的完整性的原始MAC码701被生成,原始MAC码701被储存在ATRAC-3数据文件中。
进一步,在一个受检测连续性的内容数据置于多个记录在ATRAC-3数据文件的INF空间的情形下,基于所有的经受检测在INF空间的连续性的数据(包括相应于一个成为生成初始的MAC701的MAC代码的目标的数据的以上所述的数据目录“INF-seq#”),这样一个MAC代码新近相应它们而生成。那些新生成的MAC代码被储存在相应的数据文件作为扩展版本的MAC代码。
图42所示的扩展MAC代码[MAC(INF)]720被根据如下所示的规则生成MAC(INF-seq#‖path‖MAC(proile)‖others……)如上面的规则清楚表明的,扩展版本的MAC代码包含部分的数据作为初始MAC码的代数的目标,然后,扩展版本的MAC码基于一个和别的数据复合以接收整体性检测的数据而生成。
进一步,在重写扩展的MAC码的过程中,换句话说,作为重新写这些数据在相应的扩展MAC数据的INF域中的“path”之下的结果,基于重写的数据,新的可扩展的MAC数据再次本生成和储存。那些在“path”之下的数据也被包括在扩展的MAC码中。进一步,作为初始MAC码的结果目标的“INF-seq#”也被重写,从而使得新的扩展MAC码被生成和储存。
在这种情形下,由于作为初始MAC码的结果目标的数据“INF-seq#”已经被重写,初始的MAC码新近被计算。换句话说,无论何时更新扩展MAC码时,重新生成和重新储存初始的MAC码也相连被执行。
也有可能通过生成新的随机数或通过由此而来的增加处理过程而重写以上的INF-seq#数据。
以上的安排使得能够与那些包括初始MAC的部分的MAC目标数据一起出现MAC目标数据,这一MAC目标数据在相应的用来检测内容数据的完整性的增加的数据而色横的扩展MAC码的MAC目标数据中。作为结果,可能始终反映重写数据在INF(作为新的基于初始的MAC码检测内容数据的整体性的数据,而不引致初始MAC码的MAC目标数据域被扩展)中的处理过程。[应用EKB到存储装置和再生装置之间的解码处理过程]随后,一个具体的获取一个内容密钥的处理过程被描述如下。这一内容密钥可用来通过施加以上所述的分层树状密钥结构的密钥发布系统而经由利用以上所述的EKB而解码经过加密的内容数据。
图43标示了一个如“存储棒”等存储装置800,它内在储存有经过加密的内容数据(如ATRAC-3数据)和一双用来执行内容数据再生的再生装置810和830。
存储装置800储存包含以上早先参照图21描述的经过加密的内容数据的ATRAC-2数据文件。为了使得再生装置810和830能够分别再生内容数据。就必须获取一个用来解码经过加密的内容数据所需的内容密钥(Kcon)。
首先,通过参照存储装置800和图43所示的再生装置A810,一个使得再生装置A810能够直接从存储装置800获取内容密钥的处理过程描述如下。首先,存储装置800和再生装置A810相互在相互执行的授权认证处理过程的公共控制模块801和811之间执行一个授权认证处理过程。相互的授权认证处理过程被基于应用加密格式的公共钥或先前参照图8所述的应用加密格式的公开密钥而执行。在这种情形中,本质需要的是控制存储装置800的控制模块801和811和再生装置A810应该分别包含一个用来执行授权认证处理过程的算法和储存有一个授权认证处理过程所需的密钥。
在和以上的再生装置A810实现一个相互的授权认证之后,存储装置800提取出被储存密钥(Kstm)加密的内容密钥E(Kstm,Kcon)和另一个被密钥加密密钥(KEK)加密的内容密钥E(KEK,Kcon)(这一密钥可以通过一个利用储存在存储装置800中的闪存802的ATRAC-3数据文件中以上所述的EKB的处理过程而获取),随后,在最终获取内容密钥(Kcon)之前提取出内容密钥。
随后,利用一个在再生装置A810之间执行的相互的授权认证处理过程中生成的区间密钥(Kses),存储装置800再次加密内容密钥(Kcon),接着传送生成的加密数据E(Kses,Kcon)到再生装置A810。在再生装置A810的控制模块811在最终获取内容密钥(Kcon)之前解码接收到的内容密钥E(Kses,Kcon)。
基于以上的序列处理过程,存储装置800最初解码和提取内容密钥(Kcon),随后,在再次用一个区间密钥(Kses)加密内容密钥(Kcon)之后,存储装置800付送内容密钥(Kcon)到再生装置A810。
在存储装置800方面没有解码处理过程被执行,只有再生装置A810获取内容密钥(Kcon)。一个实际的执行这些处理过程的形式被描述如下。
参照图43,在存储装置800和再生装置B 830之间执行的处理过程描述如下。首先,存储装置800指定一个用来从储存在ATRAC-3数据文件中的EKB的版本(或代数)中获取内容密钥(Kcon)的EKB,随后,付送指定的EKB到储存密钥(Kstd)B830。
在从存储装置800接收到指定的EKB的情况下,再生装置B830在最终获取密钥加密密钥(KEK)之前,通过施加先前储存在再生装置B830的闪存E2PROM中的装置密钥块(DKB)处理接收到的EKB。
参照图44,装置密钥块(DKB)的结构描述如下。如先前所描述的,那些为内容数据再生装置B830提供的装置分别包含一个基于图44中(a)所示的分层树状密钥结构的密钥发布系统的终止成分,换句话说,内容数据再生装置的每个装置包含相应于连接到从枝叶到上一个层的根的单个节点的密钥。例如,一个相应于图44中(a)所示的终止节点的SET5的装置包含从枝叶密钥K101、节点密钥K10和K1到根密钥(Kroot)的密钥集,或包含一个到子目录节点密钥的密钥集,或包含一个到目录节点的密钥集。
以上所述的密钥分别被相应的装置所加密,并被储存在如闪存E2PROM中。以上所述的装置密钥块(DKB)包含分别相应于多个从储存在每个装置的枝叶到一个特定的包含如子目录字节等的节点,或到一个到根的密钥的密钥的经过加密的密钥集。
图44在(b)中例示了储存在装置密钥块(DKB)的数据的结构。如这里所示的,相应于一个加密密钥块的装置密钥块(DKB)包括一个包含分别枝叶密钥所加密的节点密钥和根密钥的数据和一个包含被一个装置(如再生装置)的储存密钥(Kstd)所加密的枝叶密钥的数据。通过使用储存密钥(Kstd),再生装置解码储存在装置密钥块(DKB)中的Enc(Kstd,Kleaf),接着获取枝叶密钥(Kleaf),从而,就可能使再生装置直接解码通过应用得到的枝叶密钥(Kleaf)解码上一层的经过加密的节点密钥和经过加密的根密钥。从而,就可能通过序列解码在EKB中的低一层的密钥而获取高一层的密钥。装置密钥块(DKB)也包含一个枝叶标识成分“leafID”。
那些对每一装置正当的密钥各个装置之间互不相同。这些储存密钥也可以预先储存在一个安全的存储器中(如示为SAM的),或者被安排能基于枝叶ID而获取。具体地说,也允许通过基于和预定的集单元一起储存在主密钥(Kmas)而施加Hash函数到枝叶ID而建立一个以Kstd=Hash(Kmas,leafID)表述的表格。
再次参照图43,获取内容数据的处理过程进一步描述如下。在从存储装置800接收到EKB之后,通过施加经由解码储存在控制模块831中的存储器832中的装置密钥块(DKB)而生成的节点密钥和根密钥,再生装置B830获取一个被EKB加密的密钥加密密钥(KEK)。
处理EKB的方法和先前参照图5或9描述的方法相同。
通过利用以上所述的通过处理EKB而生成的密钥加密密钥(KEK)和执行解码从存储装置800接收到的经过加密的内容密钥E(KEK,Kcon),再生装置B830最终获取一个内容密钥。
储存在图43所示的再生装置B830的存储器832(E2PROM)中的初始的EKB和最初储存在再生装置B830的简化EKB文件相应。实际上,初始的EKB版、包含一个公共储存在一些装置中的经过加密的密钥块,这些装置相应与一个与早先参照图11描述的目录节点的单个目录节点(比如包含“存储棒”)的低层的节点节点相连的枝叶。
假如这样一个被目录节点所拥有的密钥相应于K01(举例),也认为被K01加密的根密钥Enc(K01,Kroot)被储存为初始的EKB。作为处理初始的EKB的结果,就可能使得再生装置B830获得根密钥。例如,在一个再生装置B830接收到一个被根密钥加密的储存有密钥加密密钥(KEK)的EKB的情形下,就可能使得再生装置B830通过应用经初始EKB生成的根密钥而获取密钥加密密钥(KEK)。
不只是一个付送初始的EKB到属于用一个目录节点相互一样的装置的系统,也允许提供初始的EKB给多个目录节点。例如,假设“存储棒”目录节点的节点密钥被定义为K01,包含有再生内容数据的功能的个人计算机的目录节点的节点密钥被定义为K10,能够使用网络服务线路的再生装置的目录节点的节点密钥被定义为K11,通过在付送到市场之前预选安装储存有三种经过加密的根密钥(包括Enc(K01,Kroot),Enc(K10,Kroot)和Enc(K11,Kroot))的初始的EKB,就可能发布可以被互不相同的装置所使用的经过加密的内容数据。
图45例示了一个再生装置,它包含一个整合储存有装置密钥块(DKB)的闪存(如E2PROM)和一个影响内容数据的自我记录和再生的初始的EKB。图46例示了一个通过利用以上的所述的密钥块获取内容密钥的处理过程。
图45所示的结构描述如下,图45所示的装置(例如包括一个记录/再生装置)和图45中(a)所示的枝叶相容。这一装置属于分层树状密钥结构的第八目录节点Kn8的目录。这一装置储存多个包含如图45中(b)所示的从Enc(Kstd,Kleaf)到Enc(Kleaf,Kn8)的装置密钥块(DKB)。这一结构和前面描述的DKB相同。那些储存在这一装置中的数据在被一个枝叶密钥所加密之后,分别构成从节点密钥Kn47到正处于枝叶密钥上面的目录节点密钥Kn8的密钥。
这些装置进一步包括一个可用来自我记录和自我再生的EKB。在记录和再生内容数据时,通过处理EKB和可用到自我记录和自我再生处理过程的装置密钥块(DKB),装置获取内容密钥(Kcon),从而执行解码的加密内容数据。
图46表示了一个流程图,它描述了在获取内容数据的过程中被一个包含有EKB和图45中(b)所示的DKB部分的装置所执行的序列步骤。当进入初始步骤S4601时,基于枝叶ID数据,装置提取出一个储存密钥(Kstd)。装置基于枝叶ID数据从包含其中的安全的存储器中提取储存密钥(Kstd),或者装置基于前面描述的主密钥(knas)和枝叶ID数据计算储存密钥(Kstd)。
随后,进入步骤S4602,在这一步骤中,基于储存密钥(Kstd),装置处理装置密钥块(DKB),用另外一句话说,解码Enc(Kstd,Kleaf)从而获取一个枝叶密钥。随后,进入步骤S4603,在这一步骤中,基于枝叶密钥,装置进一步处理装置密钥块(DKB),用另外一句话说,解码Enc(Kleaf,Kn8)从而获取目录节点密钥。由于装置密钥块(DKB)储存有直接被枝叶密钥所加密的节点密钥,就可能直接从被枝叶密钥所执行的解码处理过程获取上一层的节点密钥。
随后,进入步骤S4604,在这一步骤中,基于节点密钥Kn8,装置处理EKB一序列地获得上一层的节点密钥,然后计算相应最上层的根密钥。随后,进入步骤S4605,在这一步骤中,通过时间经过处理EKB获取的根密钥(Kroot),装置解码Enc(Kroot,KEK)以获取密钥加密密钥(KEK)。最终,随后,进入步骤S4606,在这一步骤中,使用获取的钥加密密钥(KEK),装置在最终获取内容密钥(Kcon)之前解码储存在附在内容数据的一个数据上的Enc(KEK,Kcon)。
图45中(b)所示的EKB被唯一用来执行一个自我记录处理过程。然而,在一个下载多个内容数据到相应的装置的情形下,也实际可行联合下载指定的相应于预定的内容数据的EKB,随后,和内容数据相应储存EKB。进一步的,也可能对相应的在再生内容数据的时候下在的内容数据的EKB执行一个图46所示的操作。图45中(b)所示的装置密钥块(DKB)包含一个包含从上一层到第8节点Kn8的直接被枝叶密钥所加密的节点密钥。也允许同样地储存分布在更上层和更下层的节点密钥。
本发明已经通过参照特定的实现本发明的精髓的实践形式而清晰描述。然而,应该理解的是,本发明可以由本专业普通技术人员在一个不背离本发明的精神的范围内以对于本发明的修改和替代方式而进一步应用。换句话说,本发明被以示例的方式阐述,因而,本发明的范围没有被严格地解释。为了精确判断本发明的精髓点,应该参考本说明的后面说的权利要求的详细文本。
如上所述,根据用来处理本发明提出的各种数据的系统和方法,提供多个分别被多个EKB所加密的操作密钥,其中,EKB包含各种加密升级密钥的数据,这些密钥处在构成分层的树状密钥结构的路径上,分层的树状密钥结构包含在相应的在从密钥述的根到枝叶的路径上的根、节点和枝叶而提供的密钥,密钥树包含多个装置作为枝叶。因而,以上提到的加密数据也包含有经由加密下层的密钥而加密上层密钥的数据。那些加密的密钥唯一使得选定的正当的装置可以解码经过加密的结果,从而实现一个用来正当地发布有高安全效果的内容数据的加密密钥或系统。
进一步,依据本发明,多个用于解码经过加密的内容数据的内容密钥被储存在内容数据的标题数据中。一个内容密钥被处理成被EKB所提供的加密密钥所加密的一个数据,而其它内容密钥被处理成被一个对存储装置正当的密钥所加密的一个数据。由于这样一个设计,无论何时操作这样一个装置再生内容数据时,内容数据被通过正当选择内容密钥的方式再生。
权利要求
1.一种数据处理装置,其初始地产生用于检验存储在一个存储装置中的分别内容数据的完整性的检验值,然后根据所说的内容数据把所说的检验值存储在所说的存储装置中,最后进行查验,以便通过参考所说的检验值探测侵害所说的内容数据的行为的实际存在或不存在,其中所说的检验值被独立地产生并在所说的存储装置中存为每一内容数据的类型。
2.根据权利要求1的数据处理装置,其中所说的数据处理装置根据目标内容数据的数据计算一个检验值,随后把该计算的检验值与预先存储的检验值比较,最后只在使用该内容数据的情况下,该两个值被标识为互相一致时才使用该对应的内容数据。
3.根据权利要求1的数据处理装置,其中所说的存储装置存储器对应于多个目录的多种类型的内容数据;和产生所说的检验值以便处理分别对应于所说多个目录的内容数据的一个集合。
4.根据权利要求1的数据处理装置,其中所说的存储装置包括一种闪速存储器;和所说的检验值每一类型被存储在所说的闪速存储器中的预置为禁止利用块的一个域中。
5.根据权利要求1的数据处理装置,其中其中所说的类型是每一种类内容数据地分别提供,并且每一类型预置和存储每一种类内容数据的独立的检验值。
6.根据权利要求1的数据处理装置,其中根据一个使能密钥块的控制实体分别预置所说的类型,其使能密钥块把一个内容加密密钥加密为一个内容密钥,然后递送所说的内容加密到一个具体的装置;并且所说的类型分别预置和存储器检验值,使之成为对于所说的使能密钥块的每一控制器实体是彼此独立的检验值。
7.根据权利要求1的数据处理装置,其中根据通过把数据加密标准应用到局部数据信息而产生的信息授权认证码分别产生所说的检验值,该局部数据信息构成一个内容相关数据,例如将要分别经过所说的检验值确认的内容数据和标题数据。
8.一个数据处理装置,产生并存储本身起到用于探测数据作用的信息授权认证码,用于探测对于存储在一个存储装置中的内容数据或标题数据的侵害;其中所说的数据处理装置在内容数据或标题数据中的互相不同的数据域中产生多个信息授权认证码;其中用于产生所说的信息授权认证码的该数据域的一部分被使用作为一个公用数据;和每当更新任何所说的多个信息授权认证码时,也更新所说的公用数据,以便也进一步更新其它信息授权认证码。
9.一种数据处理方法,初始地产生用于检验存储在一个存储装置中的分别内容数据的完整性的检验值,然后根据所说的内容数据把所说的检验值存储在所说的存储装置中,最后进行查验,以便通过参考所说的检验值探测侵害所说的内容数据的行为的实际存在或不存在,其中所说的检验值被独立地产生并在所说的存储装置中存为每一内容数据的类型。
10.根据权利要求9的数据处理方法,其中所说的数据处理方法根据目标内容数据的数据计算一个检验值,随后把该计算的检验值与预先存储的检验值比较,最后只在使用该内容数据的情况下该两个值被标识为互相一致时才使用该对应的内容数据。
11.根据权利要求9的数据处理方法,其中所说的存储装置存储对应于多个目录的多种类型的内容数据;和产生所说的检验值以便处理分别对应于所说多个目录的内容数据的一个集合。
12.根据权利要求9的数据处理方法,其中所述存储装置包括一个闪速存储器;和所说的检验值每一类型被存储在所说的闪速存储器中的预置为禁止利用块的一个域中。
13.根据权利要求9的数据处理方法,其中所说的类型是每一种类内容数据地分别提供,并且每一类型预置和存储每一种类内容数据的独立的检验值。
14.根据权利要求9的数据处理方法,其中其中根据一个使能密钥块的控制实体分别预置所说的类型,其使能密钥块把一个内容加密密钥加密为一个内容密钥,然后递送所说的内容加密到一个具体的装置;和所说的类型分别预置和存储器检验值,成为对于所说的使能密钥块的每一控制器实体是彼此独立的检验值。
15.根据权利要求9的数据处理方法,其中根据通过把数据加密标准应用到局部数据信息而产生的信息授权认证码分别产生所说的检验值,该局部数据信息构成一个内容相关数据,例如将要分别经过所说的检验值确认的内容数据和标题数据。
16.根据权利要求15的数据处理方法,其中所说的受到确认的内容数据和标题数据分别包含在不同数据域中产生的多个信息授权认证码;用于产生所说的信息授权认证码的所说的数据域的一部分被使用作为一个公用数据;和每当更新任何所说的多个信息授权认证码时,也更新所说的公用数据,以便也进一步更新其它信息授权认证码。
17.一个数据处理方法,产生并存储本身起到用于探测数据作用的信息授权认证码,用于探测对于存储在一个存储装置中的内容数据或标题数据的侵害;其中所说的数据处理装置在内容数据或标题数据中的互相不同的数据域中产生多个信息授权认证码;用于产生所说的信息授权认证码的所说的数据域的一部分被使用作为一个公用数据;和每当更新任何所说的多个信息授权认证码时,也更新所说的公用数据,以便也进一步更新其它信息授权认证码。
18.一个程序提供介质,对应分别的内容数据而执行在一个存储装置中存储用于校验内容数据的检验值,并且提供这种计算机程序到一个计算机系统,用于探测在一个计算机系统上实际存在或不存在侵害内容数据的行为;其中所述计算机程序包括把这种检验值产生并且存储成为每一内容数据类型独立的检验值的步骤。
全文摘要
本发明的数据处理装置初始地产生用于检验存储在一个存储装置中的内容数据的完整性的检验值,然后根据该内容数据存储该检验值,随后该数据处理装置使用该检验值查验该有关内容数据的侵害的行为,其中该检验值被产生并且存储在每一内容数据的类型的存储装置中。根据分别的使能密钥块(EKB)的一个控制实体预置每一个类型,其使能密钥块(EKB)加密并且提供一个内容密钥(Kcon),提供作为用于加密类型的种类或内容数据的密钥。用此方案,有可能有效和独立地执行探测处理,用于探测例如该使能密钥块(EKB)的每一控制实体的内容数据的侵害行为。
文档编号G06F21/10GK1338696SQ01140768
公开日2002年3月6日 申请日期2001年7月24日 优先权日2000年7月24日
发明者冈上拓己 申请人:索尼公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1