CN101637005B - 用于片段文件共享的方法、***以及装置 - Google Patents
用于片段文件共享的方法、***以及装置 Download PDFInfo
- Publication number
- CN101637005B CN101637005B CN200880008706.5A CN200880008706A CN101637005B CN 101637005 B CN101637005 B CN 101637005B CN 200880008706 A CN200880008706 A CN 200880008706A CN 101637005 B CN101637005 B CN 101637005B
- Authority
- CN
- China
- Prior art keywords
- content
- fragment
- downloader
- strategy
- uploader
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title abstract description 37
- 239000012634 fragment Substances 0.000 claims abstract description 165
- 238000009826 distribution Methods 0.000 claims abstract description 19
- 238000012795 verification Methods 0.000 claims description 6
- 230000009471 action Effects 0.000 claims description 2
- 230000003993 interaction Effects 0.000 abstract 1
- 230000008569 process Effects 0.000 description 22
- 238000012545 processing Methods 0.000 description 13
- 238000007726 management method Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 230000000875 corresponding effect Effects 0.000 description 4
- 239000000463 material Substances 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000005538 encapsulation Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000010200 validation analysis Methods 0.000 description 3
- 101100217298 Mus musculus Aspm gene Proteins 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000002194 synthesizing effect Effects 0.000 description 2
- 230000009897 systematic effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 101100234002 Drosophila melanogaster Shal gene Proteins 0.000 description 1
- 235000015076 Shorea robusta Nutrition 0.000 description 1
- 244000166071 Shorea robusta Species 0.000 description 1
- 241000700605 Viruses Species 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000004083 survival effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/105—Arrangements for software license management or administration, e.g. for managing licenses at corporate level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/108—Transfer of content, software, digital rights or licenses
- G06F21/1083—Partial license transfers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/108—Transfer of content, software, digital rights or licenses
- G06F21/1085—Content sharing, e.g. peer-to-peer [P2P]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/101—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measures for digital rights management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Technology Law (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明描述了用于促进片段内容的分发和管理的***、方法、软件以及装置。在一个实施例中,封装器将内容封装成片段并生成包括与该内容相关联的策略和元数据的清单。下载器获得清单并使用该清单从一个或多个上传器获得内容。例如,下载器可以向一个或多个***转发搜索请求,***继而可用于根据任何相关联策略限制来定位能够满足该请求的一个或多个上传器。上传器根据任何相关联策略来向下载器转发片段。下载器从片段组装内容。实体的操作和交互可以经受与片段、整个内容等等相关联的策略限制。
Description
版权公告
本专利文献的公开的一部分包含受到版权保护的材料。版权所有者不反对任何人对专利文献或专利公开进行传真复制,因为其出现在专利与商标局专利档案或记录中,但在别的方面却保留所有版权。
背景和内容
诸如BitTorrent、eDonkey2000、eMule以及KaZaA的对等网络(“P2P”)片段文件共享***已变成非常受欢迎的用于在因特网上分发(distribute)内容(尤其是诸如视频文件的相对较大的内容)的媒体。然而,从可靠性和/或安全性观点出发,这些***存在问题,其具有使用此类***来分发有价值的内容项目的有限商业生存能力。
本文描述了用于以改善上述某些或全部问题的方式来分发内容的***、方法、装置、以及软件。
附图说明
图1是用于执行片段文件(fragmented file)共享的计算机网络的示意性表示。
图2是示出用于执行片段文件分发的过程的流程图。
图3是示出创建片段文件的过程的流程图。
图4是示出用于上传片段文件的过程的流程图。
图5是示出用于下载片段文件的过程的流程图。
图6是示出用于向***(tracker)登记片段文件的过程的流程图。
图7是示出用于确定片段文件位置的过程的流程图。
图8是示出用于检索和播放包括片段文件的内容的过程的流程图。
图9A是示出用于检索和播放包括片段文件的内容的过程的流程图。
图9B和9C示出用于封装、检索以及播放包括片段文件的内容的另一示例性过程。
图10A、10B以及10C举例说明用于实施本发明主题(body ofwork)的某些实施例的说明性***的各方面。
图11示出可以用于实施本发明主题的实施例的计算***的更详细示例。
具体实施方式
除非通过上下文很清楚,否则本文所用的以下术语通常将具有以下意义。
“内容”(或“数字内容”或“电子内容”)通常指代电子地存储和/或发送的所有以及任何类型或格式的数据或其它信息。内容的示例包括但不限于软件块、数字音乐、数字电影、数字图像、多媒体块、电子书或其它文档等等。
“内容片段”(或“片段”)通常指的是内容块(piece of content)的子集(例如电影的一部分、歌曲的一部分、包含图像的文件的一部分等等)。片段可以动态地生成,或者可以是静态的。“内容片段”包括但不限于个人文件。
术语“下载器(downloader)”通常指的是获得内容片段、将其组装成可用内容块、并(通常)消费(consume)或再现(render)该内容块(例如播放、观看、和/或运行内容)的实体。
术语“清单(manifest)”通常指的是包括关于片段的细节的文件或其它数据项目,所述片段包括内容块。如下面更详细地描述,清单可以包括内容元数据、片段级策略(fragment-level policy)、内容级策略、关于内容或片段发现的信息(诸如用于适当***的联系信息)等等。
术语“封装器(packager)”通常指的是执行与内容和/或片段的准备相关联的处理的实体。例如,封装器可以将内容变换为片段,生成具有相关联策略信息的一个或多个清单(可能包括从其它源提供的策略),和/或执行与准备用于分发的内容和片段有关的其它任务。
术语“策略”通常指的是一个或多个规则或程序(procedure)的组,诸如关于可以如何对内容块进行获得、访问、使用等和/或关于***内的实体可以如何进行交互的规则和程序。
术语“策略执行点(policy enforcement point)”(或“PEP”)通常指的是执行策略的实体(诸如计算机***、软件块、基于软件的代理等等),所述策略诸如与认证、完整性、机密性、授权等有关的策略。在某些实施例中,封装器、***、上传器、和/或下载器中的某些或全部可以充当策略执行点。
术语“***”通常指的是促进内容和/或相关联元数据的发现和/或检索的实体。在优选实施例中,经由一个或多个***来发现上传器及相关联内容片段。***通常通过经由协定的传输信道来交换信息而与上传器和下载器进行交互。
术语“上传器(uploader)”通常指的是提供对内容片段的访问的实体。
图1示出用于共享片段内容的***的说明性实施例。图1所示的说明性***包括计算机网络(1000),该计算机网络包括被配置为创建和分发(并可选地检索和使用)由多个内容片段组成的数字内容的计算机(1002),所述多个内容片段可以被组合(例如连结(concatenate))以便向接收机提供可用数字内容块。如图1所示,可以经由一个或多个网络(1018、1024)从计算机(1002)向接收计算机(1004)分发内容,和/或可以由基站(1006)将内容广播到诸如膝上型计算机、个人数字助理(PDA)、便携式媒体播放器或蜂窝电话的便携式设备(1008)。可选地,或另外,可以将片段内容组合并传输(例如通过流式传输)到接收计算机和/或设备(1004和/或1008)。在一个实施例中,每个内容片段具有可用于校验其完整性的相关联标识符和信息,诸如可检查散列(hash)(例如SHA1散列或任何其它适当散列)或可检查数字签名(例如RSA或SHA1签名或任何其它适当签名)。
继续参照图1,在一个实施例中,片段内容位于与计算机1002进行联网电子通信(1018、1024)的一个或多个服务器计算机(1010、1012、1014、1020)或数据库(1016、1022)上。例如,片段内容可以位于跨越诸如(或包括)因特网的广域网(1024)而与计算机1002联网的一个或多个服务器(1020)或数据库(1022)上。同样地,接收计算机(1004)可以本地地或通过广域网(例如因特网)而与存储和发送片段内容的设备(1002、1010、1012、1014、1016、1020、1022、1008)进行联网通信。接收计算机(1004)使用任何适当的通信协议(例如TCP/IP)来获得片段内容。
图2示出用于执行片段文件共享的说明性方法的概观。使用本领域中已知的方法和装置而创建的数字内容(例如使用计算机,诸如图1所示的计算机1002)被封装成片段。这时,还可以生成一个或多个清单,并且,在一个实施例中,(多个)清单和/或一个或多个片段可以包括或引用一种或多种策略。片段被散布到一个或多个上传器(2004)。实际上,封装器常常会充当初始上传器,虽然不要求是这种情况。用户(诸如图1所示的计算机1004的用户)通过执行搜索(2006)(例如使用搜索引擎、目录、网络服务等等)和/或以任何其它适当方式来获得与片段相关联的清单。然后,使用该清单来查找***(2008)。在其它实施例中,可以使用除清单之外的机制来查找***。例如,可以将信息简单地存储在预定位置、经由查找目录来提供信息等等。
再次参照图2,下载器向***(2010)提交对片段的搜索并从(多个)上传器(2012)下载片段。在某些优选实施例中,用下文更详细地描述的可以采取任何适当形式的策略来管理(govern)上述某些或全部交互。
图3示出用于将数字内容封装成片段并上传片段及相关联信息的说明性方法。从诸如服务器、档案存储器(例如磁带或光学介质)或数据库的源获得(3002)数字内容。还检索或生成(3004)用于数字内容的策略信息。此类策略信息可以例如包括对数字内容和/或所形成的片段的分发的指示和/或限制。在一个非限制性示例中,使策略与文件类型相关联和/或动作是以文件类型为条件的。例如,文件类型可以暗示应该应用某种类型的策略。例如,电影工作室可以生成内容并将其发送到知道所有此类内容应该在其相关联清单和/或策略中具有某些信息的封装器。例如,策略之一可以是:此类内容的接收者需要获得(或具有)使用该内容的有效许可。在某些实施例中,例如,使用操作员用户界面来手动地分配策略。在其它实施例中,使用文件类型、语义暗示和/或内容分析来通过软件的智能/自动操作而分配策略。应认识到,适当策略及其实现的确定将取决于即将到来的应用,并且可以使用任何适当策略或策略实现。在某些实施例中,某些内容片段可以是静态的,而其它内容片段(例如数字版权管理(“DRM”)许可)可以是动态的(例如即时合成的)。例如,与内容块相关联的策略可以要求用户获得有效许可(或证明其所有权),该有效许可本身可以包含在策略指示将动态地生成的片段中或被片段引用。
例如,但非限制性地,关于整个内容块和/或关于特定内容片段的策略的XML说明可以包括:分发(认证)策略,其规定例如可以处理内容的中介(intermediary)的性质和/或标识、内容必须来自特定终点(end point)的要求、不能在合成内容时将内容缓存的要求(例如动态地生成或获得内容,诸如许可片段或广告)等等;授权策略,其中该策略需要片段的属性且必须校验该属性;完整性策略,其限定可以如何总体上校验内容(例如内容中必须存在什么片段);和/或机密性策略(例如描述检索片段是否需要受保护信道)。下面示出策略的一个说明性示例。
<ContentPolicy id=″1″>
<DistributionPolicy id=″100″>
<TrustAnchor>
<X509Certificate/>
</TrustAnchor>
</DistributionPolicy>
<IntegrityPolicy id=″200″>
<Ordering type=″any″/>
<Validation type=″Fragment″/>
</IntegrityPolicy>
<ConfidentialityPolicy id=″300″>
<ProtectedChannel type=″SSL″/>
</ConfidentialityPolicy>
<Fragment id=″F1″>
<IntegrityPolicy/>
</Fragment>
</ContentPolicy>
在上文所示的示例性策略中,定义分发策略,其要求希望处理(例如上传或下载)相关联内容的任何实体的数字签名以便最终得自具有规定的X.509证书的信任锚(trust anchor)。可选地,或者另外地,分发策略可以要求希望处理相关联内容的实体呈递与将处理内容的***和/或应用程序(例如DRM引擎、文件共享软件等等)相关联的证明或属性(例如SAML断言),该证明或属性证明此类***和/或应用程序的性质,诸如其对某些特征的拥有、其版本号等等。例如,分发策略可以包括<RequiredAttribute>字段,该字段规定请求***必须呈递的SAML断言,从而使得能够出于策略规定和执行的目的而将***的属性与使用该***的实体的标识解耦合。在某些实施例中,该策略可以规定只有某些实体(例如上传器、下载器、或***)需要呈递数字签名以便处理内容。例如,在某些实施例中,该策略可以包括属性字段,该字段规定其仅应用于例如上传器,而不包括此类字段的策略通常可以应用于所有实体。
回头参照上文所示示例性策略,完整性策略指示可以以任何顺序来接收片段,且可以逐个片段地执行验证。在其它示例中,完整性策略可以要求以特定顺序来获得片段(例如必须首先下载和/或消费包含商业广告的片段,必须首先获得包含许可的片段等等),和/或以整体内容(或其它)为基础执行验证而不是逐个片段地执行验证。在其它示例中,可以不规定完整性策略。
上文所示的示例性策略还规定机密性策略,该机密性策略要求在传送片段时使用受保护信道。如上所示,该策略还规定将在验证某些单独片段时使用的完整性策略。例如,与片段“F1”相关联的<IntegrityPolicy/>字段可以指示需要使用散列、数字签名等等来验证片段。在上文举例说明的实施例中,将使用默认完整性策略来处理内容块中的其它片段(例如规定使用散列来校验完整性,或者不必应用完整性策略)。一般说来,在某些实施例中,可以使用某些默认策略来处理片段和/或整个内容,且与特定内容块相关联的清单中的附加或替代策略参数的规定可以传送违背或补充默认策略的附加或替代策略,所述默认策略已在清单中不存在任何此类附加或替代策略规定的情况下被应用。在其它实施例中,不采用默认策略,可以要求在与内容块相关联的清单中明确规定每个片段的策略。
虽然已描述了说明性内容策略,但应认识到可以定义任何适当策略,包括不包含上文所示的某些字段或值的策略,或包括未示出的字段或值的策略。因此,应认识到可以使用以任何适当形式定义的任何适当策略。
继续图3中举例说明的示例性实施例,获得数字内容和/或片段的元数据(3006)。元数据可以例如在内容级和片段级二者提供,并可以包括表征内容和/或片段中的数据的任何信息。元数据的示例包括但不限于:数字内容的标题、内容作者和/或其它(多个)权限拥有者的姓名、其它内容标识符、关于一个或多个***的位置的信息、内容运行时间、内容警告、跟踪代码等等。可以手动地提供元数据,可以自动地从内容提取元数据并将其放置在清单中,或者可以通过自动和手动操作的组合来提供元数据。一个示例包括在下文描述的说明性清单数据结构中。
在图3所示的示例中,一旦已定义或以其它方式获得元数据,则由数字内容产生片段(3008)。在一个实施例中,使用将内容处理成片段、然后用元数据和策略来封装该片段(3012、3014)并将某些或全部前述项传递或散布到一个或多个上传器的封装器来产生文件片段。在某些实施例中,除了与上传器有关的本文所述其它功能之外,上传器处理封装操作。在其它实施例中,封装器和(多个)上传器是分开的。应认识到图3(和本文呈现的其它流程图)是为了说明的目的而提供的,并且在其它实施例中,可以改变图3所示的步骤的顺序,可以省略某些步骤,和/或可以添加附加步骤。
图4示出封装器的操作的一个示例。参照图4,由封装器获取数字内容(4002),如果封装器被设计为依照策略来自动地封装内容(即,如离开框4004的“是”所指示的,封装器是“智能的”),则通过封装软件和/或硬件使用用于将内容分为片段的各种算法和标准来自动地使文件成为片段(4006)。此类标准的示例包括策略参数(例如策略可以指示证书应当被封装在单独的片段中,因为它们可以是特定于用户的,另一策略可以要求用户首先接收/下载许可片段等等)、***限制(例如吞吐能力)以及内容断点,该内容断点用于提供诸如用于定向(directed)广告或定向内容(例如针对成人或成人-儿童混合观众的内容)的不同片段之类的不同片段组合选项(例如基于内容性质的自然内容断点的规定)。然后,操作流程转到如下所述的4010。可选地,如果封装器不是智能的(即离开框4004的“否”),则可以使用操作员干预来创建文件片段。例如,操作员可以分析内容和策略(4008)并创建片段(4009)。
例如,封装器(或被配置为充当封装器的上传器)不是智能的,则操作员可以手动地引导将许可和一个或多个内容块分别封装成片段,因为操作员可以理解内容的预期用途和播放器希望如何消费内容。可选地,对于不需要操作员干预的非智能封装器的情况,可以提供默认封装策略。例如,策略可以是将内容封装成N字节的相同大小的片段。
在图4所示的示例中,一旦已形成片段,则添加任何元数据(4010),和/或应用策略(4012)。可选地,或另外地,可以在内容片段化(fragmentation)之前或与内容片段化同时地执行步骤4010和/或4012中的某些或全部步骤。
参照图3,使在框3004中识别或生成的策略与片段相关联(3010),并形成包括元数据和策略信息的清单(3012)。在一个实施例中,将对相关联片段的引用和说明添加到清单(3014)。下面示出清单数据结构的一个示例。
<Manifest>
<Metadata>
<ContentID>122</ContentID>
<Title>A Test Movie</Title>
</Metadata>
<ContentPolicy>
<DistributionPolicy id=″100″>
<TrustAnchor>
<X509Certificate/>
</TrustAnchor>
</DistributionPolicy>
<IntegrityPolicy id=″200″>
<Ordering type=″any″/>
<Validation type=″Fragment″/>
</IntegrityPolicy>
<ConfidentialityPolicy id=″300″>
<ProtectedChannel value=″SSL″/>
</ConfidentialityPolicy>
</ContentPolicy>
<Fragments>
<Fragmentid=″F0″>
<Size>10000</Size>
<ContentPolicy>
<IntegrityPolicy id=″200″>
<Validation type=″shal″value=″xxxxxxx″/>
</IntegrityPolicy>
</ContentPolicy>
</Fragment>
</Fragments>
</Manifest>
然后,向一个或多个***登记清单和片段,这有利于向希望访问数字内容的接收者提供片段。例如,***可以识别一个或多个激活(active)的上传器,和/或拥有接收者(例如下载器)所寻找的片段的一个或多个上传器。
在一个实施例中,***处理来自上传器和下载器的登记请求。例如,上传器可以将其标识信息(例如X.509证书)连同其终点地址(例如TCP/IP地址)和其所具有的可用于上传的片段标识符一起提供给(多个)***。在某些实施例中,与上传器或下载器与***之间的登记相关联的许多信息是丰富的(诸如用于统计和销售目的或与用户经历有关的信息,诸如服务的文件数目的规定、平均服务时间等等),并因此是可选的,除非另外规定。在诸如具有策略规定(policy-mandated)的服务质量要求的实施例之类的其它实施例中,可能需要此类信息。在优选实施例中,还包括关于策略确定和执行(“正确性”)的信息。例如,***可以依照策略使用此信息来确定其是否信任特定上传器或下载器,和/或其是否得到授权向上传器或下载器提供服务。在某些实施例中,如果***确定特定上传器或下载器受到信任,和/或上传器或下载器得到授权利用***的服务,则***可以向上传器或下载器发送确认或其它响应,以及(可选地)任何相关联统计信息。此类统计信息的非限制性示例可以包括关于当前提供所述内容的其它站点的信息(此类信息可以被上传器用来确定多少宽带要专用于提供内容)、带宽利用率(例如上传器有多快和/或当前正在如何大量地使用上传器)、服务质量(此类信息可以被下载器或***用来评估需要最低水平的服务(例如T1连接)以便继续操作的策略)等等。
图5示出用于向***登记上传器的过程(5000)的一个示例。首先,由上传器提供用于向***登记封装及其内容的请求(5002)。***通过例如检查与上传器相关联的证书来确定该上传器是否得到授权(5004)。如果上传器得到授权,则接受请求(5006),并(通常)存储关于上传器的终点地址的信息。可选地,还可以向上传器发送响应(5008),例如,该响应包含确认、统计信息等等。可选地,如果上传器未得到授权,即5004处的回答为“否”,则向上传器提供拒绝(5010)且过程终止。
在某些实施例中,***还可以处理来自下载器的搜索请求。例如,下载器可以获得标识内容(并可能标识其相关联策略)并(可选地)标识一个或多个***的一个或多个清单。下载器将对相关片段的请求发送到(多个)***所识别的(多个)上传器,获得片段,校验片段,并依照与之相关联的任何有关策略将片段组装成数字内容以供下载器/用户访问和使用。
图6举例说明向***登记下载器的过程的一个示例(应认识到下载器可以向多于一个的***登记)。首先,向***发送请求,请求例如与期望内容块和/或其片段相关联的上传器的发现(6002)。例如,在一个实施例中,下载器提供标识其本身的信息和下载器期望的(多个)片段。例如,下载器可以提供确定其为特定群组(例如音乐俱乐部、订阅服务等等)的成员和/或其具有特定硬件和/或软件的信息。***通过例如检查下载器所提供的标识和/或其它信息与任何相关策略的符合性来确定下载器是否得到授权(6004)。如果下载器得到授权,则接受请求(6006),并且,可选地,向下载器发送响应(6008),例如,该响应包含能够服务于下载器请求的一个或多个相关上传器的终点地址和/或统计信息(例如连接速度等)。可选地,如果下载器未得到授权,即6004处的答案为“否”,则向下载器提供拒绝(6010)。
图7是一个说明性实施例中的下载器与***之间的交互的更详细说明。如图7所示,下载器向***发送搜索请求(7002)。***根据一个或多个相关策略来确定下载器是否得到授权(7004)。如果下载器未得到授权,则请求被拒绝(7006)。否则,处理该搜索请求(7008),并确定上传器是否可用于处理下载器的请求(7010)。如果没有上传器可用于处理请求,则该处理终止。否则,将相关(多个)上传器的位置通知给下载器(7012)。
一旦已将至少一个适当的上传器通知给下载器,然后,下载器联系(一个或多个)上传器以获得实现请求所需的(一个或多个)片段。图8举例说明此类过程的一个示例。如图8所示,下载器向被***识别的(一个或多个)上传器发送对片段的请求(8002)。然后,(一个或多个)上传器可以根据策略来确定下载器是否得到授权(8004)。如果下载器未得到授权,则请求被拒绝(8006),且该过程终止。否则,处理该请求(8008)。在一个实施例中,例如,这可以需要向下载器返回内容引用(content reference),并且,例如,如果策略要求,则(可选地)打开上传器与下载器之间的安全信道(8010)。例如,内容引用可以规定用于文件传输的安全套接字层(“SSL”)终点,或者该引用可以通过上传器与下载器之间的通信信道来传送用于将内容加密和/或解密的密钥。在一个实施例中,内容引用为下载器提供其需要的、实际获得文件的信息,并可以被认为是引用内容的任何全限定方式(例如通过识别其在哪里、是什么等等),诸如全限定名称或标记(例如URL、文件名和/或可以用以获得内容的协议)等。在一个实施例中,随后将(多个)片段从上传器转发到下载器(8012),并将其组装(assemble)以供下载器访问(8014),其中“组合”通常指的是使(一个或多个)片段成为能够被下载器/用户消费的形式的过程。在某些情况下,这可能需要将与内容相关联的所有片段放在一起。在其它情况下,一个或多个单独片段可以足够用于内容消费(或消费的开始或延续)。
在一个实施例中,***、上传器以及下载器中的每一个充当策略执行点;并且***、上传器以及下载器中的每一个执行包含在清单中的策略。例如,在一个实施例中,***、上传器以及下载器中的每一个确定:是否满足认证策略(如果有的话)(例如请求终点是否受到信任);是否满足完整性策略(如果有的话)(例如内容是否有效),和/或是否满足机密性策略(如果有的话)(例如是否需要受保护信道)。在其它实施例中,对于上述(或其它)策略中的某些或全部,只有***、上传器以及下载器中的某些充当策略执行点。
示例
内容租借和购买
本文所述的***、方法、装置以及软件可轻易地被配置为提供用于分发内容(例如电影、软件等等)以供租借、购买等等的灵活商业模型。在一个实施例中,消费者可以选择它们希望租借或购买的内容。例如,出租内容可以比用于购买的内容的价格低廉,但对出租内容的访问可能在固定时间段之后到期。在某些实施例中,内容可以包括嵌入的商业广告。可选地或另外地,在某些实施例中,消费者可以为没有商业广告的内容支付附加费用。
例如,视频存储器可以如策略所限定的那样封装具有附加材料的内容块。例如,可以在策略所驱动的单独片段中提供商业广告,所述策略规定选择不支付附加费用的购买者必须下载具有商业广告的内容并将其组装在内容内。同样地,用于租借人的策略可以限定到期日,在该到期日之后,内容在没有更新的租借合同或购买的情况下将不可用。为了实现此类商业模型,可以在与内容相关联的清单中包括策略,该策略要求用户获得有效的DRM许可以便访问内容。例如,但非限制性地,所述许可可以具有于2007年8月2日公开为美国公开No.2007/0180519A1的、题为“Digital Rights Management Engine Systemsand Methods”的共同转让美国专利申请No.11/583,693(在下文中称为“′693申请”)中所描述的形式,通过引用而将该专利申请整体地结合到本文中。此类许可可以被在下载器的***上运行的数字版权管理引擎(诸如′693申请中所描述的)用来执行到期日、商业广告观看和/或与对内容的访问或其它使用相关联的其它规则。例如,片段可以是加密的形式,且下载器将根据清单来确定需要有许可以便访问内容。在这点上,知道在没有有效许可(例如尚未到期的许可)的情况下,下载的片段将不可用,下载器可以确定是否继续进行下载。可选地,或另外地,在下载器的站点上运行的DRM引擎可以评估任何相关许可以便在下载文件之前查看所述许可是否授权所请求的文件使用,因此使用户省去下载文件而仅仅发现所期望的文件使用未得到授权的麻烦。在某些实施例中,如果确定下载器不具有文件的预期使用所需的许可,则***和/或上传器可以向下载器返回关于如何和/或在哪里可以获得此类许可的信息(例如URL)。在其它实施例中,可以由上传器和/或***直接执行诸如到期日或试用期的策略(例如无需使用由下载器的计算机***上的软件执行的单独DRM许可),所述上传器和/或***可以保持跟踪特定下载器得到授权以获得内容的时段。因此,应认识到,可以以任何适当方式来表达和执行策略,包括在下载器处或通过下载器、在上传器处或通过上传器、在***处或通过***和/或以上各项的组合。此外,可以在与内容文件相关联的清单中表达、可以经由片段或其它手段而在与文件相关联的许可中表达、可以在***架构级执行策略,或实现这些或其它机制的任何组合。
图9A示出说明性实施例。如图9A所示,为消费者/下载器提供购买和租借内容块的选项(9002)。消费者/下载器选择定义交易(9004)的选项或选项组,并将他或她的选择输入到他或她的下载软件中(9006)。消费者/下载器获得内容的清单的拷贝(9008),且消费者/下载器向***登记(9010)并发送相关的搜索参数以定位并检索必要的内容和由消费者/下载器的选择所定义的策略(9012)。如果消费者/下载器已选择购买内容,则在“租借?”判断点的“否”分支之后(9014),***识别关于购买内容的那些清单(9016)。(应认识到还可以提供诸如用于无商业广告的付费内容的分支之类的其它分支。)可选地,后面是“是”分支,且***识别涉及租借内容的那些清单(9018)。在任一种情况下,***接下来识别上传器(9020)并将上传器的标识符转发到消费者/下载器(9022),于是,消费者/下载器向上传器(9024)登记并依照适当策略来检索内容(9026)。例如,该策略可能要求消费者/下载器具有或获得可由消费者/下载器的计算机***上的抗干扰DRM引擎执行的有效DRM许可。
图9B和9C示出另一示例。如图9B所示,内容提供商可能希望提供至少部分地使用诸如′693申请中所述的DRM引擎来管理的内容。用户提供商还可能希望要求仅仅租借内容的用户观看某些动态地合成的商业广告,同时允许已购买内容的用户在不观看此类商业广告的情况下播放内容。如图9B所示,内容提供商可以使用′693申请中所述的技术来封装内容(例如将其加密并使许可与其相关联)(9030)。内容提供商还使内容片段化(9032)并使清单与内容相关联(9034),该清单包括策略,该策略:(a)要求下载器呈递指示它们具有有效版本的DRM引擎和/或文件共享软件的SAML断言,(b)要求下载器首先下载包含一旦被DRM引擎评估就将确定用户是租借人还是购买者的DRM许可的片断,并且(c)如果DRM引擎根据DRM许可确定下载器是租借者,则要求下载器接下来下载商业广告。然后,如在本文的其它部分描述的,内容提供商(或代表内容提供商活动的封装器)将内容片段和清单分发到一个或多个上传器和***(9036)。
参照图9C,用户可以使用标准搜索引擎或任何其它适当手段来搜索内容(9040)。发现(例如经由***)在图9B中封装的内容时,依照清单中规定的策略,将首先要求用户获得有效许可(9042)。例如,清单可以将用户引导到可以获得此类许可的位置,于是,用户将提供任何相关联信息(例如支付信息、标识信息等),并被提供DRM许可。在其它实施例中,清单可以简单地要求首先获得包含或引用许可的特定片段,在这种情况下,将应用针对该片段规定的机密性策略、完整性策略、和/或其它策略来例如保护许可。如果,例如,许可本身没有独立地受到例如DRM***的保护,则此类实施例可能是期望的。在其它实施例中,可以将许可包括在片段中,该片段还包含对其应用许可的内容的至少一部分。因此,应认识到可以以任何适当方式来获得许可。例如,但非限制性地,***可以将用户引导到可以向用户提供包含上传器的DRM许可的片段的上传器。虽然此许可对于下载器通常将是无效的,但许可可以包含到可以获得有效许可的位置的指针。
再次参照图9C,一旦下载器接收到有效DRM许可,下载器的DRM引擎就评估该DRM许可(9043)并确定该用户是租借人还是购买者(9044)。如果确定该用户是租借人(即离开框9044的“是”),那么,依照在清单中表达的策略,文件共享软件将要求用户首先获得包含商业广告的片段(9046)。另一方面,如果确定用户是购买者(即离开框9044的“否”),则文件共享软件将允许用户立即开始获得内容片段(9048)。获得内容片段时,用户的DRM引擎将例如使用包含在DRM许可中或被DRM许可引用的加密密钥来控制其解密(9050)。DRM引擎还将执行DRM许可中规定的任何其它规则或限制,其附加非限制性示例可以在′693申请中找到。因此,在本示例中,清单中规定的策略命令片段的时间排序(例如首先获得许可片段,然后是任何要求的商业广告,然后是内容),同时,DRM引擎控制DRM许可中规定的任何其它要求的解密和执行(例如其后不能再观看内容的到期日)。
应认识到结合图9B和9C而描述的示例是出于说明的目的而提供的,并且在不脱离本文所公开的原理的情况下可以进行许多修改。例如,清单不必要求首先获得许可片段,可以独立于许可而进行关于用户是租借人还是购买人的确定,可以进行除租借人或者购买人之外的其它区分,并可以执行除观看商业广告之外的义务。因此,虽然本示例举例说明其中DRM***与文件共享***进行交互以控制对受保护内容块的访问的一种可能情况,但应认识到本实施例举例说明与本发明主题相关联的许多独立发明构思,其不必以本示例中提出的特定方式组合。
内容控制
在另一示例中,内容提供商提供具有多个片断(segment)的内容,诸如杂耍或由幽默故事组成的节目。某些片断具有比其它片断更加直率(explicit)的材料,并且内容提供商希望在不妨碍年长订户的情况下控制较年轻的购买者对此材料的访问。为此,提供商可以在清单中规定这样的策略:该策略要求购买者满足一定的年龄要求以便下载和结合某些片段。例如,在一个实施例中,内容的每个片断具有限定用于使下载内容中包含该片断所需的条件的相关联策略或元数据(或两者)。组成内容的片段被“即时”传递到下载器以供合成为内容。在另一示例中,内容由定义不同片断的所有片段组成,且用于整个内容的策略限定在播放内容时哪些片段(或片断)将被呈现给购买者。
多个内容分发通道
在又一示例中,内容包括与用于将片段解密的一个或多个许可相关联的一个或多个片段。如上所述,可以定义策略和许可以管理片段和内容。在一个实施例中,一个或多个片段许可被定向(“锁定”)到要再现内容的特定设备(与特定用户相反,其还可以在其它实施例中被执行)。例如,消费者可以具有用于播放内容的多个设备(例如计算机、家庭娱乐***、以及蜂窝电话,每个都能够播放电影或唱片)。在一个实施例中,内容分发者(distributor)可以指定这些设备中的一个或多个用于播放内容。在一个实施例中,将一个或多个片段定义为许可片段;并且使策略与这些许可片段相关联,该策略规定应当动态地生成或获得该许可片段。在某些实施例中,该策略可以要求呈递再现设备的设备ID以供授权和认证。因此,设备将在其本地地获取内容时具有为其即时合成的特定许可。因此,例如,在某些实施例中,不仅可以使用策略来规定谁可以是接收者和/或发送者,还可以使用策略来规定诸如是否可以将特定(一个或多个)片段高速缓存、是否需要动态地生成或获得特定(一个或多个)片段(例如许可片段、广告片段等)之类的各种事项,在这种情况下,通常将提供指向可以获得动态地生成的片段的位置的指针等等。例如,广告片段可以指向可以获得广告的当前版本的位置,从而使得所包括的广告能够随时间的推移或依照特定于***的参数(例如从用户处获得的使用信息)而变化,而不要求替换仅仅包含指向广告的指针的广告片段本身。
报酬(remuneration)和审计
在另一示例中,服务提供商可以监测并控制未经许可(例如可能是盗版)的内容从其***流过。服务提供商可能部署一组被配置为执行以下策略的***,所述策略规定如果上传器所提供(或下载器所请求)的内容块具有指示其分发可能未得到授权的某些特性(例如内容不具有与之相关联的许可,或者内容或其清单未规定或提供可用以获得此类许可的机制),则***将把用户引导到将要求用户支付预定义费用或提供某些预定义信息以便获得内容的服务(例如由或代表服务提供商或内容所有者所运营)。例如,该费用已经在服务提供商与内容创建者之间经过协商。另一方面,如果内容具有相关联许可或以其它方式看起来是以授权方式提供的,则***将根据相关联清单中可能规定的任何其它策略而允许下载器获得内容。这样,服务提供商的***可以提供避免内容的未授权分发的一些保护措施。
已描述了封装器将数字内容处理为已封装片段并生成包括与内容相关联的策略和元数据的清单的实施例。上传器被散布有片段和清单,并向一个或多个***登记。下载器通过发现过程来获得清单,并使用该清单及可选的一个或多个***来获得内容。例如,下载器可以将对片段的搜索请求转发到一个或多个***,***继而可用于:(a)根据任何策略限制来定位可以满足该请求的一个或多个上传器,以及(b)向下载器返回(多个)上传器的标识。然后,下载器联系被***识别的一个或多个上传器并将对片段的请求转发到(多个)上传器。(多个)上传器可以使用安全信道将片段转发到下载器。下载器从片段组装内容以供用户访问。实体的操作服从与片段、整个内容或两者相关联的策略限制。
图10A、10B、以及10C举例说明用于实施本发明主题的某些实施例的说明性***的各方面。如图10A所示,数字内容的作者、创建者和/或分发者可以使用封装器来处理内容并准备该内容,以便经由一个或多个上传器和***而分发到一个或多个下载器。按照作者的要求或规定,封装器可以应用策略来管理封装过程,和/或在与内容相关联的清单中规定策略以管理其它实体对内容的使用。例如,可以在清单中包括要求在***中的各种参与者(例如上传器、下载器和***)之间的某些形式的认证的策略,其规定某些机密性要求和/或以其它方式管理对整个内容或其单个片段的访问或使用。概括地说,封装器应用任何相关策略,并生成与之相关联的片段和清单。如图10A所示,可以将片段分发到一个或多个上传器,并可以将清单分发到一个或多个上传器、***和/或下载器。
如图10B所示,上传器可以向***登记,所述***在某些实施例中可以基于策略而确认或拒绝上传器分发片段的请求。如果上传器得到授权分发片段,则可以记录上传器的位置,作为关于上传器能够提供的片段的信息。然后,可以将此信息提供给经授权的下载器。在某些实施例中,***还可以向上传器提供诸如相关统计信息(例如使用统计信息)的其它信息。
同样如图10B所示,下载器可以同样地向***登记。例如,下载器可以向***提交查找一个或多个片段的请求。然后,***可以基于相关策略(例如要求用户具有某些证书的策略)而确认或拒绝该请求。如果请求得到授权,则***可以返回具有所请求的片段的一个或多个授权上传器的位置和/或其它信息(例如使用统计信息)。
在某些实施例中,相比于其它实施例,***可以从潜在下载器(或上传器)要求更多的信息。例如,在某些实施例中,***可以允许匿名下载,而在其它实施例中,跟踪可以要求更强版本的识别,而在另外的其它实施例中,***可以要求呈递与被用来获得/使用内容的申请相关联的属性/证书,以便***(或上传器)可以确信该内容将被适当地处理(例如将不会由相关联文件共享(或DRM)软件或硬件的破解(hacked)版来处理该内容)。在其它实施例中,可以使用这些(或其它)要求的某些组合。同样地,在某些实施例中,下载器可以具有要求***识别/认证其本身的策略,以便即使向下载器提供希望传播病毒的伪***的URL,***也将不能认证其本身,从而保护下载器。因此,应认识到,可以配置这样的***:即在该***中,需要在上传器、***、下载器或其它***实体中的任何或全部之间建立任何适当的信任关系。例如,用于特定服务提供商的***可能希望将内容分发局限于该服务提供商的顾客,并因此要求潜在下载器呈递适当证书,该证书确定潜在的下载器是此类顾客。可以将此类策略包括在与内容相关联的清单中,或者简单地在***用来评估请求的硬件或软件中将其编码。同样地,下载器可能希望要求与之通信的***和/或上传器与一个或多个可信方相关联或得到其证明,和/或可能希望要求使用可信信道来执行与上传器的任何通信。例如,可以由下载器的文件共享软件来保持并执行此类策略。然而,应认识到,虽然已在某些有用实施例中提供了可以关于***、上传器、以及下载器之间的交互而规定的不同策略的若干示例,但可以使用任何适当的策略或要求。
如图10C所示,一旦上传器和下载器已使用一个或多个***、清单和/或其它手段而相互定位,则它们可以按照任何相关联策略的授权来交换数据。通常,这将涉及下载器从上传器下载片段,虽然还可以有其它使用模式(例如在一般情况下,可以将下载器、上传器和/或***配置为支持任何适当的服务界面,并进行和/或响应任何适当的服务询问)。然后,下载器可以依照与内容相关联的任何相关联策略和/或其它许可信息来消费内容。
图11示出可以用来实施本发明主题的实施例的***1100的更详细示例。例如,***1100可以包括充当下载器的最终用户的设备、充当封装器、***和/或上传器等的内容提供商的设备的实施例。例如,***1100可以包括诸如个人计算机或网络服务器之类的通用计算设备或诸如蜂窝式电话、个人数字助理、便携式音频或视频播放器、电视机顶盒、电话亭(kiosk)、游戏***等之类的专用计算设备。***1100通常将包括处理器1102、存储器1104、用户接口1106、用于接受可移动存储器1109的端口1107、一个或多个网络接口1110以及用于连接上述元件的一个或多个总线1112。通常将由在存储在存储器1104中的程序的指导下操作的处理器1102来控制***1100的操作。存储器1104通常将包括高速随机存取存储器(RAM)和诸如磁盘和/或闪速EEPROM的非易失性存储器两者。在某些实施例中,可以限制存储器1104的一部分,使得***1100的其它部件不能从该部分读取或向该部分中写入。端口1107可以包括用于接受诸如软盘、CD-ROM、DVD、存储卡、SD卡、其它磁性或光学介质等之类的计算机可读介质1108的磁盘驱动器或存储器插槽。网络接口1110通常将可用于经由诸如因特网或内部网(例如LAN、WAN、VPN等)之类的网络1120来提供***1100与其它计算设备(和/或计算设备的网络)之间的连接,并可以采用一种或多种通信技术来在物理上实现此类连接(例如无线、以太网等等)。在某些实施例中,***100还可以包括受到保护而不会被***100的用户或其它实体损坏的处理单元1103。此类安全处理单元(SPU)可以帮助增强诸如密钥管理、签名校验及策略和/或许可执行过程的其它方面之类的敏感操作的安全性。
如图11所示,计算设备1100的存储器1104可以包括用于控制计算设备1100的操作的多种程序或模块。例如,存储器1104通常将包括操作***1121,用于管理应用程序的执行、***设备等;主应用程序1130,其用于再现或封装受保护电子内容;文件共享应用程序1134,其用于执行本文所述的下载器、上传器和/或***动作;以及(可选的)DRM引擎1132,其用于实现′693申请中所述的某些或全部权限管理功能。如′693申请所述,DRM引擎1132可以包括多种其它模块、控制多种其它模块和/或与多种其它模块进行互操作,诸如用于执行密码操作(诸如加密和/或解密内容)、计算散列函数和消息认证码、评估数字签名等等的一个或多个密码模块1126。存储器1104通常还将包括内容项目(和/或其片段)1128和相关联清单和/或许可1136以及加密密钥、证书等等(未示出)。
本领域的技术人员应认识到可以用与图11所示类似或相同的计算设备或实际上用任何其它适当计算设备来实施本文所述的***和方法,所述其它适当计算设备包括不拥有图11所示的某些部件的计算设备和/或拥有未示出的其它部件的计算设备。因此,应认识到图11是出于说明而非限制的目的而提供的。
因此,已描述了用于提供片段数字内容(特别是其中片段和/或整个内容服从策略控制的片段数字内容)的***、软件、方法、以及装置。虽然已出于说明的目的而提供了某些特定示例,但本领域的技术人员将理解在不脱离本发明主题的范围或精神的情况下实现本文所述的***、软件、方法、和装置的许多其它实施例。
Claims (8)
1.一种用于基于策略的数字内容共享的***,包括:
多个内容片段,所述多个内容片段形成数字内容块的至少一部分;
清单,被配置为识别所述多个内容片段,该清单包括与内容片段中的至少一个和/或数字内容块相关联的策略信息;
上传器,被配置为提供内容片段中的至少一个;
下载器,被配置为获得所述多个内容片段,并依照策略信息来实现对内容片段中的至少一个的使用;以及
***,被配置为促进下载器发现上传器。
2.权利要求1的***,其中,所述清单包括从包括以下的组中选择的至少一个信息元素:唯一数字内容标识符;数字内容元数据;数字内容分发策略信息;数字内容完整性策略信息;以及数字内容机密性策略信息。
3.权利要求2的***,其中,所述清单还包括至少一个内容片段描述符。
4.权利要求3的***,其中,所述至少一个内容片段描述符包括从包括以下的组中选择的至少一个信息元素:唯一片段标识符;片段完整性信息;片段级分发策略信息;以及片段元数据。
5.权利要求1的***,其中,所述***被配置为执行内容级策略和片段级策略。
6.权利要求5的***,其中,所述***被配置为提供关于得到授权以向下载器传输内容片段的上传器的信息。
7.权利要求1的***,其中,所述上传器被配置为提供从包括以下的组中选择的至少一个服务:向下载器提供内容片段;执行内容级和片段级策略;以及分发关于一个或多个内容片段的位置的信息。
8.权利要求7的***,其中,所述下载器被配置为执行从包括以下的组中选择的至少一个动作:校验内容片段;执行内容级和片段级策略;将内容片段重新组装成内容;以及分发关于一个或多个内容片段的位置的信息。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US88536407P | 2007-01-17 | 2007-01-17 | |
US60/885,364 | 2007-01-17 | ||
PCT/US2008/000654 WO2008088856A1 (en) | 2007-01-17 | 2008-01-17 | Methods, systems, and apparatus for fragmented file sharing |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101637005A CN101637005A (zh) | 2010-01-27 |
CN101637005B true CN101637005B (zh) | 2014-04-09 |
Family
ID=39420599
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200880008706.5A Expired - Fee Related CN101637005B (zh) | 2007-01-17 | 2008-01-17 | 用于片段文件共享的方法、***以及装置 |
Country Status (7)
Country | Link |
---|---|
US (4) | US8402556B2 (zh) |
EP (2) | EP2109981B1 (zh) |
JP (1) | JP2010517138A (zh) |
CN (1) | CN101637005B (zh) |
AU (1) | AU2008205545B2 (zh) |
CA (1) | CA2675595C (zh) |
WO (1) | WO2008088856A1 (zh) |
Families Citing this family (55)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9432433B2 (en) | 2006-06-09 | 2016-08-30 | Qualcomm Incorporated | Enhanced block-request streaming system using signaling or block creation |
EP2109981B1 (en) | 2007-01-17 | 2014-11-26 | Intertrust Technologies Corporation | Methods, systems, and apparatus for fragmented file sharing |
US20090157876A1 (en) * | 2007-12-17 | 2009-06-18 | Lection David B | Methods, Systems, And Computer Readable Media For Managing User Access To An Electronic Media Sharing Environment |
US8510796B2 (en) * | 2008-01-25 | 2013-08-13 | Oracle International Corporation | Method for application-to-application authentication via delegation |
US8353049B2 (en) * | 2008-04-17 | 2013-01-08 | Microsoft Corporation | Separating keys and policy for consuming content |
US20150006411A1 (en) * | 2008-06-11 | 2015-01-01 | James D. Bennett | Creative work registry |
JP5071262B2 (ja) * | 2008-06-19 | 2012-11-14 | ブラザー工業株式会社 | 情報配信システム、同情報配信システムにおける端末装置、配信サーバ及び投入サーバ並びにそのプログラム |
JP5340664B2 (ja) * | 2008-07-30 | 2013-11-13 | 株式会社ソニー・コンピュータエンタテインメント | データ配信システム |
JP4850218B2 (ja) * | 2008-07-30 | 2012-01-11 | 株式会社ソニー・コンピュータエンタテインメント | データ配信システム |
CN101677325B (zh) * | 2008-09-16 | 2013-08-28 | 华为技术有限公司 | 发布媒体描述信息和获取媒体的方法、装置、*** |
US8996547B2 (en) * | 2008-10-31 | 2015-03-31 | Microsoft Technology Licensing, Llc | Dynamic fragmentation of digital media |
US8621044B2 (en) * | 2009-03-16 | 2013-12-31 | Microsoft Corporation | Smooth, stateless client media streaming |
US8260883B2 (en) * | 2009-04-01 | 2012-09-04 | Wimm Labs, Inc. | File sharing between devices |
US8929303B2 (en) * | 2009-04-06 | 2015-01-06 | Samsung Electronics Co., Ltd. | Control and data channels for advanced relay operation |
US8694479B1 (en) * | 2009-05-05 | 2014-04-08 | Amazon Technologies, Inc. | Placing digital content in a personalized data store |
US9270683B2 (en) * | 2009-05-15 | 2016-02-23 | Amazon Technologies, Inc. | Storage device authentication |
US8914903B1 (en) | 2009-06-03 | 2014-12-16 | Amdocs Software System Limited | System, method, and computer program for validating receipt of digital content by a client device |
US8239443B2 (en) * | 2009-09-01 | 2012-08-07 | Rovi Technologies Corporation | Method and system for tunable distribution of content |
US9917874B2 (en) | 2009-09-22 | 2018-03-13 | Qualcomm Incorporated | Enhanced block-request streaming using block partitioning or request controls for improved client-side handling |
CN102822842B (zh) * | 2010-04-05 | 2016-11-16 | Lg电子株式会社 | 使用drm更新广告内容的方法 |
US20120078703A1 (en) * | 2010-09-08 | 2012-03-29 | Sony Pictures Technologies Inc. | Access to media bites |
EP2619677A4 (en) * | 2010-09-21 | 2015-05-13 | Hewlett Packard Development Co | APPLYING DIFFERENTIAL POLICIES TO AT LEAST ONE DIGITAL DOCUMENT |
US8943215B2 (en) * | 2010-12-21 | 2015-01-27 | Microsoft Corporation | Distributed smooth streaming utilizing dynamic manifests |
US8510267B2 (en) * | 2011-03-08 | 2013-08-13 | Rackspace Us, Inc. | Synchronization of structured information repositories |
US9607105B1 (en) * | 2011-03-30 | 2017-03-28 | Amazon Technologies, Inc. | Content searching techniques |
CN102833294B (zh) | 2011-06-17 | 2015-05-20 | 阿里巴巴集团控股有限公司 | 基于云存储的文件处理方法、***及服务器集群*** |
CN102238434B (zh) * | 2011-07-22 | 2017-12-19 | 中兴通讯股份有限公司 | 一种iptv流媒体文件虚拟分段和使用的方法及*** |
US8234350B1 (en) | 2011-12-19 | 2012-07-31 | Seachange International, Inc. | Systems and methods for generating targeted manifest files |
US8719946B2 (en) | 2012-03-05 | 2014-05-06 | Song1, Llc | System and method for securely retrieving and playing digital media |
US8887215B2 (en) * | 2012-06-11 | 2014-11-11 | Rgb Networks, Inc. | Targeted high-value content in HTTP streaming video on demand |
US8875254B2 (en) * | 2012-08-07 | 2014-10-28 | International Business Machines Corporation | Cache sharing of enterprise data among peers via an enterprise server |
CN102917029B (zh) * | 2012-09-26 | 2015-08-12 | 东莞宇龙通信科技有限公司 | 云存储的实现方法及云存储*** |
US20140164052A1 (en) * | 2012-12-12 | 2014-06-12 | Hartford Fire Insurance Company | System and Method for Managing and Displaying Company Policy Data |
US9348833B2 (en) * | 2013-03-12 | 2016-05-24 | Sap Se | Consolidation for updated/deleted records in old fragments |
US9124568B2 (en) | 2013-03-15 | 2015-09-01 | Disney Enterprises, Inc. | Device and method for asset protection scheme |
GB201401338D0 (en) * | 2014-01-27 | 2014-03-12 | Omarco Network Solutions Ltd | Short range communications control |
US10003858B2 (en) | 2014-05-09 | 2018-06-19 | DISH Technologies L.L.C. | Provisioning commercial-free media content |
WO2015187740A1 (en) * | 2014-06-02 | 2015-12-10 | Sonic Ip, Inc. | Binding content playback to a removable storage |
US9467492B2 (en) * | 2014-08-19 | 2016-10-11 | Palo Alto Research Center Incorporated | System and method for reconstructable all-in-one content stream |
CN105656955B (zh) * | 2014-11-11 | 2019-07-23 | 华为数字技术(苏州)有限公司 | 文件处理方法、装置及*** |
US20160182466A1 (en) * | 2014-12-23 | 2016-06-23 | CodeShop BV | TransDRM for Streaming Media |
WO2016132454A1 (ja) * | 2015-02-17 | 2016-08-25 | 富士通株式会社 | アプリケーション配信方法、アプリケーション配信プログラム、およびサーバ |
US10277934B2 (en) * | 2015-03-13 | 2019-04-30 | Qualcomm Incorporated | Permissions management for watermarked data in a broadcast environment |
US10057314B2 (en) * | 2015-04-17 | 2018-08-21 | Telefonaktiebolaget Lm Ericsson (Publ) | Dynamic packager network based ABR media distribution and delivery |
US10108809B2 (en) * | 2015-10-30 | 2018-10-23 | Airwatch Llc | Applying rights management policies to protected files |
CN105897825A (zh) * | 2015-11-20 | 2016-08-24 | 乐视云计算有限公司 | 异步传输文件的方法及*** |
US20170147830A1 (en) * | 2015-11-24 | 2017-05-25 | Comcast Cable Communications, Llc | Adaptive Rights Management System |
US10701040B2 (en) * | 2016-05-23 | 2020-06-30 | Amazon Technologies, Inc. | Protecting content-stream portions from modification or removal |
US10212466B1 (en) * | 2016-06-28 | 2019-02-19 | Amazon Technologies, Inc. | Active region frame playback |
US10749925B1 (en) | 2016-09-02 | 2020-08-18 | Snap Inc. | Video streaming optimization for quick start of video display |
US10476866B2 (en) * | 2017-01-12 | 2019-11-12 | Wipro Limited | System and method for storing and delivering digital content |
US12034835B2 (en) * | 2018-01-31 | 2024-07-09 | Comcast Cable Communications, Llc | Managing encryption keys for content |
WO2019222934A1 (zh) * | 2018-05-23 | 2019-11-28 | 优视科技新加坡有限公司 | 文件处理方法、装置和*** |
US20220385730A1 (en) * | 2021-05-25 | 2022-12-01 | WarnerMedia Direct, LLC | Rules engine for controlling content access |
IL283737A (en) * | 2021-06-06 | 2023-01-01 | Visuality Systems Ltd | A system and method of communication through data streaming |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020095582A1 (en) * | 2000-10-17 | 2002-07-18 | Ariel Peled | Secure distribution of digital content |
WO2005124637A2 (en) * | 2004-06-10 | 2005-12-29 | Akamai Technologies, Inc. | Digital rights management in a distributed network |
US20060277151A1 (en) * | 2005-06-06 | 2006-12-07 | Yume Networks, Inc. | Method and system to enable continuous monitoring of integrity and validity of a digital content |
Family Cites Families (49)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6798788B1 (en) * | 1999-11-24 | 2004-09-28 | Advanced Micro Devices, Inc. | Arrangement determining policies for layer 3 frame fragments in a network switch |
JP4464340B2 (ja) | 1999-12-20 | 2010-05-19 | 大日本印刷株式会社 | 分散型データアーカイブシステム |
JP2001203686A (ja) * | 2000-01-21 | 2001-07-27 | Sony Corp | データ処理装置、データ処理方法およびデータ検証値付与方法、並びにプログラム提供媒体 |
ATE381191T1 (de) * | 2000-10-26 | 2007-12-15 | Prismedia Networks Inc | Verfahren und system zur verwaltung von verteilten inhalten und entsprechenden metadaten |
WO2002051057A2 (en) * | 2000-12-21 | 2002-06-27 | Aspsecure Corporation | Methods for rights enabled peer-to-peer networking |
AU2002338270A1 (en) * | 2001-04-02 | 2002-10-15 | Akamai Technologies, Inc. | Scalable, high performance and highly available distributed storage system for internet content |
JP2002373134A (ja) * | 2001-06-13 | 2002-12-26 | Shunji Sugaya | コンテンツダウンロード装置、コンテンツダウンロードプログラムおよびコンテンツダウンロード方法 |
US20030084341A1 (en) * | 2001-11-01 | 2003-05-01 | Arun Ramachandran | Implementation of security barriers in a usage based licensing server data structure |
JP4047573B2 (ja) * | 2001-11-06 | 2008-02-13 | 東芝ソリューション株式会社 | 電子情報管理装置及びプログラム |
US6920550B2 (en) * | 2001-11-15 | 2005-07-19 | Hewlett-Packard Development Company, L.P. | System and method for decoding and executing program binaries |
US20030101381A1 (en) * | 2001-11-29 | 2003-05-29 | Nikolay Mateev | System and method for virus checking software |
AU2003202815A1 (en) * | 2002-01-12 | 2003-07-24 | Coretrust, Inc. | Method and system for the information protection of digital content |
US7483860B2 (en) * | 2002-03-08 | 2009-01-27 | Pace Anti-Piracy | Method and system for managing software licenses |
US7496540B2 (en) * | 2002-03-27 | 2009-02-24 | Convergys Cmg Utah | System and method for securing digital content |
US20030204602A1 (en) * | 2002-04-26 | 2003-10-30 | Hudson Michael D. | Mediated multi-source peer content delivery network architecture |
US7222106B2 (en) * | 2002-05-21 | 2007-05-22 | International Business Machines Corporation | Mechanisms for handling software license agreements on multi-user system |
US7603704B2 (en) * | 2002-12-19 | 2009-10-13 | Massachusetts Institute Of Technology | Secure execution of a computer program using a code cache |
US7533141B2 (en) * | 2003-01-24 | 2009-05-12 | Sun Microsystems, Inc. | System and method for unique naming of resources in networked environments |
JP2004252966A (ja) * | 2003-01-30 | 2004-09-09 | Matsushita Electric Ind Co Ltd | コンテンツ配信システム |
JP4663245B2 (ja) | 2003-02-04 | 2011-04-06 | 株式会社リコー | 電子装置、画像処理装置、遠隔管理システム、プログラム及び認証方法 |
US7177900B2 (en) * | 2003-02-19 | 2007-02-13 | International Business Machines Corporation | Non-invasive technique for enabling distributed computing applications to exploit distributed fragment caching and assembly |
US7529754B2 (en) * | 2003-03-14 | 2009-05-05 | Websense, Inc. | System and method of monitoring and controlling application files |
US20040244807A1 (en) * | 2003-06-04 | 2004-12-09 | Jianguo Sun | Sleep-lab systems and methods |
US7533389B2 (en) * | 2003-06-20 | 2009-05-12 | Sun Microsystems, Inc. | Dynamic loading of remote classes |
US20050132207A1 (en) * | 2003-12-10 | 2005-06-16 | Magda Mourad | System and method for authoring learning material using digital ownership rights |
EP1728374B1 (en) * | 2004-02-03 | 2009-10-28 | SanDisk Secure Content Solutions, Inc. | Protection of digital data content |
JP4729683B2 (ja) * | 2004-03-26 | 2011-07-20 | 株式会社エヌ・ティ・ティ ネオメイト | データ分散格納装置、そのデータ構成管理サーバ、クライアント端末、および、データ分散格納装置を備えた業務委託システム |
US20070180490A1 (en) * | 2004-05-20 | 2007-08-02 | Renzi Silvio J | System and method for policy management |
JP4439997B2 (ja) * | 2004-05-26 | 2010-03-24 | 日本電信電話株式会社 | P2pファイル共有方法及びシステム |
US7664109B2 (en) * | 2004-09-03 | 2010-02-16 | Microsoft Corporation | System and method for distributed streaming of scalable media |
US20060140134A1 (en) * | 2004-12-28 | 2006-06-29 | Boloto, Inc. | Advertising business method and system for secure and high speed transmission of media files across an internet, intranet or cable network, and method to avoid digital file sharing or copying |
DE102005010131A1 (de) * | 2005-03-02 | 2006-09-07 | Arvato Mobile Gmbh | Verfahren zur Übertragung von digitalen Inhalten eines Inhalteanbieters an die Nutzer eines Online- Inhalteübertragungssystems |
WO2006098874A2 (en) * | 2005-03-14 | 2006-09-21 | Mark Strickland | File sharing methods and systems |
US20060218650A1 (en) * | 2005-03-25 | 2006-09-28 | Nokia Corporation | System and method for effectuating digital rights management in a home network |
JP3943118B2 (ja) * | 2005-04-28 | 2007-07-11 | Sbシステム株式会社 | 電子情報保存方法及び装置、電子情報分割保存方法及び装置、電子情報分割復元処理方法及び装置並びにそれらのプログラム |
JP4786222B2 (ja) * | 2005-05-11 | 2011-10-05 | 株式会社エヌ・ティ・ティ・ドコモ | ディジタル権利管理システム、コンテンツサーバおよび携帯端末 |
US20060271926A1 (en) * | 2005-05-31 | 2006-11-30 | Microsoft Corporation | Split download for electronic software downloads |
US20070124310A1 (en) * | 2005-07-26 | 2007-05-31 | Novo Innovations, Inc. | Distributed Computing System to Enable the Secure Exchange of Information Between Remotely Located Healthcare Applications |
US8739231B2 (en) * | 2005-08-23 | 2014-05-27 | Vudu, Inc. | System and method for distributed video-on-demand |
US8776216B2 (en) | 2005-10-18 | 2014-07-08 | Intertrust Technologies Corporation | Digital rights management engine systems and methods |
US7660800B2 (en) * | 2005-11-28 | 2010-02-09 | Commvault Systems, Inc. | Systems and methods for classifying and transferring information in a storage network |
US7756922B2 (en) * | 2006-01-27 | 2010-07-13 | Oracle International Corporation | Schema annotations for managing cached document fragments |
US20070198468A1 (en) * | 2006-02-23 | 2007-08-23 | Berger Adam L | Digital data broadcasting |
US8151323B2 (en) * | 2006-04-12 | 2012-04-03 | Citrix Systems, Inc. | Systems and methods for providing levels of access and action control via an SSL VPN appliance |
US7874015B2 (en) * | 2006-05-12 | 2011-01-18 | At&T Intellectual Property I, L.P. | Methods, systems, and computer program products for controlling distribution of digital content in a file sharing system using license-based verification, encoded tagging, and time-limited fragment validity |
US7948988B2 (en) * | 2006-07-27 | 2011-05-24 | Sourcefire, Inc. | Device, system and method for analysis of fragments in a fragment train |
US8762530B2 (en) * | 2006-09-11 | 2014-06-24 | Fujitsu Limited | Peer-to-peer network with paid uploaders |
US20080077638A1 (en) * | 2006-09-21 | 2008-03-27 | Microsoft Corporation | Distributed storage in a computing environment |
EP2109981B1 (en) | 2007-01-17 | 2014-11-26 | Intertrust Technologies Corporation | Methods, systems, and apparatus for fragmented file sharing |
-
2008
- 2008-01-17 EP EP08705621.4A patent/EP2109981B1/en active Active
- 2008-01-17 WO PCT/US2008/000654 patent/WO2008088856A1/en active Application Filing
- 2008-01-17 CA CA2675595A patent/CA2675595C/en active Active
- 2008-01-17 EP EP14188753.9A patent/EP2835951B1/en active Active
- 2008-01-17 US US12/016,140 patent/US8402556B2/en active Active
- 2008-01-17 JP JP2009546426A patent/JP2010517138A/ja active Pending
- 2008-01-17 AU AU2008205545A patent/AU2008205545B2/en active Active
- 2008-01-17 CN CN200880008706.5A patent/CN101637005B/zh not_active Expired - Fee Related
-
2013
- 2013-03-18 US US13/846,118 patent/US9344473B2/en not_active Expired - Fee Related
-
2016
- 2016-05-02 US US15/143,895 patent/US10019557B2/en active Active
-
2018
- 2018-06-12 US US16/006,398 patent/US10423764B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020095582A1 (en) * | 2000-10-17 | 2002-07-18 | Ariel Peled | Secure distribution of digital content |
WO2005124637A2 (en) * | 2004-06-10 | 2005-12-29 | Akamai Technologies, Inc. | Digital rights management in a distributed network |
US20060277151A1 (en) * | 2005-06-06 | 2006-12-07 | Yume Networks, Inc. | Method and system to enable continuous monitoring of integrity and validity of a digital content |
Also Published As
Publication number | Publication date |
---|---|
AU2008205545A1 (en) | 2008-07-24 |
US10423764B2 (en) | 2019-09-24 |
US20190065705A1 (en) | 2019-02-28 |
EP2835951B1 (en) | 2018-08-22 |
EP2835951A3 (en) | 2015-03-04 |
CA2675595C (en) | 2016-10-25 |
EP2109981B1 (en) | 2014-11-26 |
US20130275559A1 (en) | 2013-10-17 |
US9344473B2 (en) | 2016-05-17 |
US10019557B2 (en) | 2018-07-10 |
AU2008205545B2 (en) | 2012-03-08 |
US20080172718A1 (en) | 2008-07-17 |
US20160342773A1 (en) | 2016-11-24 |
EP2109981A1 (en) | 2009-10-21 |
CN101637005A (zh) | 2010-01-27 |
EP2835951A2 (en) | 2015-02-11 |
WO2008088856A1 (en) | 2008-07-24 |
CA2675595A1 (en) | 2008-07-24 |
US8402556B2 (en) | 2013-03-19 |
JP2010517138A (ja) | 2010-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101637005B (zh) | 用于片段文件共享的方法、***以及装置 | |
US11995625B1 (en) | System and method for federated rights management | |
KR101153013B1 (ko) | 도메인으로의 컨텐츠 바인딩 | |
US8522360B2 (en) | Posted move in anchor point-based digital rights management | |
US20020157002A1 (en) | System and method for secure and convenient management of digital electronic content | |
US20030079133A1 (en) | Method and system for digital rights management in content distribution application | |
US20040133797A1 (en) | Rights management enhanced storage | |
JP5552176B2 (ja) | 相互運用キー収納箱 | |
US8948398B2 (en) | Universal file packager for use with an interoperable keychest | |
US8675878B2 (en) | Interoperable keychest for use by service providers | |
US9305144B2 (en) | Digital receipt for use with an interoperable keychest | |
KR20050111533A (ko) | 디지털저작권이 보호된 디지털콘텐츠 전자상거래시스템 및방법과 이를 실행시키기 위한 프로그램을 기록한 기록매체 | |
Gaber | Support Consumers' Rights in DRM: A Secure and Fair Solution to Digital License Reselling Over the Internet | |
WO2000055709A2 (en) | System for distribution, authentication and tracking of digitally transmitted media |
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 |
Granted publication date: 20140409 |
|
CF01 | Termination of patent right due to non-payment of annual fee |