CN1574734A - 使用可编程硬件对内容进行加密 - Google Patents

使用可编程硬件对内容进行加密 Download PDF

Info

Publication number
CN1574734A
CN1574734A CNA2004100490539A CN200410049053A CN1574734A CN 1574734 A CN1574734 A CN 1574734A CN A2004100490539 A CNA2004100490539 A CN A2004100490539A CN 200410049053 A CN200410049053 A CN 200410049053A CN 1574734 A CN1574734 A CN 1574734A
Authority
CN
China
Prior art keywords
content
encrypted
programmable hardware
key
configuration
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.)
Granted
Application number
CNA2004100490539A
Other languages
English (en)
Other versions
CN100571128C (zh
Inventor
D·M·汉克斯
A·德洛姆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of CN1574734A publication Critical patent/CN1574734A/zh
Application granted granted Critical
Publication of CN100571128C publication Critical patent/CN100571128C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Storage Device Security (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

公开了使用可编程硬件的内容加密方案的方法和设备。在一个实施例中,内容请求被传输(305)给内容提供商(100)。响应于该内容请求,接收一个会话密钥(310),并且使用该会话密钥来配置(315)可编程硬件(170),以生成第一配置。生成标识密钥(320),并且可使用编程硬件的所述第一配置来对该标识密钥进行加密(330)。已加密的标识密钥被传输(335)给内容提供商。然后,接收(340)包含该标识密钥的、已加密的内容。

Description

使用可编程硬件对内容进行加密
技术领域
本发明涉及内容加密,更具体而言,涉及使用可编程硬件来对内容进行加密。
发明背景
在正在浮现的启用因特网的数字资产商业世界中,可以用以传输资产的简易性使得许多新型商业成为可能。令人遗憾的是,这种传输的简易性也令数字资产暴露于广泛的非法复制和发布。采用数字形式的内容能够在没有质量下降的情况下被复制。因而,分销商和艺术家损失了对那些否则可能购买内容、却代之以非法获取该内容的顾客的潜在销售量。
发明内容
公开了方法和设备,用于使用可编程硬件对内容进行加密。在一个实施例中,内容请求被传输到内容提供商。响应于该内容请求接收会话密钥。该会话密钥被用来使用第一配置来配置可编程硬件。生成标识密钥,并且使用可编程硬件的所述第一配置来对该标识密钥进行加密。该已加密的标识密钥被传输到内容提供商。然后,接收包含该标识密钥的已加密的内容。
在另一实施例中,在从内容顾客那里接收内容请求之后,会话密钥被发送给该内容顾客。响应于发送该会话密钥,接收已加密的标识密钥。可编程硬件被配置成用来对该已加密的标识密钥进行解密。然后,使用第二配置来配置该可编程硬件,并且该可编程硬件被用来根据与该内容请求相关联的内容生成包含该标识密钥的已加密的内容。
附图说明
在附图中图解本发明的例证性的实施例,其中:
图1是示出内容提供商和内容顾客的示例性配置的方框图;
图2示出图1中所示可编程硬件的示例性实施例;
图3是一流程图,示出用于接收可以由图1中的内容顾客使用的内容的示例性方法;
图4是一流程图,示出对可以依据图3中示出的方法接收的内容的存储;
图5示出用于对可能由图1中的内容提供商使用的、已加密的内容进行转移的示例性方法;
图6示出依据一个实施例的用于创建具有已加密的内容的介质的方法;
图7是示出用于访问已加密的内容的示例性过程的流程图;
图8是示出依据一个实施例的、用于复制已加密的内容的过程的流程图;
图9示出用于确定可以在图8中的复制过程中使用的所允许的复制权的示例性方法;以及
图10示出示例性的访问控制过程。
具体实施方式
图1中示出一个示例性的配置,其包含有向内容顾客150提供内容的内容提供商100。内容提供商100与内容顾客150通信地耦合。内容提供商100可以是在网络上的一台计算机,其向内容顾客150提供内容。举例来说,内容提供商可以是万维网上的一台服务器,其向客户机顾客150提供诸如数字电影、音频文件、软件程序或者文本文件之类的内容。
内容提供商100还可以是一种源设备,例如磁带驱动器、磁盘驱动器、高密度磁盘(CD)驱动器、CD播放器、数字多用盘(DVD)播放器、或者其他提供用于复制、播放或者其他类型内容访问的内容的设备。内容顾客150可以是一台客户端计算机,或者是一个目的地设备,例如磁带驱动器、磁盘驱动器、可写入CD驱动器、可记录DVD驱动器、计算机监视器、电视、立体声装置、或者其他作为复制、播放、存储或者其他类型内容访问的目地的设备。
内容提供商100可以与内容库130通信地耦合。内容库130可以是计算机文件或者数据库,包含对应于能够被内容顾客150请求的内容的、一个或多个音频、视频、文本或者其他类型文件。应该理解的是,其他实施例可以不包括内容库。代之以,待提供的内容可以被存储在缓冲器中,或者可以是被存储在磁盘、磁带、CD、DVD或者其他类型存储介质上的数据。
内容提供商100还与密钥库135通信地耦合。密钥库135包含一个或多个密钥,用作在本申请中稍后将说明的加密过程的一部分。其他实施例可以不包括密钥库135。代之以,所述密钥可以与被提供的内容一起被存储到另一位置,可以由替代的源提供,或者“实时地”生成。
可编程硬件120与内容提供商100通信地耦合。可编程硬件170还与内容顾客150通信地耦合。可编程硬件120、170是能够被使用各种不同的配置来配置的设备,例如现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)、或者一种微处理器。可编程装置120、170依据它的当前配置不同地操纵数据。尽管在该申请中,将始终参考由可编程硬件执行的功能,但是应该理解的是:在替代的实施例中,这些功能可以由可配置软件执行。
内容提供商100可以使用可编程硬件120对内容进行加密。内容顾客150可以使用可编程硬件170对内容进行解密。内容提供商100和内容顾客150能够配置数据,并将数据输入到它们各自的可编程装置。然而,两方中的一方或者两方都可能不了解由特定的配置模式生成的可编程装置的配置,并且因而可能不知道当按照特定模式配置该可编程装置的时候、该可编程装置用来操纵数据的方式。使用可编程硬件对内容进行加密就使得窃听者难以访问已加密的内容,因为可编程硬件依据它的配置,可以提供数目几乎不受限的算法可能性。
可编程硬件170包括密钥生成器180。在一个实施例中,密钥生成器180可以是一个随机数生成器。密钥生成器180可以用来生成在加密过程中使用的标识密钥。应该理解的是:在替代的实施例中,密钥生成器180可以是与可编程硬件170通信地耦合的独立部件。
存储介质185可被用于存储从内容提供商接收的内容。存储介质185可以是磁盘、CD、磁带、DVD、或者其他类型的用于存储内容的设备。应该理解的是,某些实施例可以不包括该存储介质185。举例来说,如果内容顾客是重放设备,则内容可以被直接地发送给一个用来向用户播放该内容的部件。
在如上所述的配置中,不同的部件被描述为与其他部件通信地耦合。通信耦合是指允许在所述部件之间通信的耦合。这可以借助于总线、电缆、网络、无线机制、或者其他允许在部件之间通信的机制。
在一个实施例中,可编程硬件170可以是图2中所示的现场可编程门阵列(FPGA)200。FPGA 200包括配置输入205,用于接收一种配置模式,例如配置位流。该配置模式被用来配置可配置单元220。可配置单元220可以包括逻辑门序列或者阵列,例如与门、或门、与非门、以及或非门。可配置单元还可以是位置,例如触发电路。
不同的配置模式可被用于按照各种不同的配置对FPGA 200进行配置。数据输入215将数据输入到FPGA 200的配置中。依据可配置单元的配置,数据被不同地操纵。数据输出225与可配置单元耦合,并且被用来输出已操纵的数据。
FPGA 200还包括不可重新配置的存储器210。不可重新配置的存储器210可被用于存储在加密过程中使用的标识密钥。此外,FPGA 200还包括密钥生成器230,用于生成标识密钥,并且用于使用该标识密钥对不可重新配置的存储器215进行初始配置。在其他实施例中,FPGA200可以不包括不可重新配置的存储器210或者密钥生成器210。
图3示出用于接收可能由内容顾客使用的内容300的方法。该方法始于把对内容的请求传输给内容提供商305。对内容的请求可以是由想要经由因特网下载内容的客户作出的请求,由用于复制数据的计算机或者目的地驱动器作出的请求,由用于访问存储内容的重放设备作出的请求,或者是其它对于内容的请求。
接下来,响应于该内容请求,从内容提供商那里接收会话密钥310。该会话密钥可以是被用于配置可编程硬件170的位流或者其他类型配置模式。
然后,通过使用该会话密钥,以第一配置对可编程硬件170进行配置315。举例来说,会话密钥可以被输入到FPGA的配置端口,并且被用于配置该FPGA。可编程硬件的结果配置是将依据由该配置确定的算法操纵数据的逻辑。
几乎同时,生成了标识密钥320。标识密钥可以是由现有技术中公知的任何类型的随机数生成器生成的随机数。它可以被用作唯一标识符,来限制对被请求内容的复制或者访问。在一个实施例中,可编程硬件170是一种包含随机数生成器的FPGA。该FPGA通过与FPGA外部的电路交互以便对诸如模拟噪声生成器之类的生成器生成种子,来生成标识密钥。
在生成标识密钥之后,它被存储325,供将来引用。标识密钥可以被存储在只能由用于获取该内容的可编程硬件170、或者由类似的可编程硬件访问的受限制区域中。为了确保该区域被保持为仅仅可由可编程硬件访问,对于该受限制区域的访问请求可以被监视,并且不是由可编程硬件发起的所有请求都可以被阻塞。
在一个实施例中,该受限制区域可以是一个和用于存储该内容的介质相同的存储介质中的区域。该区域对于用户来讲,可能是无法通过正常的接口命令来访问的。将标识密钥存储在与内容相同的存储介质上可以允许任何装备有可编程硬件170的设备访问该内容,但是不具有存储在受限制区域中的正确标识密钥的内容副本可能是无法被访问的。替换地,该标识密钥也可以是存储在一个仅仅能由这一特定的可编程硬件访问的区域中,例如该可编程硬件内部的存储器中。这可以将内容重放仅仅限制到具有可以访问该用于获取内容的可编程硬件的设备或多个设备。
此后,可编程硬件被用于对标识密钥进行加密330。标识密钥可以流经该可编程硬件,以生成加密密钥。可编程硬件使用由可编程硬件的第一配置确定的算法对标识密钥进行加密。
接下来,该已加密的标识密钥被传输到内容提供商335。然后,接收已加密的内容340。该已加密的内容包含采用加密形式的被请求内容和标识密钥。如在该申请中的其它地方所说明的那样,该标识密钥可被用于确保该内容只能由能访问该标识密钥的顾客解密。
也可以与所述已加密的内容一起接收其他信息。可以接收内容访问密钥,用于对该已加密的内容进行解密。如果内容是使用两层加密传输的,则可以接收可用于对外层传输进行解密的传输密钥。还可以接收顾客可能在以后的内容复制或者共享时使用的其他密钥。
此外,可以与已加密的内容一起接收内容的访问权限,或者在对外层加密进行部分解密的时候,使内容的访问权限显露。这些访问权限可以包括观看或者访问该内容的截止日期,用于限制该内容可以被观看或者访问的时间总数的允许现看时间,以及用于限制该内容可以被访问的次数的允许访问计数。这些访问权限可以被写入受限制区域,供以后使用。这一区域可以是与用于存储标识密钥的区域相同的区域,或者它可以是不同的区域。
尽管图3描述了该方法的一种顺序,但是应该理解的是:替代的实施例可以使用不同的顺序。举例来说,可以在配置可编程硬件315之前生成标识密钥320。此外,可以在被生成之后的任何时刻存储所述标识密钥325。
在一个实施例中,在接收所述已加密的内容之后,它可以被存储,供以后访问或者重放。图4示出一种在已经接收内容之后对其进行存储的方法400。可能已经接收了具有用于额外安全性的两层加密的所述内容。最外一层加密可被用于对该内容以及提供对该内容访问的内容访问密钥进行加密。还可以使用所述最外层加密对其他信息进行加密,所述其他信息诸如是要在以后由当前内容顾客对来自第二顾客的内容进行复制或者访问时使用的配置密钥。
在存储内容之前,作出对于该内容是否被双倍加密的判定405。如果使用第二层加密对该内容加密,则还将从内容提供商那里接收410传输密钥,以便对最外层加密进行解密。所述传输密钥可以已经作为已加密的内容的首部而被接收。举例来说,所述传输密钥可以是被用于配置可编程硬件的位流或者其他类型配置模式。通过使用所述传输密钥以第二配置来配置可编程硬件415。
然后,可编程硬件的所述第二配置被用于对外层加密进行解密420。这可以通过让已加密的内容流经该可编程硬件的数据输入的同时以所述第二配置配置可编程硬件来执行。作为这一解密过程的一部分,可以显露用于对内容的最终层和诸如访问权限之类的其它信息进行解密的内容访问密钥。如果访问权限被显露,则它们可以被写入该存储介质的受限制区域。
在已经除去了外层加密之后,或者已经确定该内容没有被双倍加密405之后,使用最终层加密进行加密的内容与内容访问密钥一起被存储425。如果该内容没有被双倍加密,则还从内容提供商那里接收内容访问密钥连同已加密的内容。还可以存储可能被随后的内容顾客使用的其他密钥。内容可以被存储在任何类型的存储介质上,例如磁盘、CD、磁带、或者可记录DVD。
被存储的、已加密的内容包含标识密钥。通过以加密形式存储内容,对未加密内容的访问被限制到能访问与该已加密的内容中包含的标识密钥相匹配的标识密钥的设备。如在别处说明的那样,这可能仅仅是能访问该用于获取内容的可编程装置的设备或多个设备。如果标识密钥也被存储在该存储介质上,则可由能够对可在图7中所述解密过程中使用的可编程装置进行访问的任何设备进行访问。
图5是示出可由内容提供商使用的内容转移过程500的流程图。在接收了对内容的请求505之后,会话密钥被发送给内容顾客510。由该内容转移过程使用的密钥可以从密钥库处获得,或者可以与被传输的内容相关联。
接下来,响应于该会话密钥,从内容顾客那里接收515已加密的标识密钥。该标识密钥可能已经由内容顾客依据一种由通过使用该会话密钥配置的可编程硬件所确定的算法进行加密。
内容提供商能访问配置其可编程硬件所需要的密钥,以便可编程硬件被配置为对标识密钥进行解密。相应地,使用适当的密钥将内容提供商的可编程硬件配置为第一配置520。应该理解的是:内容顾客的可编程硬件内部的逻辑可以与内容提供商的可编程硬件内部的逻辑相同或者不同。因此,用于使用解密算法配置供应商的可编程硬件的密钥可以与发送给内容顾客的会话密钥相同,或者可以与之不同。
在配置可编程硬件之后,依据由第一配置确定的解密算法对标识密钥进行解密525。然后,通过使用另一密钥以第二配置来配置可编程硬件520。该可编程硬件的第二配置被用来对由顾客请求的内容加密535。在一个实施例中,在内容正在被加密的同时,可编程硬件还可以将标识密钥插入到内容的一个或多个位置中。替换地,所述标识密钥也可以在加密过程之前被插入到内容的一个或多个位置中,或者被追加给该内容。然后,把包含标识密钥的、已加密的内容传输到内容顾客540。可被用于配置顾客的可编程硬件、以便对已加密的内容进行解密的内容访问密钥也被传输。电子剽窃者可能无法窃听依据如上所述的过程传输的内容。如将进一步参照图7说明的那样,在某些实施例中,已加密的内容可能无法被解密,除非该用户能访问内容中包含的标识密钥。
在替换的实施例中,其他信息可以随着该内容一起被加密。举例来说,指定内容的复制特权以及该内容的任何授权复制的特权的复制特权信息可以被追加给该内容,并且与被内容一起被加密。允许内容顾客充当内容提供商的密钥也可以随着该内容一起被加密。替换地,可以与该内容相独立地发送诸如复制特权信息或者密钥之类的信息。
此外,可以使用第二层加密对已加密的内容和诸如访问权限、其他配置密钥以及内容访问密钥之类的其它信息进行加密。为了执行这一第二层加密,一个密钥被用来按照第三配置对可编程硬件进行配置。接下来,可编程硬件的所述第三配置被用来对该已加密的内容及其他信息进行加密。然后,顾客可以接收这一双倍加密的内容,而不是第一已加密的内容。可被用于配置顾客的可编程硬件、以便除去外层加密的传输密钥也可以被传输。
图6示出用于创建供以后发布的介质的方法。这一过程可以被DVD电影或者音乐CD的制造商所使用。应该理解的是:替代的实施例可以使用与图6中描述的那些不同的顺序。
首先,获取用于唯一地标识这一介质的标识密钥605。该标识密钥对于所有包含相同内容的介质都可以是相同的,或者可以是每一介质可以具有它自己的标识密钥。标识密钥可以被生成,或者可以从密钥库或者其他位置获得。
接下来,配置可编程硬件。可编程硬件的结果配置是将依据由该配置确定的算法操纵数据的逻辑。该可编程硬件的这一配置被用来对介质内容进行加密615。
作为加密过程615的一部分,可编程硬件还可以将标识密钥插入到内容的一个或多个位置中。替换地,所述标识密钥也可以在加密过程之前被插入到内容的一个或多个位置中,或者被追加给该内容。
大约在同时,标识密钥被写入介质中的受限制区域620。这一区域是一个可能无法被用户访问的区域。在一个实施例中,所述受限制区域可以是一个仅仅能由可编程硬件访问的区域。
然后,包含标识密钥的、已加密的内容被写入介质630。用于配置顾客的可编程硬件、以便对已加密的内容进行解密的内容访问密钥也可以作为该内容的首部被写入介质。
如同内容由内容顾客接收的情况一样,也可以在与在下面参照图7所描述的过程相类似的过程中,对通过这一过程创建的介质内容进行访问。在一个实施例中,如果介质不包含与被插入该内容中的标识密钥相匹配的标识密钥,则所述内容将不被解密。
因此,如上所述的实施例可以灭除非法复制,因为在未授权的复制过程期间,被写入受限制区域中的标识密钥是无法复制的。
图7示出用于访问已加密的内容的方法700。已加密的内容可以在它被获取之后立即被访问,或者可以是从一个存储介质中对其进行访问。依据一个实施例,可以仅仅在如图8中所描述的授权复制期间对内容进行解密,或者在内容正在被重返或者使用的时候对其进行解密。这提供了对内容的补充防护,因为用户永远无权访问未加密的内容。
该方法开始于获取内容访问密钥705,该内容访问密钥将被用作解密内容的密钥。这一密钥可能已经被作为已加密的内容的首部而发送或者存储。在一个实施例中,通过如参考图4所描述的、除去外层加密来获取该内容访问密钥。
接下来,使用该内容访问密钥来配置可编程硬件710。可编程硬件的结果配置是将依据由该配置确定的一个解密算法操纵数据的逻辑。
然后,获取已加密的内容中包含的内容标识密钥715。可以通过让已加密的内容的一部分流经该已配置的可编程硬件、直到定位该内容标识密钥为止,来获取这一内容标识密钥。大约在同时,也获取了用户标识密钥720。用户标识密钥可以被从可编程装置中的一个存储区域、存储介质上的一个受限制区域、或者其他位置中检索出来。
接下来,内容标识密钥被与用户标识密钥相比较725。如果密钥不匹配,则内容不被解密,并且对该内容的访问被禁止或者被拒绝735。如果该内容标识密钥与用户标识密钥相匹配,则使用已配置的可编程硬件对该内容进行解密730。可以通过让已加密的内容流经可编程硬件的数据输入来完成这一点。然后,依据由可编程硬件的配置确定的解密算法对所述流动的内容进行解密。在替代的实施例中,然后,可以让该解密的内容流经与可编程硬件耦合的数模转换器,以致仅仅可获得模拟格式的未加密内容。
图8示出一种用于复制已加密的内容的方法。在主机启动复制请求800之后,作出关于复制是否被允许的判定810。图9中示出可被用于判定复制是否被允许的过程。
参考图9,使用内容访问密钥,以第一配置来配置可编程硬件905。该可编程硬件可以与用于复制的源设备或者目标设备相关联。可以从已加密的内容上的首部或者另一位置处获得内容访问密钥。可编程硬件的结果配置是将依据由该配置确定的一个解密算法操纵数据的逻辑。
使用可编程硬件的第一配置,来获取内容标识密钥和复制特权信息910。可以通过让已加密的内容的一部分流经该已配置硬件、直到定位该内容标识密钥为止,来获取这一内容标识密钥。可以按类似方式获取所述复制特权信息,或者可以从存储介质上的受限制区域或者另一区域处获得所述复制特权信息。如果复制特权信息是被加密的,则可以通过使其流经可编程硬件的第一配置来对其进行解密。替代的实施例可以不包括复制特权信息。
接下来,内容标识密钥与用户标识密钥相比较915。用户标识密钥可以从受限制区域处获得,例如存储介质上的一个无法由用户访问的区域。如果这些密钥不匹配920,则作出不允许复制的判定925。
如果密钥匹配,则可以作出另一校验,以便判定所述复制特权是否允许复制930。在910中获取的复制特权信息被读取,以便判定什么复制特权与该已加密的内容相关联。复制特权可以授权没有限制的复制权,授权仅仅复制一组数目的复制,或者根本不授权复制。也可以包括其他复制特权信息。举例来说,所述复制特权信息可以包括被授予一个授权的复制的复制特权。这些特权可以是与原始内容的复制特权相同的,或者可以不同于原始内容的复制特权。应该理解的是:在不包括复制特权信息的替代实施例中,可以作出如果密钥匹配的话则允许复制的判定。
如果复制特权不允许复制,则作出不允许复制的判定925。如果特权允许没有限制的复制935,则作出允许复制的判定。
如果特权只允许一组数目的复制,则读取复制历史940。所述复制历史可以被从存储介质上的受限制区域或者其他位置读取。所述复制历史可以包括所进行的复制数目的历史,以及进行那些复制的日期。如果复制历史是被加密的,则可以通过使其流经可编程硬件的第一配置来对其进行解密。
在一个实施例中,如果由复制特权允许的复制数目小于已进行过的复制数目945,则作出允许复制的判定。否则,已经进行了被授权的复制数目,就不再允许复制925。如果允许一次复制,则可以在复制过程中的某个时刻更新复制历史,以便记录与进行新复制相关联的信息。
回到图8,如果作出不允许复制的判定,则复制该数据的请求被拒绝825。否则,该内容被解密820。可以在与参考图7说明的过程相似的过程对内容进行解密,并且可以通过与诸如磁盘驱动器或者可记录CD驱动器之类的源设备相关联的可编程装置来执行该内容。
或者在对内容进行解密之后,或者作为解密过程的一部分,除去与该内容相关联的内容标识密钥830。用在内容复制中的新的标识密钥被接收835。这一新的标识密钥可以是由目标设备生成的,并且可以是在与在510、515、520、和525中说明的过程相似的过程中接收的。
然后,使用将以加密算法配置可编程硬件的密钥,以第二配置对可编程装置进行配置840。这一密钥可以随着内容一起被存储,可以是从密钥库处获得的,或者可以是从另一位置处获得的。该可编程硬件的所述第二配置被用来对内容进行加密845。或者在内容被加密之前,或者作为加密过程的一部分,把新的标识密钥追加或者插入到内容的一个或多个位置中。与该复制相关联的复制特权信息也可以与内容一起被加密。替换地,复制的复制特权信息可以被以未加密的形式追加给内容。
接下来,已加密的内容被发送给目标设备,以便被复制到复制介质中850。包含内容访问密钥和任何其他密钥或者信息的首部可以被与已加密的内容一起发送。此外,可以使用第二层加密将内容发送给目标设备。可以由目标设备使用与在图4中说明的过程相似的过程,在将内容写到介质之前除去外层加密。如果复制特权信息没有被作为内容的一部分加密,则目标设备可以在把该已加密的内容复制到介质之前、在把该已加密的内容复制到介质期间或者在把该已加密的内容复制到介质之后,将该复制特权信息写到复制介质的受限制区域。
应该理解的是:替代的实施例可以包括对如上所述的复制过程的变动。举例来说,原始内容可以不被解密,以及标识密钥可以不被除去。代之以,复制可以使用和原始内容相同的标识密钥。然后,原始内容标识密钥可以被传输到目标设备,以便被写入复制介质的受限制区域,致使复制的内容可以被访问。为了安全性起见,内容标识密钥可以在被发送给目标设备之前与采用第二层加密的、已加密的内容一起被加密。
图10示出可被用于控制对内容的访问的过程1000。使用内容访问密钥来配置与请求访问内容的设备相关联的可编程硬件1005。内容访问密钥可以被存储为已加密的内容的首部或者存储到另一位置中。。
然后,获取与该内容相关联的访问权限和标识密钥1010。举例来说,可以通过令一部分内容流经可编程装置来获取内容标识密钥。访问权限可以被类似地获取或者可以从受限制区域读取。如果访问权限被以加密形式存储在受限制区域上,则可编程装置可被用于对该访问权限解密。这些访问权限可以包括能够访问该内容的允许次数,可以观看或者访问该内容的允许时段,可以观看该内容的总的经过的观看时间,和/或用于访问该内容的截止日期。也可以包括其他访问权限。
接下来,内容标识密钥被与用户标识密钥相比较1015。用户标识密钥可以从受限制区域处获得,例如存储介质上的一个无法由用户访问的区域。如果密钥不匹配1020,则对该内容的访问被拒绝1025。
如果密钥匹配1020,则读取访问历史1030。所述访问历史可以被从包含该内容的存储介质上的受限制区域或者其他位置读取。如果访问历史是被加密的,则可以通过将其流经被配置的可编程硬件来对其进行解密。在访问权限包括截止日期的实施例中,可能不读取访问历史,或者可以在作出还没有到达该截止日期的判定之后才读取该访问历史。
作出是否已经超过访问特权的判定1035。在一个实施例中,访问权限包括授权访问的总数目。如果访问历史包括信息:内容已经被访问的数目小于授权访问的数目,则只要没有超过其它的访问特权则允许访问该内容1040。如果访问历史信息表明内容已经被访问了授权的次数,则对该内容的访问被拒绝1025。如果访问特权包括观看者可以观看该内容的总的过去的观看时间,则进行类似的校验。
在一个实施例中,这些访问权限可以包括截止日期和其他访问权限,或者包括截止日期而不包括其他访问权限。截止日期可以是一个绝对的日期,或者可以是一个与获取该内容的日期相对的日期。在本实施例中,可以将该截止日期和与访问该内容的设备相关联的日期代码相比较。如果已经经过了截止日期,则对该内容的访问被拒绝1025。为了额外的安全性,可以通过可作为该可编程硬件的一部分的非易失性时间保持电路来生成该日期代码。如果去掉该时间保持电路的电源,则该电路可以复位到一个使所有日期代码内容都无法被访问的状态。
也设想了除如上所述的那些以外的访问权限。对访问特权是否已经超过的判定可以随着待分析的访问权限而变化。在某些实施例中,如果已经超过了访问特权,则该内容可能被破坏。这可以通过改写某些或者全部内容实现。如果对内容的访问被允许,则访问历史可以被更新到反映新的访问。在更新访问历史之前,该用户的活动可以被监视以便判定用户观看该内容的总的过去的观看时间。
应该被理解的是:存在许多能够存储和获取访问权限的方式。在一个实施例中,访问权限可以是可更新的。可以通过使用访问标识密钥对访问权限加密来提供额外的安全性。与图3和图5中描述的过程相似的过程可被用于发送与接收新的或者更新的访问权限。可以使用与原来接收的访问权限不同的访问标识密钥对更新的访问权限加密。新的或者更新的访问权限以及与该访问写入相关联的标识密钥可以被写入在包含有被访问内容的同一存储介质上的限制区域。

Claims (10)

1.一种方法,包括:
将内容请求传输(305)到内容提供商(100);
响应于该内容请求,接收(310)会话密钥;
使用该会话密钥来配置(315)可编程硬件(170),以生成可编程硬件的第一配置;
生成(320)标识密钥;
使用可编程硬件的第一配置对该标识密钥进行加密(330);
将该已加密的标识密钥传输(335)到所述内容提供商;以及
接收(340)包含该标识密钥的、已加密的内容。
2.如权利要求1所述的方法,进一步包括:
响应于所述已加密的标识密钥,从内容提供商接收(410)与所述已加密的内容相关联的传输密钥,所述传输密钥与已加密的内容的第一层加密相关联;
使用该传输密钥来配置(415)可编程硬件,以生成可编程硬件的第二配置;以及
使用所述可编程硬件的第二配置,以便从已加密的内容中去除(420)第一层加密,并将内容访问密钥显露出来,所述内容访问密钥与已加密的内容的第二层加密相关联。
3.如权利要求1或者2中任一所述的方法,其中,所述已加密的内容包含嵌有标识密钥和访问权限的内容。
4.如权利要求3所述的方法,其中,所述访问权限包括截止日期、所允许的观看时间和所允许的访问计数中的至少一个。
5.如权利要求1所述的方法,进一步包括:
从内容提供商接收与已加密的内容相关联的内容访问密钥(705);
使用该内容访问密钥来配置(710)可编程硬件,以生成可编程硬件的第二配置;以及
使用可编程硬件的第二配置对已加密的内容进行解密(730)。
6.如权利要求5所述的方法,其中,使用第二配置包括:
使用第二配置对已加密的内容的至少一部分进行解密;
将嵌入到内容中的内容标识密钥与所述标识密钥进行比较;
判定内容标识密钥与标识密钥匹配(725);以及
对已加密的内容进行解密。
7.如权利要求1-6任一所述的方法,其中,所述可编程硬件是现场可编程门阵列(FPGA)(200)。
8.如权利要求1-7任一所述的方法,进一步包括:将所述标识密钥写(325)到可编程硬件的受限制区域。
9.一种方法,包括:
当接收(505)到来自内容顾客(150)的内容请求时,将会话密钥发送(510)到该内容顾客;
响应于发送该会话密钥,接收(515)已加密的标识密钥;
使用第一配置来配置(520)可编程硬件;
通过使用可编程硬件的第一配置对已加密的标识密钥进行解密来获取(525)标识密钥;
使用第二配置来配置(530)所述可编程硬件;
以及
使用可编程硬件的第二配置来生成第一加密的内容(535),该第一加密的内容包含来自与内容请求相关联的内容中的标识密钥。
10.如权利要求9所述的方法,其中,使用可编程硬件的第二配置包括:
使用可编程硬件的第二配置来把所述标识密钥插入到与内容请求相关联的内容中的至少一个位置中,并且对插入有所述标识密钥的内容进行加密。
CNB2004100490539A 2003-06-11 2004-06-11 使用可编程硬件对内容进行加密 Expired - Fee Related CN100571128C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/460481 2003-06-11
US10/460,481 US7440574B2 (en) 2003-06-11 2003-06-11 Content encryption using programmable hardware

Publications (2)

Publication Number Publication Date
CN1574734A true CN1574734A (zh) 2005-02-02
CN100571128C CN100571128C (zh) 2009-12-16

Family

ID=32713618

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100490539A Expired - Fee Related CN100571128C (zh) 2003-06-11 2004-06-11 使用可编程硬件对内容进行加密

Country Status (6)

Country Link
US (1) US7440574B2 (zh)
JP (1) JP3996912B2 (zh)
CN (1) CN100571128C (zh)
DE (1) DE102004008702B4 (zh)
GB (1) GB2403314B (zh)
TW (1) TWI324472B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008009168A1 (fr) * 2006-07-10 2008-01-24 Bo He Procédé de protection d'une information de configuration sur un dispositif de logique programmable
CN105515763A (zh) * 2014-10-01 2016-04-20 马克西姆综合产品公司 用于经由逻辑门加密来提高机密性的系统和方法

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050097315A1 (en) * 2003-10-30 2005-05-05 Tzahi Carmeli Method and apparatus to configure transmitter and receiver to encrypt and decrypt data
WO2005050907A1 (en) * 2003-11-14 2005-06-02 Sonic Solutions Secure transfer of content to writable media
JP4131964B2 (ja) * 2004-12-10 2008-08-13 株式会社東芝 情報端末装置
US8364792B2 (en) * 2005-03-09 2013-01-29 Vudu, Inc. Method and system for distributing restricted media to consumers
US8452985B2 (en) 2005-04-07 2013-05-28 Panasonic Corporation Circuit building device
JP4713916B2 (ja) * 2005-04-08 2011-06-29 日本電信電話株式会社 データ保護サービスシステム及びデータ保護方法
US7958353B2 (en) * 2005-04-25 2011-06-07 Panasonic Corporation Information security device
JP2007142591A (ja) * 2005-11-15 2007-06-07 Matsushita Electric Ind Co Ltd 暗号管理方法
US7900060B2 (en) * 2006-02-17 2011-03-01 Vudu, Inc. Method and system for securing a disk key
JP4841971B2 (ja) * 2006-02-28 2011-12-21 三菱電機株式会社 データ提供システム、情報交換装置及び携帯通信端末
US8239686B1 (en) 2006-04-27 2012-08-07 Vudu, Inc. Method and system for protecting against the execution of unauthorized software
JP2009543175A (ja) * 2006-07-04 2009-12-03 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 再構成可能なハードウェアによるコンピュータ命令の実行
US8719954B2 (en) * 2006-10-11 2014-05-06 Bassilic Technologies Llc Method and system for secure distribution of selected content to be protected on an appliance-specific basis with definable permitted associated usage rights for the selected content
US20080092239A1 (en) 2006-10-11 2008-04-17 David H. Sitrick Method and system for secure distribution of selected content to be protected
US8824672B1 (en) * 2007-04-12 2014-09-02 Iowa State University Research Foundation Reconfigurable block encryption logic
WO2008144524A1 (en) 2007-05-18 2008-11-27 Verimatrix, Inc. System and method for defining programmable processing steps applied when protecting the data
US8842836B2 (en) * 2007-11-26 2014-09-23 Koolspan, Inc. System for and method of cryptographic provisioning
US9866370B2 (en) * 2007-12-05 2018-01-09 Itt Manufacturing Enterprises, Llc Configurable ASIC-embedded cryptographic processing engine
US8646105B2 (en) 2008-08-29 2014-02-04 Blackberry Limited System, method and security device for authorizing use of a software tool
EP2164014B1 (en) * 2008-08-29 2012-09-26 Research In Motion Limited System, method and security device for authorizing use of a software tool
US8762708B2 (en) 2008-10-11 2014-06-24 David L. Blankenbeckler Secure content distribution system
US8868925B2 (en) * 2008-12-09 2014-10-21 Nvidia Corporation Method and apparatus for the secure processing of confidential content within a virtual machine of a processor
US8402280B1 (en) * 2009-10-15 2013-03-19 Nvidia Corporation System, method, and computer program product for buffering in association with audio/video digital rights management (DRM) processing
US20120210134A1 (en) * 2011-02-09 2012-08-16 Navroop Mitter Method of securing communication
US9788069B1 (en) * 2011-06-24 2017-10-10 The Directv Group, Inc. Method and system for recording recommended content within a user device
JP2013251871A (ja) * 2012-06-04 2013-12-12 Toshiba Corp 無線装置、情報提供装置および無線通信方法
CN111435384B (zh) * 2019-01-14 2022-08-19 阿里巴巴集团控股有限公司 数据安全处理和数据溯源方法、装置及设备
TWI783189B (zh) * 2019-11-08 2022-11-11 精品科技股份有限公司 位元鎖磁碟管理系統

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06266670A (ja) 1993-03-11 1994-09-22 Fujitsu Ltd 暗号化仮想端末初期化装置
US6061451A (en) 1996-09-03 2000-05-09 Digital Vision Laboratories Corporation Apparatus and method for receiving and decrypting encrypted data and protecting decrypted data from illegal use
US6005935A (en) 1996-11-20 1999-12-21 At&T Corp. Method and system of using personal information as a key when distributing information
JP3928819B2 (ja) 1997-01-21 2007-06-13 ソニー株式会社 データ受信装置及び暗号処理プログラム更新方法
US6161179A (en) 1997-09-05 2000-12-12 Wea Manufacturing, Inc. Key-based protection method for light-readable discs
US6275588B1 (en) 1998-11-12 2001-08-14 I-Data International A/S Apparatus and method for performing and controlling encryption/decryption for data to be transmitted on local area network
US6324676B1 (en) 1999-01-14 2001-11-27 Xilinx, Inc. FPGA customizable to accept selected macros
WO2000044119A1 (en) 1999-01-26 2000-07-27 Infolio, Inc. Universal mobile id system and method for digital rights management
US6289455B1 (en) * 1999-09-02 2001-09-11 Crypotography Research, Inc. Method and apparatus for preventing piracy of digital content
JP2001136160A (ja) 1999-11-02 2001-05-18 Victor Co Of Japan Ltd コンテンツ提供方法
US6363357B1 (en) 1999-12-29 2002-03-26 Pitney Bowes, Inc. Method and apparatus for providing authorization to make multiple copies of copyright protected products purchased in an online commercial transaction
JP2002141895A (ja) * 2000-11-01 2002-05-17 Sony Corp コンテンツ配信システムおよびコンテンツ配信方法
US20050120232A1 (en) * 2000-11-28 2005-06-02 Yoshihiro Hori Data terminal managing ciphered content data and license acquired by software
JP4690600B2 (ja) 2001-08-23 2011-06-01 富士通株式会社 データ保護方法
KR100947152B1 (ko) * 2001-11-15 2010-03-12 소니 주식회사 이동식 매체상에 배포된 디지털 콘텐츠의 사용 및 복사를 제어하는 방법 및 그를 이용하는 디지털 저장 매체
ES2198201B1 (es) 2002-02-12 2005-01-01 Airtel Movil, S.A. Procedimiento y sistema de distribucion y gestion de derechos de uso asociados a un contenido adquirido, para terminales moviles.

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008009168A1 (fr) * 2006-07-10 2008-01-24 Bo He Procédé de protection d'une information de configuration sur un dispositif de logique programmable
CN105515763A (zh) * 2014-10-01 2016-04-20 马克西姆综合产品公司 用于经由逻辑门加密来提高机密性的系统和方法

Also Published As

Publication number Publication date
TW200428846A (en) 2004-12-16
DE102004008702A1 (de) 2005-01-13
JP2005006302A (ja) 2005-01-06
TWI324472B (en) 2010-05-01
CN100571128C (zh) 2009-12-16
JP3996912B2 (ja) 2007-10-24
GB2403314A (en) 2004-12-29
US7440574B2 (en) 2008-10-21
GB2403314B (en) 2006-07-12
DE102004008702B4 (de) 2010-01-07
GB0412457D0 (en) 2004-07-07
US20050021961A1 (en) 2005-01-27

Similar Documents

Publication Publication Date Title
CN1574734A (zh) 使用可编程硬件对内容进行加密
KR100408287B1 (ko) 컨텐트 보호 시스템 및 방법
CN101361076B (zh) 用于媒体内容的安全存储和传递的移动存储器系统
KR100735503B1 (ko) 정보 송신 시스템, 장치 및 방법 및 정보 수신 시스템,장치 및 방법
US11734393B2 (en) Content distribution with renewable content protection
US20050177740A1 (en) System and method for protecting a title key in a secure distribution system for recordable media content
CN1879155A (zh) 存储介质上的安全多媒体内容递送
WO2000058963A2 (en) Copy security for portable music players
CN101874248A (zh) 记录再现系统、记录媒体装置及记录再现装置
KR20060026000A (ko) 정보 기기, 정보 서버, 정보 처리 시스템, 정보 처리 방법및 정보 처리 프로그램
CN1391375A (zh) 利用用于验证的混合光盘通过网络传送电子内容
JP4698840B2 (ja) 蓄積媒体上でコピー保護を提供するための方法及びシステム及び、そのようなシステムで使用される蓄積媒体
CN101103587A (zh) 安全和便利处理密码绑定状态信息的系统和方法
JP4389129B2 (ja) 情報送信システム、情報送信装置、情報受信装置、情報送信方法
TW200535815A (en) Information processing device and method, program, and recording medium
JP2002359616A (ja) 情報処理装置および方法、ライセンスサーバ、並びにプログラム
CN100364002C (zh) 读或写用户数据的设备和方法
JP2001067324A (ja) 情報送信システム、情報送信装置及び情報受信装置
JP2001092880A (ja) 情報提供システム、リスト送信装置、情報受信装置及び情報提供方法
US20090037733A1 (en) Method for Recording and Distributing Digital Data and Related Device
KR100695665B1 (ko) 엔티티 잠금 보안 레지스트리를 사용하여 자료에 액세스하는 장치 및 방법
CN1666277A (zh) 具有分布式解密信息的记录载体
CN1890915A (zh) 通过使用复制控制信息来解密加密数据的方法和设备
CN102543131A (zh) 信息处理装置、信息处理方法和程序
JP4406799B2 (ja) 情報提供システム及び情報提供装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20091216

Termination date: 20190611