用于复制受控的存储设备的归档系统和方法

文档序号:6422420阅读:173来源:国知局
专利名称:用于复制受控的存储设备的归档系统和方法
技术领域
本发明涉及用于复制受控的存储装置的归档系统,具体来说,可以应用于MP3播放器等的安全传输。
背景技术
个人计算机和消费电子(consumer electronics,CE)设备的数字汇聚拥有巨大的工业前景。它还直接提出了挑战。在取得版权的内容被盗版的过程中,仅仅数亿美元期望得到的财富足以限制在数字领域中的内容发布。的确,某些公司已经开发了防止内容传播到数字领域中的技术。例子包括被设计为不能在CD-ROM驱动器中读出,然而仍能够在HiFi(高保真设备)中播放的CD,从而防止盗窃CD上的数据。现有的各种系统在CD中建立差错,这些差错在CD在HiFi CD播放器中被纠正,但使盘在CD-ROM驱动器中不可读。
除了使用户反感,一个潜在的问题是这些系统限制了人们为了私人的、非商业用途而记录音乐,并且可能违反允许在家中将数据记录和/或传输到另一个介质上法律。
为了解决这个问题,许多系统已经建议限制将数字内容数据复制/转移给合法拥有者。
一些现有的建议试图将经过加密的数据存储在设备上,使得只有创作者能够恢复文件。但是,由于要求存储装置实时地输出数据,加密费用会是个问题。与加密文件有关的具体问题遇到所谓的花样播放(trick-play)(播放中前跳/后跳)。
为了解决这些和其它问题,数字传输许可管理局(DTLA)已经提出了用于处理同步传输的IEEE 1394总线规范的内容保护系统。该系统提供了内容保护,因而能够防止取得版权的和其它有价值的内容被非法复制。该系统规范称为数字传输控制协议(DTCP)并且这里被引用为参考。
由于网络上的所有节点对正在被传输的数据进行访问并且因此能够进行另外的复制,因此,提供安全的同步通信是很重要的。与发送者和接收者已知双方身份(或至少某些标识符)的异步传输相反,实施同步传输一般采取源(数据提供)设备可能不需要知道接收(接收)设备的身份的广播的形式。
一般通过IEEE 1394总线按照同步传输发送内容数据,而利用异步控制数据包发送控制数据。为了提供必要的内容保护,DTCP要求在传输期间利用对称密码系统对同步传输加密。
在DTCP系统中,当访问在IEEE 1394总线上的同步传输时,接收设备(数据接收方)首先与源设备(数据持有者)一起进行验证。在验证期间,得到/认可相关的加密/解密密钥,因而接收设备能够在接收时对同步传输解码。
这种系统的具体好处在于加密发生在链接层。因此在链接层之上,可以在不加密的情况下使用数据,使应用功能如花样播放和搜索比数据被加密的情况更容易。
还引入了复制控制系统。内容拥有者可以规定如何才能使用他们的内容(“立即复制”、“禁止复制”等)。这些信息作为复制控制信息(CCI)被嵌入内容中,并且,在同步传输中被传递。由IEEE 1394总线和IEEE 1394设备根据CCI状态对内容的转交进行限制。
链接层解决方案对两个设备之间的链接加密,并且利用来自数据的嵌入的复制控制信息(CCI)判断数据是否需要被加密,或者,确实可以被发送。,利用与数据一起存储的CCI对存储在每个终端数据进行解密。按照这样的方式,设备之间的通信是安全的。
关于复制控制机制的一个问题是他们一般缺乏或没有备份系统。例如,不能在IEEE 1394系统下从保存数据的存储装置/介质传送“禁止复制”或“禁止再复制”的数据文件。在介质或设备被盗、丢失或损坏的情况下,数据文件也丢失了。
内容数据的复制控制限制的概念和归档的概念不得不在日期上发生冲突。一方面,用户希望备份数据以防设备丢失或被盗等。另一方面,内容提供商希望限制/防止转移和复制内容数据,以防盗版。关于存储装置的另一个问题是它们只能保存有限量的数据——一旦达到这个量,为了将新的内容数据存入设备,必须覆盖现有的内容数据。在强迫进行复制控制的情况下,已经购买的内容数据将不得不被不能恢复地盖写,以允许存储新的内容数据。对于这种设备的购买者来说这是一个消极因素,因为购买者不希望每次都购买内容数据,而希望将数据复制到存储装置上。

