标题为“用于控制对数字内容的存取的方法(METHOD FOR CONTROLLINGACCESS TO DIGITAL CONTENT)”的第11/694,866号美国专利申请案;及
标题为“用于控制对数字内容的存取的***(SYSTEM FOR CONTROLLINGACCESS TO DIGITAL CONTENT)”的第11/694,868号美国专利申请案。
具体实施方式
定义:
按照通常(但并非专门地)在计算环境中的用法来提供以下定义,从而实施本文中所揭示的各种实施例。
“存取***”(还可称为主机***或请求***)意指请求可由使用合适应用程序或装置的用户观看、收听、读取、播放、执行或以其它方式利用的数字内容的***。存取***包括桌上型计算机、膝上型计算机、平板计算机、个人数字助理(PDA)、移动电话、MP3播放器、DVD播放器、游戏控制台、数字记录装置(例如数码相机)等。
“位速率”意指需要由存取***在给定单位时间内预先处理的数据量。位速率可依据编码类型、所存储的数字内容的格式、内容类型或其组合而定。位速率可为固定的或可变的。
“数据速率”意指在任何给定时间将数字内容从一个位置(例如,存储***)传送到另一位置(例如,存取***)的速度(例如,每秒字节数目)。
“被预先处理”(或“预先处理”)意指用于利用数字内容的任何操作。预先处理的一些实例包括:由编解码器模块执行的压缩及解压操作;由密码模块执行的解密及加密操作;在使用内容之前存取内容;等等。
“预先处理模块”意指执行预先处理操作的模块、组件或单元(贯穿此说明书可互换地使用)。预先处理模块可以硬件、软件或其组合来实施。预先处理模块的实例包括DRM模块、编解码器模块、密码模块等。
“吞吐速率”意指在时间间隔内的平均数据速率。吞吐速率可经设定或建立以限制在给定时间内将多少数据释放到存取***。吞吐速率可表示释放到存取***的数据的最大量、平均量或范围。
“被释放”意指当存取***能够存取数字内容以利用所述数字内容的时候。被释放并不需要从一个位置到另一位置的实际数据传送。
“利用”(或“被利用”)意指通常由使用合适应用程序或装置的最终用户对数字内容的观看、收听、读取、播放、执行或任何其它使用。通常,这些操作由存取***执行。
以下提供前述所定义术语的实例。使用膝上型计算机(存取***)的用户可能希望播放(利用)音频/视频文件(数字内容)。膝上型计算机可使用软件应用程序(例如,可从微软公司(Microsoft Corporation)得到的视窗媒体播放器(Windows Media Player))来播放音频/视频文件。膝上型计算机以特定速率(位速率)预先处理数字内容以适当地播放音频/视频文件。在将数字内容释放到膝上型计算机之前,密码模块(预先处理模块)可解密(预先处理)音频/视频文件。
在一个实施例中,吞吐速率控制使得数字内容可用于(被释放到)应用程序的速率。吞吐速率可在输入/输出(I/O)级处实施(即,由存储***实施)或由预先处理模块实施。在一个实施例中,吞吐速率可以多种方式来施加,例如,通过使用特定命令、DRM内容许可证、存取参数(例如,登录凭证及安全密钥(例如,编密密钥))等,如下文所描述。
在一个实施例中,存储***控制将数据流释放到存取***的速率。吞吐速率定义可在给定时间间隔内将数据释放到存取***的速率。存储***通知存取***数据何时可用或不可用,且因此有效地控制可在给定时间内利用多少数据。
在另一实施例中,吞吐速率依据与数字内容有关的至少一个参数而定。举例来说,吞吐速率可依据位速率而定。如果位速率为可变的,则平均位速率值可用以设定吞吐速率。吞吐速率可等于或高于位速率。
吞吐速率设定由存取***利用数据的理想最大速度。因而,进行非法复制将花费与播放(即,利用)音频/视频文件所花费的时间大约一样长的时间,其中(例如)在记录音频/视频文件的方面上具有几乎相同的不便。因此,控制吞吐速率可阻止数字内容盗版。
***级实例:
图1A展示根据一个实施例的一般***100的最高级框图,在所述一般***100中存储***105控制吞吐速率。吞吐速率可由存储***105确定或接收,如下文所描述。
***100包括存取***101,其经由I/O链路102而在操作上耦合到存储***105。存取***101通常包括若干功能组件。这些组件可包括处理器(还可称为中央处理单元(CPU))、主存储器、I/O装置等。主存储器经由***总线或局部存储器总线而耦合到CPU。主存储器用以在执行时间提供对数据及程序信息的CPU存取。通常,主存储器由随机存取存储器(RAM)电路组成。具有CPU及主存储器的计算机***常常被称为主机***。
存储***105包括存储器控制器103,其与I/O逻辑106介接以将数字内容传送到存储媒体(或单元)104及从存储媒体(或单元)104传送数字内容。I/O逻辑106可包括I/O存储器缓冲器107,在将数据传送到存取***101及从存取***101传送数据之前将数据临时存储(或“缓冲”)于所述I/O存储器缓冲器107中。
在一个实施例中,将数据存储于I/O缓冲器107中持续特定持续时间(即,添加延迟)以达到目标吞吐速率。目标吞吐速率可依据存取***的类型、数字内容的类型、数字内容的既定用途及其组合而定。所述持续时间可比在吞吐速率不受控制的环境中保持数据时的周期长。将数据足够长时间地保持于I/O缓冲器107中以满足目标吞吐速率。所述持续时间(即,在添加延迟之后)使得维持基于存取***101规格的最小数据速率以最小化归因于超时或任何其它问题的存取***101的数据可用性的任何中断。如果存取***101在特定持续时间之后未能存取数据,则在存取***101上运行的应用程序可宣布超时,其可中断操作。举例来说,当存取***101正在播放音频文件但其不具有足够数据以播放持续特定持续时间(可编程)时,则应用程序可宣布超时且放弃操作,或中断重放操作以缓冲数据。
控制器103知道缓冲器107大小且可跟踪时间。基于缓冲器107大小及所跟踪的时间,控制器103刷新缓冲器107以满足目标吞吐速率,且因此避免超时问题。以时间受控方式从I/O缓冲器107释放数据以达到目标吞吐速率。
经引入以控制吞吐速率的延迟可基于存储***105的内部时钟速度,其有助于确定存储***105为了达到目标吞吐速率而必须等待的周期的数目。延迟自身可为可变值。
本文中所揭示的各种实施例通过提供用以防止数字内容盗版的另一障壁来补充现有DRM***。因为时间通常极为重要,所以由存储***(或预先处理模块)控制的吞吐速率可通过防止以比针对数字内容文件指定的速率高的速率存取数字内容来使想要成为盗版者的人气馁。举例来说,即使存储***105能够以较高速率(例如,以每秒大约20兆字节)传送数据,存储***仍将吞吐速率控制到(例如)128kb/s的较慢平均速率而非每秒20兆字节。因此,根据一个实施例,通过使用受控制的吞吐速率,1GB音频数据可能花费大约10个小时来处理。在不使用受控制的吞吐速率的情况下,可能仅花费大约50秒来存取1GB音频数据。
在一个实施例中,不同类型的存储***(如下文相对于图1B所描述)可用以控制吞吐速率。举例来说,存储***105包括(但不限于)非易失性存储器装置(包括智能卡、SIM卡)、硬盘等,其中包括可经由状态机存取的任何存储***。
不同连接协议(专有的或标准的)可用以将存储***105在操作上耦合到存取***101,例如,通用串行总线(USB)、SCSI;蓝牙;无接触、无线等。本文中所揭示的适应性方面并不依据任何特定协议或标准而定。
如下文所描述,存储***105还可使用特殊状态信号或命令来通知存取***101继续等待内容。这减少了可能在利用数字内容方面破坏用户体验的任何超时问题。
图1B展示可与存取***101介接的不同类型的存储***108、111、113及115的实例。在存取***101上运行的应用程序101A利用存储于所述存储***中的任一者中的数字内容。应用程序101A将依据数字内容的类型及其既定用途而定。应用程序101A的一个实例为用以播放音频/视频内容的视窗媒体播放器(Windows Media Player)。
存储***108可为硬盘,其经由I/O链路109发送及接收数据且使用专用链路110(展示为I/O RDY110)来发送及接收命令。存储***108使用链路110来向存取***101通知“忙碌状态”。忙碌状态向存取***101指示存储***108未准备好接收新命令,或未准备好发送或接收数据。
存储***111可为非可移除式非易失性存储器***,例如,基于iNAND的存储器***。存储***111使用I/O链路112来向存取***101通知忙碌状态以及进行I/O操作(例如,发送及接收数据)。
存储***113可为可移除式非易失性存储器装置且经由连接器114A而在操作上耦合到存取***101。存储***113使用I/O链路114来进行I/O操作以及向存取***101通知忙碌状态。存储***113可基于安全数字(SD)、多媒体卡(MMC)或任何其它非易失性存储器标准。
当前存在可购得的许多不同类型的非易失性存储器卡,实例为紧凑快闪(CompactFlash)(CF)、MMC、SD、小型SD(miniSD)、存储器棒、智能媒体(SmartMedia)及半导体快闪(TransFlash)卡。尽管这些卡中的每一者根据其标准化规格而具有唯一机械接口、电接口、或机械与电接口、或任何其它接口(包括无线接口),但是包括于每一者中的快闪存储器可能非常类似。这些卡全部可从晟碟公司(SanDisk Corporation)(本申请案的受让人)得到。
晟碟公司(SanDisk Corporation)还提供在其Cruzer商标下的一系列快闪驱动器,其为具有通过***到主机***的通用串行总线(USB)插座(例如,114A)中而与主机***连接的USB插头的呈小封装的手持式存储器***。这些存储器卡及快闪驱动器中的每一者包括存储器控制器(103),其与存取***101介接并控制其中的快闪存储器的操作。
存储***115包括智能卡、SIM卡及其它类型的非易失性存储器***。智能卡为具有电子存储器的集成电路且用于多种用途,例如存储医疗纪录、产生网络识别符等。SIM卡为一种类型的智能卡,其可用于蜂窝式电话中以(例如)用于存储信息并加密语音及数据传输。
存储***115使用I/O链路116来进行I/O操作以及通过使用状态命令向存取***101通知忙碌状态。举例来说,当数据未准备好时,智能卡可使用标准的“SW1”状态字节来通知存取***101,且当数据准备好时,智能卡可使用标准的“SW2”状态字节来通知存取***101。此外,在所定义的状态之后,存取***101可将例如“获得响应”命令的另一命令发送到存储***115并确定其必须等待的时间。如果存取***101早于所计划的时间请求数据,则可使用状态消息来通知存取***101数据仍未准备好且其必须等待。
共同地及可互换地,用于向存取***101通知忙碌状态的过程及机制可称为“忙碌旗标”。在常规***中,例如,当存储***自身未准备好发送或接收数据时,基于用以处理I/O操作的存储***105能力而将忙碌旗标发送到存取***。在一个实施例中,即使在任何给定时间存储***可能能够发送或接收数据,仍发送忙碌旗标以控制吞吐速率。
如上文所论述,DRM模块用以控制对数字内容的存取。图1C展示检验使用存取***101的用户是否具有存取特定数字内容的合适许可的DRM模块117的实例。DRM模块117可以硬件、软件或其组合来实施。还展示在DRM模块117已检验许可之后执行特定密码功能的密码模块118。密码模块118可为独立模块、DRM模块117的子***或存储***105的子***。如下文所描述,在一个实施例中,DRM模块117将解密密钥及吞吐速率提供到密码模块118以延迟密码功能。
确定延迟以控制吞吐速率:
以下提供可如何确定延迟以控制用于大小为C的文件的吞吐速率的实例。对于此实例来说,S可为在存储***105与存取***101之间传送数据的速度(例如,以字节/秒为单位);B为I/O缓冲器107(图1A)的大小,且预期(或所需)吞吐速率经指示为T。用以存取文件的延迟可由Dc来表示,其中:
在一个实施例中,文件可分段成“n”数目的块(或片段),且在每一块之后,可添(D c )
加n的延迟。可根据I/O缓冲器107的大小来确定每一块的大小。当处理结束时(例如,在播放音频文件的末端),实际吞吐速率类似于预期吞吐速率。此机制可用于将文件大小提供到存储***或存储***知道文件大小的***中。
在另一实施例中,可在I/O缓冲器107存取操作之间添加延迟。当文件大小不为存储***(例如,存储***113)所知时,此实施例是有用的。当文件处理结束时(例如,在播放音频文件结束时),实际吞吐速率类似于预期吞吐速率。所述延迟既定控制吞吐速率且可被标示为Db,其中:
在另一实施例中,可在特定时间窗(或间隔)之间添加延迟以控制吞吐速率。举例来说,如果平均时间窗(tw)为1秒,则在每一秒的数据存取之后施加延迟
图1D以图解方式说明可如何在正处理(利用)文件时随时间施加可变延迟。在此实例中,在t=0处存取文件且在t=t1处处理结束。可变延迟允许在不影响用户体验的情况下达到目标吞吐速率。可通过在开始处(即,在t=0处)施加短延迟(或没有延迟)来向存取***101提供对某些数字内容(例如,数字文件的1%)的立即存取。此后,逐渐地(即,在t=0与t=t1之间)施加较长延迟以达到目标吞吐速率。这允许存取***101足够快地缓冲数据,因而其可开始处理内容。这优化了整体处理时间,同时盗版者不能够太迅速地存取文件。
值得注意的是,前述技术及下文描述的其它技术并不需要存储***知道文件***结构细节。文件***用以存储数字内容。
由预先处理模块进行的吞吐速率控制:
在另一实施例中,吞吐速率可由预先处理模块控制。预先处理模块可用以控制对受保护数字内容的存取,辅助处理数字内容,或其组合。在此实施例中,存储***可在释放数字内容之前等待预先处理模块输出数据。
图2展示预先处理模块200的实例,所述预先处理模块200接收输入数据201,预先处理输入数据201,且接着输出数据202。输入数据201可为受保护、经压缩、未受保护或经解压的数字内容。预先处理模块200可以硬件、软件或其组合来实施。
预先处理模块200包括(但不限于)编解码器模块、DRM模块(117,图1C)、密码模块(118,图1C)等。编解码器模块通常用以压缩及解压音频、视频及音频/视频文件。DRM模块通常用以检验装置、应用程序、用户或其组合是否具有存取数字内容以用于特定功能(例如,播放、移动或复制文件)的适当许可。密码模块通常执行与安全有关的过程步骤,例如,加密及解密数据。
在一个实例中,密码模块可在密码计算期间或在执行密码计算之后添加延迟。在密码模块接收输入数据201(或输入数据201的一部分)之后,代替立即返回结果,密码模块保持数据以达到预期吞吐速率。因此,吞吐速率有效地控制预先处理速率。
图3展示根据一个实施例的在已预先处理数据之后由预先处理模块200添加延迟的最高级过程流程图。过程开始于步骤S300,且在步骤S301中,由预先处理模块200接收或获取输入数据201。在步骤S303中,由预先处理模块200接收或获取用于输入数据的吞吐速率,如下文所描述。
在步骤S303中,预先处理数据。预先处理操作依据预先处理模块200的功能而定。举例来说,当密码模块为预先处理模块时,则在步骤S303中执行密码功能。
在步骤S304中,在步骤S305中释放输出数据202之前添加延迟。如上文所论述,延迟量是基于预期吞吐速率。
图4展示根据一个实施例的通过在预先处理操作之间添加延迟而控制吞吐速率的实例。过程开始于步骤S400,且在步骤S401中,由预先处理模块200接收或获取输入数据201。在步骤S402中,由预先处理模块200接收或获取用于输入数据的吞吐速率,如下文所描述。
在步骤S403中,部分地预先处理输入数据。举例来说,对于密码模块来说,部分地执行密码功能。在步骤S404中,添加延迟。步骤S405及S406分别类似于步骤S403及S404。总延迟是基于预期吞吐速率,且以合适的延迟完成数据预先处理。此后,在步骤S407中输出经预先处理的数据。
在一个实施例中,吞吐速率可由DRM模块(117,图1C)控制。吞吐速率可随存取或使用的类型而变化,如下文所描述。图5展示DRM模块117控制吞吐速率的过程流程图的实例。当DRM模块117接收对数字内容及执行特定操作(例如,播放音频文件)的请求时,过程开始于步骤S500。使用存取***101的用户可经由应用程序101A来请求播放音频文件。
在步骤S501中,DRM模块117剖析请求。步骤S501可依据操作的类型、应用程序及请求的类型而定。
在步骤S502中,DRM模块117检验用户是否具有存取所请求的内容或执行所请求的操作的合适许可。如果适当许可不可用,则拒绝请求且DRM模块117等待下一请求。
如果在步骤S503中许可可用,则DRM模块117确定是否需要控制吞吐速率。这可由特殊命令、通过设定请求中的字段或以任何其它方式来指示。如果不需要控制吞吐速率,则在步骤S504中,DRM模块117将解密密钥提供到密码模块118且过程移动到步骤S507,下文描述。
如果需要控制吞吐速率,则在步骤S505中,DRM模块117获取吞吐速率,如下文所描述。此后,在步骤S506中,将解密密钥及吞吐速率提供到密码模块118。
在步骤S507中,密码模块118控制吞吐速率,如上文相对于图3及图4所描述。
确定/接收吞吐速率:
可以多种方式(例如,通过使用特定命令、在基于DRM的内容许可证中、根据内容位速率等)来确定或接收吞吐速率。吞吐速率可在创建数字内容时确定,且可基于格式或编码类型或其组合。本文中所揭示的各种实施例不限于用于确定或接收吞吐速率的任何特定方法。以下提供用于确定或接收吞吐速率的一些实例:
(a)可向存储***给予关于文件的一些信息(例如,由存取***)或提供对正被存取的文件的直接或间接参考。直接参考为文件名称。间接参考可为由存储***(例如,113,图1B)使用以识别受保护内容的编密密钥的密钥识别符。吞吐速率可与信息、参考或其组合直接地或间接地相关联。存储***处理器(103,图1A)使用参考或信息来获取(或确定)吞吐速率。
(b)当未将关于文件的额外信息(例如,文件大小)提供到存储***时,则文件传送操作的结束(即,何时将数字内容存储于存储***中)可由命令来指示。此命令可由存取***发送且可用以将吞吐速率提供到存储***。在一个实施例中,当未使用此命令时,此方法可以某种其它安全措施来实施以防止全速存取所存储的内容。举例来说,存储***可经锁定成以低速度(例如,低默认速度)操作;且接着,较高速度可能仅在接收或使用所述命令之后才为可用的。在一个实施例中,以较低速度存取内容可能不需要特定存取参数(或登录凭证)。
(c)一些存储***(例如,基于可信快闪(TrustedFlash)的存储装置)能够处理内容安全密钥(例如,编密密钥)。安全密钥用以防止对所存储内容的未经授权的存取。安全密钥可与单一数字文件相关联,且吞吐速率可与密钥的使用联系。在此情况下,当加载或创建密钥时,吞吐速率可通过使用同一命令或用以加载或创建密钥的额外命令而与其相关联。一旦获得了对使用密钥的请求,便接着施加充分的吞吐速率。此外,基于可信快闪(TrustedFlash)的存储***可使用鉴别来存取安全密钥。鉴别可基于检验用户帐户。在此实例中,可为每一帐户或为用以存取内容的每一安全密钥提供吞吐速率。当准予帐户存取时,现有命令或新命令中的额外参数可用以提供吞吐速率。接着由存储***存储吞吐速率以供稍后使用。
(d)一些存储***可理解文件***结构且能够确定何时正存取文件。在此实例中,当存取存储器位置时,存储***确定什么文件使用所述位置且执行查找以获得吞吐速率,且此后,施加相关联的吞吐速率。如上文所描述,这些存储***还可接收吞吐速率。
(e)还可将吞吐速率存储于存储***自身中。举例来说,在使用安全来保护内容或使用DRM的***中,与内容相关联的字段可用以存储吞吐速率。此字段可外加用于保护对数字内容的存取的其它字段。对于其它***(即,不安全及非DRM***)来说,吞吐速率可与有助于识别文件的任何数据相关联。在另一实施例中,存储***可具有存储与特定文件相关联的吞吐速率的其自身“数据库”或“表”。
(f)一些存储***(例如,智能卡、SIM卡等)还可能能够剖析数字内容(即,其一部分)且根据所剖析的数字内容确定位速率信息。可接着将位速率信息用作用以设定吞吐速率的参数。在此情况下,可根据内容自身确定吞吐速率,且存取***并不需要提供吞吐速率。
(g)智能存储***(例如,智能卡及SIM卡)可将一字段添加到其自身内部安全数据库以存储吞吐速率。由这些装置使用安全数据库来存储信息以防止未经授权的存取。可仅确定吞吐速率一次(例如,在第一次存取时),且接着存储吞吐速率以供稍后使用。
(h)在另一实施例中,吞吐速率可与存取参数(例如,登录凭证)相关联。所述存取参数允许用户以相关联的吞吐速率存取数字内容。吞吐速率可作为数据包括于数字证书中,例如作为:证书扩展名;凭证名称的部分,例如,登录名称的某一预定义部分,或凭证值的部分。此外,可通过将登录凭证用作参数来确定吞吐速率。用一些预先确定的功能来处理凭证以得到待施加的吞吐速率。凭证接着用于获得对内容的存取并设置吞吐速率。举例来说,用户识别符及口令(存取参数)可用于以指定的吞吐速率来观看内容,而较高鉴别(例如,用作存取参数的PKI数字证书)用于以不同吞吐速率来复制内容。
(i)吞吐速率可与个别DRM许可包括在一起。吞吐速率可与DRM内容许可证一起传递。吞吐速率可依据请求的类型而改变。举例来说,对于复制、移动或数字内容重放,吞吐速率可有所不同。大多数存储***仅知道读取及写入操作且不知道为何正存取内容。在一个实施例中,当实施DRM时指定内容存取的目的。可通过使用特定命令、命令中的参数、使用特定帐户或任何其它方法来识别请求类型。独立的预定义帐户还可用以指示存取的类型,例如,播放、复制等。在此情况下,使用帐户的登录可用以定义得到数据的目的。图6说明使用独立登录凭证来存取内容以用于不同功能(例如,重放、复制及移动)。登录X用于以特定位速率X1来重放内容。登录Y用于以位速率Y1来复制内容。登录Z用于以位速率Z1来移动内容。位速率X1、Y1及Z1可彼此不同,而不管登录帐户的数目如何。在另一实施例中,可能存在仅一个帐户(例如,登录X帐户)以防止用于非法复制的任何高速存取。
(j)在另一实施例中,命名模式可用以识别操作,且接着针对操作施加吞吐速率。举例来说,可以允许存储***辨别存取的类型并确定得到数据的目的的方式来命名帐户。可使用存取参数(或登录凭证)的命名惯例,其中在特定字符之后的一部分可指示存取的类型、待施加的吞吐速率及其组合。另一选项将为设定与帐户内的许可有关的属性。属性可在创建帐户时设定,且吞吐速率是基于所述属性。一旦存储***知道存取的类型,其便使用合适的吞吐速率。
以下提供根据一个实施例的命名模式的实例。数字内容的存取参数可经划分成不同部分,例如,所述存取参数可包括唯一识别符(ID)及经编码的吞吐速率值。唯一ID可包括用以指定或指示所请求的动作的代码。
可使用标准编码技术来编码吞吐速率。举例来说,128kb/s可表示为001010100,其可表示为十进制数84,其中:1=>001,2=>010且8=>100。
唯一ID可包括可用以指示用于不同类型操作的许可的位。举例来说,3个位010可用以指示“播放”操作且100可指示复制操作。
唯一ID还可经编码以指示操作被允许多少次。举例来说,8个位可提供256个不同代码,其可被指派给用于给定操作的特定许可。举例来说,值“00000000”可被指派以播放音频文件一次。
基于前述内容,可将10000000用作唯一ID且可以此唯一ID将128kb/s表示为:
10000000010001010100,即,十六进制数525396
因此,10000000010001010100在用作登录帐户、登录凭证或其组合时告知存储***128kb/s可用于重放。
施加吞吐速率:
可基于应用程序及如何确定或接收吞吐速率而以多种方式来施加吞吐速率。以下提供可如何施加吞吐速率的一些实例:
在使用DRM许可证来实施吞吐速率的情况下,则可由DRM模块(或密码模块)通过使用延迟来施加吞吐速率,如上文所描述。在另一实施例中,可在存储***级处通过控制I/O缓冲器存取来施加吞吐速率,也如上文所描述。
如果吞吐速率与存取参数(例如,登录凭证)相关联,则可在存取与吞吐速率相关联的登录帐户时施加吞吐速率。
当吞吐速率与登录帐户及安全密钥(例如,编密密钥、内容许可证等)的使用相关联时,则在帐户用以存取由安全密钥所保护的特定内容时施加吞吐速率。
控制广告内容的显示:
在一个实施例中,在允许用户存取其它数字内容之前,吞吐速率可用以控制如何向使用存取***101(图1A)的用户显示数字广告(可称为“广告”)。图7展示使数字广告700与各种数字内容文件(展示为内容1、内容2及内容3)相关联的实例。吞吐速率与广告700相关联。在用户可利用内容1、2及3之前,以相关联的吞吐速率向用户显示广告700。
存取参数701与广告700相关联且可用以控制对内容1、2及3的存取。在一个实施例中,存取参数701由用于广告内容700的散列函数来定义。在另一实施例中,存取参数701可包括至少一个登录帐户或一密钥识别符,其可用以实现对内容1、2及3中的一者或一者以上的存取。存取参数701由用于广告700的散列函数来保护,使得在可存取其它内容(例如,内容1、2或3)之前以受控制的吞吐速率来完全显示广告700。不同存取参数(展示为AP 1、AP 2及AP 3)可与不同广告内容(展示为AD#1、AD#2及AD#3)相关联。
前述实施例仅为说明性且并非为限制性。鉴于本揭示内容及所附权利要求书,将容易明白本发明的许多其它应用及实施例。