发明内容
按照本发明的一个方面,提供了一种数据归档系统,用于被设计为与归档设备通信并且向其上传文件的存储装置,其中,存储装置被设计为生成文件加密密钥并且在上传到归档设备时用文件加密密钥对文件加密,在显示经过加密的文件时,可以由存储装置重新生成文件加密密钥。
在归档期间数据文件被加密,并且只有创建,“拥有者”,设备能够在解密的状态下访问这些数据文件。在一个实施例中,这是通过在加密文件的头部嵌入生成解密密钥所需要的部分种子(seed)来实现的。只有拥有者设备具有允许文件被解密的保留部分。为了恢复任何以前存储的加密文件,设备根据在加密文件的头部和设备本本身之间被分开的共享的种子重新建立加密密钥。在加密处理期间,使用这个共享的种子,然后将其存储在存储装置中或者至少部分存储在文件本身中。
存储装置可以包括私人加密密钥,根据随机生成数和私人加密密钥生成文件加密密钥,其中,上传时将随机生成数存储在文件的头部。
存储装置可以包括私人加密密钥和文件加密密钥数据库,根据私人加密密钥生成文件加密密钥,其中,当上传时,将生成对加密文件进行解密的解密密钥所需的数据写入文件加密密钥数据库。当上传时,可以将使加密文件与生成解密密钥所需的数据匹配的数据加密密钥数据库。
存储装置可以包括文件加密密钥数据库,其中,当上传时,文件加密密钥被写入文件加密密钥数据库。当上传时,标识符可以被写入文件和文件加密密钥数据库,将文件加密密钥与加密文件联系起来。
按照本发明的另一方面,提供了一种数据归档方法,包括如下步骤生成文件加密密钥;用文件加密密钥对文件加密;并且将加密文件上传到归档设备;当下载加密文件时,重新生成文件加密密钥;并且用重新生成的文件加密密钥将文件解密。
生成文件加密密钥的步骤可以包括根据随机生成数和私人加密密钥生成文件加密密钥,并且将随机生成的数存储在文件的头部,其中,重新生成文件加密密钥的步骤包括从文件的头部得到随机生成数,并且根据随机生成数和私人加密密钥重新生成文件加密密钥的步骤。
本方法还可以包括将重新生成文件加密密钥所需的数据存储在文件加密密钥数据库中步骤。
本方法还可以包括将用于使加密文件与重新生成文件加密密钥所需的已经存储的数据匹配的数据写入文件加密密钥数据库的步骤。
本方法还可以包括将标识符写到文件的头部的步骤,该标识符包括用于使加密文件与存储的数据匹配的数据。


以下将参照附图,对本发明的例子进行详细描述,其中图1为按照本发明的实施例的数据归档系统的示意图;图2示出了用于生成和重新生成分开加密密钥的系统的实施例;图3示出了用于生成和重新生成分开加密密钥的系统的另一个实施例;图4为适合于支持图2或3的实施例异步通信系统的示意图;图5为图4的拥有者设备的示意图;并且图6为为了在本发明的实施例中使用而扩展的异步数据包的格式的示意图。
具体实施例方式
图1为按照本发明的实施例的数据归档系统的示意图。
存储设备10包括用于保存内容数据文件30的数据存储介质20。根据归档设备40进行归档或存储的要求,有选择地从称为拥有者设备的存储设备10传输或复制文件。
当文件被传输或复制时,由拥有者存储设备10对文件加密。归档设备40以加密的形式存储文件,并且允许文件被自由复制。以只有拥有者设备可以得到的方式存储解密密钥。
在图2中示出了用于生成和重新生成分开加密密钥的系统的一个当拥有者设备10接收到来自归档设备40的适当命令时,开始进行归档。由在拥有者设备10中的内容密钥生成器110利用由随机数生成器125生成的随机数120,结合拥有者设备10的私人密钥130,生成加密/解密密钥100。利用加密/解密密钥100对内容数据文件30加密,然后将随机数120存储在加密文件30’的头部150中。然后,加密文件30’被发送到归档设备40,用于存储;备案到另一个存储介质;向上传输或者由用户进行任何其他可能的使用。
私人密钥130是拥有者设备10所独有的。因此,即使第三方得到了加密文件30’并且从头部150提取了随机数120,也不能重新生成加密/解密密钥,因此不能访问未加密的内容数据文件30。
如果希望将加密文件30’重新存储到拥有者设备10,归档设备40(或任何其它已经连接的设备)利用适当的命令向拥有者设备10发送加密文件30’。该命令指示拥有者设备10重新存储相关文件。当接收的加密文件30’时,拥有者设备从头部150得到随机数120,并且在内容密钥生成器110中将随机数120与它的私人密钥130组合,生成加密/解密密钥100。然后,可以将内容数据文件30解密并且存储在数据存储介质20中,用于以后访问。
如果加密文件30’被下载到另一个存储装置中,该存储装置的私人密钥与来自头部150的随机数120结合将不能产生正确的加密/解密密钥100,并且不能访问未加密的内容数据文件30。
可以利用AV/C(音频视频控制)协议从归档设备40和拥有者设备10发送命令。
可以利用许多已知的用于生成随机数的技术中的一种技术生成随机数。
图3示出了用于生成和重新生成分开加密密钥的系统的另一个实施例。
作为在文件的头部存储随机数的另一种方法,将随机数120存储在拥有者设备10中的数据库200中。
由设备10中的内容密钥生成器210生成加密/解密密钥100。生成解密密钥100所需的数据随文件信息一起被存储拥有者设备10上的数据库200中,使得合适的数据能够与加密文件30’匹配,以便能够进行解密。在对文件30’进行加密时,数据和文件信息被写入数据库200。
与前面的实施例相同,用于对文件30加密的加密密钥是数据文件30和拥有者设备10所独有的,因此其它播放器不能将文件解密。但是,它是识别“所有权”的加密文件30’和设备10的配对。由于除了拥有者设备10以外,任何其它设备都不能访问内容数据文件30,因此,通常不需要考虑或检查用于限制传输复制受控制的内容的验证和复制控制信息。按照这样的方式,归档设备允许复制/传输到任何目的地,包括按照只有合法拥有者可以以未加密的形式访问数据文件的通知多重下载到任何一个设备。
作为在数据库200中存储信息的另一种方法,可以将(从中可以得到加密/解密密钥的)标识符存储在加密文件30’的头部。标识符也应该与随机数120一起存储在数据库200中。当显示加密文件时,设备10将得到标识符,并且在数据库200中发现与对应的标识符在一起的随机数120。可以与上述实施例结合在一起的另一种变化是将全部加密/解密密钥100存储在数据库200中,而不是随机数120。
然后,为了安全保护,保存在归档设备40上的加密版本的文件30’可以被传输到别处(如烧制到CD/DVD上),并且可以被自由复制。
图4为适合于支持图2或3的实施例的异步通信系统的示意图。
拥有者设备10,如MP3播放器,是服从DTCP的并且包括用于保存内容数据30如MP3编码的音频文件、MPEG多媒体文件等的存储装置20。在选择作者/创作者时,内容数据可以包括限制数据流传的复制控制信息(copy control information,CCI)。源设备10通过IEEE 1394桥15连接到IEEE 1394总线50。
归档设备40包括用于连接总线30的IEEE 1394桥45和存储装置46。
以此为例,归档设备40要求拥有者设备10将MP3文件30归档到它。拥有者设备10包括作为DTCP系统的一部分的IEEE 1394芯片。按照以上所讨论的方式生成加密密钥,然后利用设备10的IEEE 1394芯片的加密系统对MP3文件30进行打包和加密。随机数或其它标识符被添加到作为有用负荷头部(payload header)经过加密的数据包中,后面将对此更详细地进行说明。然后,通过总线50异步发送经过加密的数据包。在拥有者设备10和归档设备40之间不需要验证。拥有者设备10的DTCP系统的部件用于实现加密。
在归档设备40,接收加密数据包30’。但是,不对加密数据包30’解密(并且当归档设备没有保存解密密钥时不能进行解密)。数据包30’以加密的形式存储在存储装置46中。最好,对存储装置20进行配置,以使它不能被拆除并且连接到PC或用于访问数据的其它设备上。例如,这可以通过将装置上的接口限制为单个的IEEE 1394桥来机械地实现。由于这只是对存储装置进行数据访问的一个点,因此必须进行验证,以便以未加密的形式进行数据访问,这在已知没有提供IDE连接等情况下不能实现。另一种方法将是将不可移动介质或介质如NVRAM用作存储装置20。
以与同步传输相似的方式将DTCP应用于异步传输。为了将DTCP应用于异步传输,有用负荷头部还包括复制控制和密钥改变信息。以下将参照图4对包括有用负荷头部的数据包的结构更详细地进行讨论。除了经过加密的数据包被异步地而不是同步地发送以外,在使用它们的地方,所有其它机制与当前的DTCP规范一致。但是,应该强调,当只对文件进行归档/重新存储时,不需要使用如验证等机制。
为了允许对异步数据包加密并且开始归档/重新存储,实施了由1394同业协会(www.1394ta.org)提出的,对IEEE 1394总线进行规范的,用于音像设备的命令和控制协议的新的扩展命令,这里将其引用为参考。
当归档时,嵌入在数据中的复制控制信息可以被用于使加密开始。例如,系统可以被设置为迫使复制受限文件归档,而允许对复制自由文件进行自由访问。
图5为图4的拥有者设备10的示意图。
该设备包括通过加密模块250与异步传输缓冲器260连接的存储装置20。缓冲器260与设备的IEEE 1394桥的链接层300通信。设备还包括与用于存储设备的证明的证明存储器280通信的AKE系统270。AKE系统270与AV/C控制系统290连接,AV/C控制系统290又与设备的IEEE1394桥的链接层300通信。链接层300与连接物理IEEE 1394总线50的物理层310通信。
加密模块250包括加密/解密单元251、密钥生成器252、随机数生成器253和私人密钥存储器254。当要从存储装置20发送文件30时,文件被打包,以准备传输。密钥生成器252从私人密钥存储器254得到私人密钥,从而生成加密密钥。加密密钥与来自随机数生成器253的随机数结合,产生随机加密密钥。然后,随机加密密钥被传送到加密/解密单元251并且被用于对文件30加密。然后将随机数或其它标识符存储在有用负荷头部。然后将数据包传送到缓冲器260,用于异步传输。
如以上所讨论的,在接收时,通过从经过加密的数据包的有用负荷头部得到随机数或其他标识符,将数据解密。利用得到的信息,重新生成随机加密密钥。然后用这个随机加密密钥将数据包解密。然后,将经过解密、解包的文件传送的未加密的存储装置20。为了避免存储装置20被放在普通的PC中,并且避免在存储装置没有安全保护的情况下读取其数据,最好,只有存储装置20上的数据的数字输出通过IEEE 1394桥和这里所示出的它的部件。重要的是注意到这种方案中,机械地防止存储装置20被拆除以及在标准平台如PC上被查询。以未加密的形式对存储装置上的数据的任何访问都是通过所述的桥并且随后利用IEEE 1394和DTCP协议堆栈进行的。在要求对存储装置上的数据进行访问的情况下,启用如DTCP规范中描述的验证和密钥交换(Authentication and Key Exchange,AKE)程序。只有经过验证并且加密有效的设备能够以未加密的形式对该数据进行访问,尽管为了归档的目的,任何设备都可以启用归档程序。由于机械上不兼容,将存储装置插入普通PC以便用作标准IDE或SCSI硬盘将是不可能的,并且将它与标准的IEEE 1394设备(没有DTCP加密系统)将导致AKE失效。
显然,与在同步传输中一样,在异步传输中,在链接层不能进行加密。由于在异步数据包中提供了加密模式指示器(Encryption ModeIndicator,EMI)和奇/偶位,因此DTCP在链接层中进行加密,并且能够做到。在异步数据包中,这些位是不可用的,因此必须被添加到有用负荷头部中。为了实现这个目的,在链接层之上进行加密。
图6为为了在本发明的实施例中使用而扩展的异步数据包的格式的示意图。
数据包包括标准头部400、有用负荷头部410和有用负荷420。标准头部400与在DTCP和IEEE 1394网络中使用的头部一致。有用负荷头部410包括用于传送CCI信息的EMI段411、用于传送密钥变化通知的奇/偶段412以及在重新生成加密密钥中使用的随机数或其它标识符413。EMI和奇/偶位的值和使用与用于同步数据包的DTCP规范相同。有用负荷420包括经过加密的数据包。
虽然以上已经对包括在每个数据包的有用负荷的头部的随机数和其它标识符进行了讨论,但它也可能仅包括在预定(如第一或最后)数据包的有用负荷的头部中。在这种情况下,每个数据包都应该具有某种标识符,以指定数据包所属的数据流,并且由此允许进行正确的解包。
此外,在上述实施例中,要被归档的文件或数据流被分成单独的数据包,然后被加密。这意味着在归档设备对许多经过加密的数据包进行归档,并且所有的数据包必须返回到拥有者设备,以便进行重新存储。将全部文件或数据流加密为单个的实体,以允许进行更简单的文件处理等的实施例是可能的。
权利要求
1.一种数据归档系统,用于被设计为与归档设备(40)通信并且向其上传文件(30)的存储设备(10),其中,存储设备(10)被设计为在向归档设备(40)上传时生成文件加密密钥(100)并且用该文件加密密钥对文件(30)加密,当显示加密文件(30’)时,由存储设备(10)重新生成文件加密密钥(100)。
2.如权利要求1所述的数据归档系统,其中,所述存储设备包括私人加密密钥和根据随机生成的数(120)和所述私人加密密钥生成的文件加密密钥(100),其中,当上传时,随机生成数(120)被存储在所述文件(30)的头部(410)中。
3.如权利要求1所述的数据归档系统,其中,所述存储设备(10)包括私人加密密钥和文件加密密钥数据库,根据私人加密密钥生成文件加密密钥(100),其中,当上传时,将生成对加密文件(30’)进行解密的解密密钥所需要的数据写入所述文件加密密钥数据库。
4.如权利要求3所述的数据归档系统,其中,当上传时,用于将经过加密的文件(30’)与生成解密密钥所需要的数据相匹配的数据被写入所述加密密钥数据库。
5.如权利要求1所述的数据归档系统,其中,所述存储设备(10)包括文件加密密钥数据库,其中,当上传时,所述文件加密密钥被写入所述文件加密密钥数据库。
6.如权利要求5所述的数据归档系统,其中,当上传时,将标识符(413)写入所述文件的头部(410)并且写入所述文件加密密钥数据库,用于将所述文件加密密钥与所述加密的文件联系起来。
7.一种数据归档方法,包括如下步骤生成文件加密密钥;用所述文件加密密钥对文件加密;并且将加密文件上传到归档设备;当下载加密文件时重新生成所述文件加密密钥;并且用重新生成的文件加密密钥将文件解密。
8.如权利要求7所述的方法,其中,所述生成文件加密密钥的步骤包括根据随机生成的数和私人加密密钥生成所述文件加密密钥,并且将随机生成数存储在所述文件的头部,其中,所述量新生成文件加密密钥的步骤包括从所述文件的头部得到随机生成数并且根据随机生成数和私人加密密钥重新生成所述文件加密密钥的步骤。
9.如权利要求7所述的方法,还包括将重新生成所述文件加密密钥所需的数据存储在文件加密密钥数据库中的步骤。
10.如权利要求9所述的方法,还包括将用于使加密文件与存储的重新生成所述文件加密密钥所需的数据相匹配的数据写入文件加密密钥数据库的步骤。
11.如权利要求10所述的方法,还包括将标识符写入所述文件的头部的步骤,该标识符包括用于使加密文件与存储的数据匹配的数据。
12.一种计算机程序,包括计算机程序代码装置,当所述程序在计算机上运行时,用于执行权利要求7到11中的任何一个中的所有步骤。
13.如权利要求12所述的计算机程序,被体现在计算机可读介质上。
全文摘要
描述了一种数据归档系统和方法。存储设备(10)被设计为与归档设备(40)通信并且向其上传存储的文件(30)。存储设备(10)被设计为生成文件加密密钥并且在向归档设备(40)上传时用文件加密密钥对文件加密。当显示加密文件时,可以由存储设备(10)重新生成文件加密密钥。
文档编号G06F21/62GK1711514SQ200380103279
公开日2005年12月21日 申请日期2003年11月5日 优先权日2002年11月15日
发明者A·亚当森, G·S·弗勒明 申请人:皇家飞利浦电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1