在重叠多服务器网络环境中用于访问控制的方法和装置转让专利

申请号 : CN200910161205.7

文献号 : CN101635625B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : M·辛格B·拉坎普

申请人 : 索尼电影娱乐公司

摘要 :

本发明的名称是“在重叠多服务器网络环境中用于访问控制的方法和装置”。在一个实现中,网络媒体环境包括:包含第一服务器和第一客户机的第一集线器网络,且所述第一服务器连接到所述第一客户机;包含第二服务器和所述第一客户机的第二集线器网络,且所述第二服务器连接到所述第一客户机,以使所述第一集线器网络和所述第二集线器网络重叠;其中所述第一客户机存储绑定到所述第一集线器网络的第一内容,并存储绑定到所述第二集线器网络的第二内容。

权利要求 :

1.一种将内容绑定到集线器网络的方法,包括:接收将内容的离散版本绑定到包含服务器和客户机作为集线器网络成员的所述集线器网络的请求,其中所述离散版本包括离散锁定内容数据;

禁止所述离散版本;

创建存储在所述服务器上的所述内容的源版本,其中所述源版本包括源锁定内容数据;以及创建存储在所述服务器上的根许可证,其中所述根许可证绑定到所述集线器网络。

2.如权利要求1所述的方法,还包括:接收存储在顺从性媒体上的所述离散版本;

其中顺从性媒体是可读且可写的电子存储媒体。

3.如权利要求1所述的方法,其中:所述离散版本具有相应的离散许可证。

4.如权利要求3所述的方法,其中:禁止所述离散版本包括禁止所述离散许可证。

5.如权利要求3所述的方法,其中:创建所述根许可证包括根据所述离散许可证创建所述根许可证。

6.如权利要求1所述的方法,其中:在根据请求禁止所述离散版本之后,所述服务器将对所述离散锁定内容数据解密。

7.如权利要求1所述的方法,其中:所述根许可证指示所述服务器具有所述源版本的根职责。

8.如权利要求1所述的方法,还包括:创建所述离散锁定内容数据的拷贝;以及将所述拷贝存储为所述源锁定内容数据。

9.如权利要求1所述的方法,还包括:根据离散许可授权数据,创建绑定许可授权数据;

其中所述离散许可授权数据对应于所述离散版本,并且所述离散许可授权数据指示外部服务器是外部许可授权机构,所述绑定许可授权数据对应于所述源版本,并且所述绑定许可授权数据指示所述根许可证是本地许可授权机构,而所述外部服务器是外部许可授权机构。

10.如权利要求1所述的方法,其中:所述离散版本具有已撤消参与集线器网络的授权的一个或多个设备的相应撤消列表。

11.如权利要求10所述的方法,还包括:在禁止所述离散版本和创建所述源版本之前,检查所述服务器是否在所述撤消列表中。

12.如权利要求10所述的方法,还包括:根据所述离散版本的所述撤销列表,更新所述服务器存储的服务器撤消列表;以及在禁止所述离散版本和创建所述源版本之前,检查所述服务器是否在所述服务器撤消列表中。

13.如权利要求10所述的方法,还包括:通过创建对应于所述离散版本的所述撤销列表的拷贝,来创建对应于所述源版本的撤销列表。

14.如权利要求1所述的方法,其中:所述服务器和所述客户机都是顺从性设备,在没有绑定到顺从性设备是其成员的集线器网络的许可证的情况下,顺从性设备将不对锁定内容数据解密。

15.如权利要求14所述的方法,其中:当没禁止所述离散版本时,不是所述集线器网络成员的非成员顺从性设备将根据请求对所述离散锁定内容数据解密,但当禁止所述离散版本时,所述非成员顺从性设备将不对所述离散锁定内容数据解密。

16.如权利要求1所述的方法,还包括:通过拷贝离散密钥来创建源密钥;

其中所述离散密钥用于对所述离散锁定内容数据解密,以及所述源密钥用于对所述源锁定内容数据解密。

17.如权利要求16所述的方法,其中:使用内容加密技术,对所述离散锁定内容数据加密,使用所述内容加密技术,对所述源锁定内容数据加密,使用不同于所述内容加密技术的集线器网络加密技术,对所述离散密钥加密,并且使用所述集线器网络加密技术,对所述源密钥加密。

18.如权利要求17所述的方法,其中:所述服务器存储用于使用所述集线器网络加密技术对加密的数据解密的集线器网络密钥。

19.如权利要求17所述的方法,其中:所述集线器网络加密技术不同于所述内容加密技术,因为所述集线器网络加密技术使用与所述内容加密技术用于加密数据的密钥不同的密钥来加密数据。

20.如权利要求17所述的方法,其中:使用所述集线器网络加密技术,对所述根许可证加密。

21.一种释放绑定到集线器网络的内容的方法,包括:接收从包含服务器和客户机作为集线器网络成员的所述集线器网络中释放内容源版本的请求,其中所述源版本存储在所述服务器上,包括源锁定内容数据,并具有绑定到所述集线器网络的相应根许可证;

禁止所述源版本;以及

创建所述内容的离散版本,其中所述离散版本包括离散锁定内容数据。

22.如权利要求21所述的方法,还包括:在禁止所述源版本和创建所述离散版本之前,检查顺从性媒体是否可用于存储所述离散版本;以及将所述离散版本存储在可用的顺从性媒体上;

其中顺从性媒体是可读且可写的电子存储媒体。

23.如权利要求21所述的方法,还包括:禁止存储在所述客户机上的所述内容的子拷贝版本;

其中所述子拷贝版本包括所述源锁定内容数据的拷贝。

24.如权利要求21所述的方法,其中:禁止所述源版本包括禁止所述根许可证。

25.如权利要求21所述的方法,其中:在禁止所述源版本之后,所述服务器将不对所述源锁定内容数据解密。

26.如权利要求21所述的方法,还包括:根据所述根许可证,创建对应于所述离散版本的离散许可证。

27.如权利要求21所述的方法,还包括:创建所述源锁定内容数据的拷贝;以及将所述拷贝存储为所述离散锁定内容数据。

28.如权利要求21所述的方法,还包括:根据绑定许可授权数据,创建离散许可授权数据;

其中所述绑定许可授权数据对应于所述源版本,并且所述绑定许可授权数据指示所述根许可证是本地许可授权机构,而外部服务器是外部许可授权机构,并且所述离散许可授权数据对应于所述离散版本,并且所述离散许可授权数据指示所述外部服务器是外部许可授权机构。

29.如权利要求21所述的方法,其中:所述源版本具有已撤消参与集线器网络的授权的一个或多个设备的相应撤消列表。

30.如权利要求29所述的方法,还包括:在禁止所述源版本和创建所述离散版本之前,检查所述服务器是否在所述撤消列表中。

31.如权利要求29所述的方法,还包括:根据所述源版本的所述撤销列表,更新所述服务器存储的服务器撤消列表;以及在禁止所述源版本和创建所述离散版本之前,检查所述服务器是否在所述服务器撤消列表中。

32.如权利要求29所述的方法,还包括:通过创建对应于所述源版本的所述撤销列表的拷贝,来创建对应于所述离散版本的撤销列表。

33.如权利要求21所述的方法,其中:所述服务器和所述客户机都是顺从性设备,在没有绑定到顺从性设备是其成员的集线器网络的许可证的情况下,顺从性设备将不对锁定内容数据解密。

34.如权利要求21所述的方法,还包括:通过拷贝源密钥来创建离散密钥;

其中所述源密钥用于将所述源锁定内容数据解密,并且所述离散密钥用于将所述离散锁定内容数据解密。

35.如权利要求34所述的方法,其中:使用内容加密技术,将所述源锁定内容数据加密,使用所述内容加密技术,将所述离散锁定内容数据加密,使用与所述内容加密技术不同的集线器网络加密技术,将所述源密钥加密,并且使用所述集线器网络加密技术,将所述离散密钥加密。

36.如权利要求35所述的方法,其中:所述集线器网络加密技术不同于所述内容加密技术,因为所述集线器网络加密技术使用与所述内容加密技术用于加密数据的密钥不同的密钥来加密数据。

37.如权利要求35所述的方法,其中:使用所述集线器网络加密技术,加密所述根许可证。

38.如权利要求35所述的方法,其中:所述服务器存储用于使用所述集线器网络加密技术将加密的数据解密的集线器网络密钥。

39.一种将内容绑定到集线器网络的方法,包括:接收将离散实例绑定到包含服务器和客户机作为集线器网络成员的所述集线器网络的请求,其中所述离散实例包括离散锁定内容数据、离散许可证和离散许可授权数据;

禁止所述离散实例;以及

创建绑定实例,其中所述绑定实例包括源锁定内容数据、根许可证和绑定许可授权数据;

其中所述根许可证绑定到所述集线器网络。

40.一种释放绑定到集线器网络的内容的方法,包括:接收从包含服务器和客户机作为集线器网络成员的所述集线器网络中释放绑定实例的请求,其中所述绑定实例包括源锁定内容数据、根许可证和绑定许可授权数据,其中所述根许可证绑定到所述集线器网络;

禁止所述绑定实例;以及

创建离散实例,其中所述离散实例包括离散锁定内容数据、离散许可证和离散许可授权数据。

41.一种处理内容的离散实例的方法,所述内容的离散实例包括:锁定内容数据;

用于将所述锁定内容数据解密的密钥;

许可证;以及

许可授权数据;

其中所述离散实例存储在是可读且可写存储媒体的顺从性媒体上,所述方法包括:

使用内容加密技术,将所述锁定内容数据加密,以及使用与所述内容加密技术不同的集线器网络加密技术,将所述密钥加密。

42.如权利要求41所述的方法,其中:所述集线器网络加密技术不同于所述内容加密技术,因为所述集线器网络加密技术使用与所述内容加密技术用于加密数据的密钥不同的密钥来加密数据。

43.如权利要求41所述的方法,其中:所述许可授权数据存储为所述锁定内容数据的标题数据。

44.如权利要求41所述的方法,其中:所述许可授权数据指示外部服务器是外部许可授权机构。

45.如权利要求41所述的方法,其中:使用所述集线器网络加密技术,加密所述许可证。

46.如权利要求41所述的方法,其中:如果所述离散实例被禁止了,则所述许可证指示允许所述离散实例绑定到集线器网络。

47.如权利要求41所述的方法,其中:所述许可证指示允许拷贝所述锁定内容数据。

48.如权利要求41所述的方法,其中:所述许可证指示不允许拷贝所述许可证。

49.一种处理离散数据集的方法,所述离散数据集包括:

锁定内容数据,

用于解密所述锁定内容数据的密钥,许可证,以及

许可授权数据;

所述方法包括:

使用内容加密技术,将所述锁定内容数据加密,使用不同于所述内容加密技术的集线器网络加密技术,将所述密钥加密,使用顺从性加密技术将至少一部分所述离散数据集加密,以使顺从性设备存储用于解密所述加密的至少一部分所述离散数据集的顺从性密钥。

50.一种处理内容的绑定实例的方法,所述内容的绑定实例包括:源锁定内容数据,存储在是集线器网络成员的服务器上;

源密钥,存储在所述服务器上,用于解密所述源锁定内容数据;

根许可证,存储在所述服务器上;以及许可授权数据,存储在所述服务器上;

其中所述根许可证绑定到所述集线器网络,所述方法包括:

使用内容加密技术,加密所述锁定内容数据,并且使用不同于所述内容加密技术的集线器网络加密技术,加密所述源密钥。

51.如权利要求50所述的方法,其中:所述集线器网络加密技术不同于所述内容加密技术,因为所述集线器网络加密技术使用与所述内容加密技术用于加密数据的密钥不同的密钥来加密数据。

52.如权利要求50所述的方法,其中:所述服务器存储用于使用所述集线器网络加密技术将加密的数据解密的集线器网络密钥。

53.如权利要求50所述的方法,其中:使用所述集线器网络加密技术,将所述根许可证加密。

54.如权利要求50所述的方法,其中:如果禁止所述绑定实例,则所述根许可证指示允许所述绑定实例从所述集线器网络中释放。

55.如权利要求54所述的方法,其中:释放所述绑定实例包括创建没绑定到所述集线器网络的离散实例。

56.如权利要求50所述的方法,其中:所述根许可证指示,对于所述服务器而言允许解密所述源锁定内容数据。

57.如权利要求50所述的方法,其中:所述根许可证指示,不允许将所述源锁定内容数据从所述服务器移动到所述集线器网络的另一成员。

58.如权利要求50所述的方法,其中:所述根许可证指示允许拷贝所述源锁定内容数据。

59.如权利要求50所述的方法,其中:所述根许可证指示不允许拷贝所述根许可证。

60.如权利要求50所述的方法,其中:所述根许可证指示允许创建所述源锁定内容数据的子拷贝版本,所述根许可证定义子拷贝许可证的允许,并且所述子拷贝版本包括所述源锁定内容数据的拷贝,并具有根据所述根许可证指示允许的相应子拷贝许可证。

61.如权利要求50所述的方法,其中:所述许可授权数据存储为所述源锁定内容数据的标题数据。

62.如权利要求50所述的方法,其中:所述许可授权数据指示所述服务器是本地许可授权机构,并且外部服务器是外部许可授权机构。

63.如权利要求50所述的方法,还包括:子拷贝锁定内容数据,存储在是所述集线器网络成员并连接到所述服务器的客户机上;

子拷贝许可证,存储在所述客户机上;以及所述许可授权数据的客户机拷贝,存储在所述客户机上。

64.如权利要求63所述的方法,其中:所述子拷贝许可证指示,对于所述客户机而言允许解密所述子拷贝锁定内容数据。

65.如权利要求63所述的方法,其中:所述子拷贝许可证指示,对于所述集线器网络成员而言,允许解密所述子拷贝锁定内容数据。

66.如权利要求63所述的方法,其中:所述子拷贝许可证指示,允许将所述子拷贝锁定内容数据从所述客户机移到所述集线器网络的另一成员。

67.如权利要求63所述的方法,其中:所述子拷贝许可证指示允许拷贝所述子拷贝锁定内容数据。

68.如权利要求63所述的方法,其中:所述子拷贝许可证指示不允许拷贝所述子拷贝许可证。

69.如权利要求63所述的方法,其中:所述子拷贝许可证指示允许创建所述子拷贝锁定内容数据的子拷贝版本,所述子拷贝许可证定义另一子拷贝许可证的允许,并且所述子拷贝版本包括所述子拷贝锁定内容数据的拷贝,并具有根据所述子拷贝许可证指示允许的相应第二子拷贝许可证。

70.如权利要求63所述的方法,其中:所述子拷贝许可证指示允许创建所述子拷贝锁定内容数据的子拷贝版本,所述子拷贝许可证定义另一子拷贝许可证的允许,并且所述子拷贝版本包括所述子拷贝锁定内容数据的拷贝,并具有所述许可授权数据的相应新的客户机拷贝。

说明书 :

在重叠多服务器网络环境中用于访问控制的方法和装置

[0001] 本申请是申请日为2003年12月16日、申请号为200380109619.6、发明名称为“在重叠多服务器网络环境中用于访问控制的方法和装置”的申请的分案申请。
[0002] 相关申请
[0003] 本申请要求2002年12月17日提交的美国临时专利申请No.60/434774和2003年5月20日提交的美国专利申请No.60/471823的利益,其公开的内容通过引用结合于此。

背景技术

[0004] 诸如音乐和电影的音频和视频媒体内容,正以各种数字形式变得日益可用,诸如以存储在光存储器(例如CD或DVD)或磁存储器(例如硬盘)上的电子文件的形式。数字内容给用户提供了高质量再现和方便的访问。数字内容的另一优点是,通常易于创建高质量的内容拷贝。用户通过处于多个位置的各种设备来享受访问数字内容的乐趣。然而,内容所有者经常关心不受控制和未经授权的拷贝以及由此引起的潜在问题,诸如盗版。

发明内容

[0005] 本公开提供了管理网络环境中设备和内容的方法和装置。在一个实现中,网络媒体环境包括:包含第一服务器和第一客户机的第一集线器网络,并且所述第一服务器连接到所述第一客户机;包含第二服务器和所述第一客户机的第二集线器网络,并且所述第二服务器连接到所述第一客户机,以使所述第一集线器网络和所述第二集线器网络重叠;其中所述第一客户机存储绑定到所述第一集线器网络的第一内容,并存储绑定到所述第二集线器网络的第二内容。
[0006] 在另一实现中,网络媒体环境包括:包含第一服务器和第一客户机的第一集线器网络,并且所述第一服务器连接到所述第一客户机;包含第二服务器和所述第一客户机的第二集线器网络,并且所述第二服务器连接到所述第一客户机,以使所述第一集线器网络和所述第二集线器网络重叠;其中所述第一服务器将第一内容存储在锁定内容数据的第一源版本中,所述第一服务器存储绑定到所述第一集线器网络用于所述第一源版本的第一根许可证,所述第二服务器将第二内容存储在锁定内容数据的第二源版本中,所述第二服务器存储绑定到所述第二集线器网络用于所述第二源版本的第二根许可证,所述第一客户机接收由所述第一服务器从所述第一源版本流出的所述第一内容,并且所述第一客户机接收由所述第二服务器从所述第二源版本流出的所述第二内容。
[0007] 在另一实现中,网络媒体环境包括:包含第一服务器的第一集线器网络;包含第二服务器和所述第一服务器的第二集线器网络,并且所述第二服务器连接到所述第一服务器,以使所述第一集线器网络和所述第二集线器网络重叠;其中所述第一服务器存储第一许可证和锁定内容数据的第一版本,并且所述第一版本存储第一内容,所述第一服务器存储第二许可证和锁定内容数据的第二版本,并且所述第二版本存储第二内容,所述第一许可证绑定到所述第一集线器网络,并且所述第二许可证绑定到所述第二集线器网络。
[0008] 在另一实现中,集线器网络包括:服务器,其存储根许可证和锁定内容数据的源版本;客户机,其连接到所述服务器,并存储第一许可证、锁定内容数据的第一子拷贝版本、第二许可证以及锁定内容数据的第二子拷贝版本;其中锁定内容数据的所述源版本存储第一内容,所述根许可证绑定到所述集线器网络,所述第一子拷贝版本存储所述第一内容,所述第一许可证绑定到所述集线器网络,所述第二子拷贝版本存储第二内容,并且所述第二许可证绑定到另一集线器网络。
[0009] 在一个实现中,一种将客户机添加为集线器网络成员的方法包括:检测连接到集线器网络中服务器的客户机;认证所述客户机;授权所述客户机;并将所述客户机添加为所述集线器网络中的成员。
[0010] 在另一实现中,将客户机添加为集线器网络成员的方法包括:将连接通知从客户机发送到集线器网络中的服务器;将标识信息从所述客户机发送到所述服务器;并在所述客户机接收来自所述服务器的添加确认;其中所述添加确认指示所述客户机已添加为所述集线器网络中的成员。
[0011] 在另一实现中,将客户机添加为集线器网络成员的方法包括:通过连接到集线器网络中服务器的中间设备认证客户机;通过所述中间设备授权所述客户机;并通过所述中间设备将所述客户机添加为所述集线器网络中的成员;其中所述客户机不连接到所述服务器。
[0012] 在另一实现中,将客户机添加为集线器网络成员的方法包括:通过连接到所述服务器的中间设备将连接通知从客户机发送到集线器网络中的服务器;通过所述中间设备将标识消息从所述客户机发送到所述服务器;并通过所述中间设备在所述客户机端接收来自所述服务器的添加确认;其中所述添加确认指示所述客户机已添加为所述集线器网络中的成员。
[0013] 在另一实现中,一种将客户机作为集线器网络成员移除的方法包括:触发作为集线器网络成员的客户机的移除;禁止对应于绑定到所述集线器网络的内容数据的所述客户机存储的所有许可证;并将所述客户机作为所述集线器网络中的成员移除,以使所述客户机不再是所述集线器网络的成员。
[0014] 在另一实现中,一种将客户机重新连接到集线器网络的方法包括:检测连接到集线器网络的客户机;将所述客户机认证为所述集线器网络的成员;并授权所述客户机。
[0015] 在另一实现中,一种从集线器网络断开客户机的方法包括:从集线器网络断开客户机;设置存储在所述客户机上的许可证的截止时间;并将所述截止时间与所述客户机的时钟相比较;其中所述许可证对应于存储在所述客户机上的锁定内容数据,并绑定到所述集线器网络。
[0016] 在一个实现中,一种将内容绑定到集线器网络的方法包括:接收将内容的离散(discrete)版本绑定到包含服务器和客户机作为集线器网络成员的所述集线器网络的请求,其中所述离散版本包括离散锁定内容数据;禁止所述离散版本;并创建存储在所述服务器上的所述内容的源版本,其中所述源版本包括源锁定内容数据;创建存储在所述服务器上的根许可证,其中所述根许可证绑定到所述集线器网络。
[0017] 在另一实现中,一种释放绑定到集线器网络的内容的方法包括:接收从包含服务器和客户机作为集线器网络成员的所述集线器网络中释放内容源版本的请求,其中所述源版本存储在所述服务器上,包括源锁定内容数据,并具有绑定到所述集线器网络的相应根许可证;禁止所述源版本;并创建所述内容的离散版本,其中所述离散版本包括离散锁定内容数据。
[0018] 在另一实现中,将内容绑定到集线器网络的方法包括:接收将离散实例(instance)绑定到包括服务器和客户机作为集线器网络成员的所述集线器网络的请求,其中所述离散实例包括离散锁定内容数据、离散许可证和离散许可授权数据;禁止所述离散实例;以及创建绑定实例,其中所述绑定实例包括源锁定内容数据、根许可证和绑定许可授权数据;其中所述根许可证绑定到所述集线器网络。
[0019] 在另一实现中,释放绑定到集线器网络的内容的方法包括:接收从包括服务器和客户机作为集线器网络成员的所述集线器网络中释放绑定实例的请求,其中所述绑定实例包括源锁定内容数据、根许可证和绑定许可授权数据,其中所述根许可证绑定到所述集线器网络;禁止所述绑定实例;以及创建离散实例,其中所述离散实例包括离散锁定内容数据、离散许可证和离散许可授权数据。
[0020] 在另一实现中,一种内容的离散实例包括:锁定内容数据;用于对所述锁定内容数据解密的密钥;许可证;及许可授权数据;其中所述离散实例存储在为可读和可写存储媒体的顺从性(compliant)媒体上,使用内容加密技术将所述锁定内容数据加密,并使用不同于所述内容加密技术的集线器网络加密技术将所述密钥加密。
[0021] 在另一实现中,一种顺从性媒体产品至少存储:离散数据集,其包括:锁定内容数据、用于解密所述锁定内容数据的密钥、许可证和许可授权数据;其中使用内容加密技术将所述锁定内容数据加密,使用不同于所述内容加密技术的集线器网络加密技术将所述密钥加密,所述顺从性媒体是可读和可写的存储媒体,使用顺从性加密技术将至少一部分所述离散数据集加密,以使顺从性设备存储用于将所述加密的至少一部分所述离散数据集解密的顺从性密钥。
[0022] 在另一实现中,内容的绑定实例包括:存储在是集线器网络成员的服务器上的源锁定内容数据;存储在所述服务器上用于解密所述源锁定内容数据的源密钥;存储在所述服务器上的根许可证;以及存储在所述服务器上的许可授权数据;其中所述根许可证绑定到所述集线器网络,使用内容加密技术将所述锁定内容数据加密,并使用不同于所述内容加密技术的集线器网络加密技术将所述源密钥加密。
[0023] 在一个实现中,一种呈现(present)内容数据的方法包括:在集线器网络中的客户机上接收指示锁定内容数据的当前请求;检查对应于所述锁定内容数据的许可证,以确定所述许可证是否允许所述客户机呈现所述锁定内容数据;并通过连接到所述客户机的呈现部件来呈现所述锁定内容数据;其中所述锁定内容数据的所述许可证绑定到所述集线器网络。
[0024] 在另一实现中,呈现内容数据的方法包括:在集线器网络中的服务器上接收指示锁定内容数据和所述集线器网络中客户机的当前请求;检查对应于所述锁定内容数据的许可证,以确定所述许可证是否允许所述服务器通过所述客户机呈现所述锁定内容数据;并通过将数据流到所述客户机来呈现所述锁定内容数据;其中所述锁定内容数据的所述许可证绑定到所述集线器网络。
[0025] 在另一实现中,一种拷贝内容数据的方法包括:在集线器网络中接收指示锁定内容数据的拷贝请求;以及拷贝所述锁定内容数据,以产生所述锁定内容数据的拷贝;其中所述锁定内容数据具有绑定到所述集线器网络的相应许可证。
[0026] 在另一实现中,一种分配内容数据的方法包括:在接收设备接收来自集线器网络中提供设备的锁定内容数据的拷贝;请求锁定内容数据所述拷贝的新许可证;并接收所述新许可证。
[0027] 在另一实现中,分配内容数据的方法包括:在集线器网络中的服务器上接收来自一个设备的锁定内容数据拷贝的新许可证的请求;检查存储在所述服务器上的根许可证,以确定所述根许可证是否允许所述服务器提供锁定内容数据所述拷贝的新许可证;并根据所述根许可证创建所述新许可证;将所述新许可证发送到所述设备。
[0028] 在一个实现中,一种在集线器网络中获取许可证的方法包括:将许可证请求从客户机发送到服务器;将连接确认从所述客户机发送到所述服务器;并在所述客户机接收来自所述服务器的许可证数据;其中所述客户机和所述服务器连接在集线器网络中,所述许可证请求标识存储在所述客户机上的子拷贝版本,所述子拷贝版本包括子拷贝锁定内容数据,且所述许可证数据绑定到所述集线器网络。
[0029] 在另一实现中,一种在集线器网络中提供许可证的方法包括:在服务器端接收来自客户机的许可证请求;将连接确认请求从所述服务器发送到所述客户机;并将许可证数据从所述服务器发送到所述客户机;其中所述客户机和所述服务器连接在集线器网络中,所述许可证请求标识存储在所述客户机上的子拷贝版本,并且所述许可证数据绑定到所述集线器网络。
[0030] 在另一实现中,在集线器网络中获取许可证的方法包括:通过中间设备将许可证请求从客户机发送到服务器;通过所述中间设备将连接确认从所述客户机发送到所述服务器;并通过所述中间设备在所述客户机接收来自所述服务器的许可证数据;其中所述客户机和所述服务器不连接在集线器网络中,所述许可证请求标识存储在所述客户机上的子拷贝版本,所述子拷贝版本包括子拷贝锁定内容数据,并且所述许可证数据绑定到所述集线器网络。
[0031] 在另一实现中,在集线器网络中提供许可证的方法包括:通过中间设备在服务器端接收来自客户机的许可证请求;通过所述中间设备将连接确认请求从所述服务器发送到所述客户机;并通过所述中间设备将许可证数据从所述服务器发送到所述客户机;其中所述客户机和所述服务器不连接在集线器网络中,所述许可证请求标识存储在所述客户机上的子拷贝版本,并且所述许可证数据绑定到所述集线器网络。
[0032] 在另一实现中,一种在集线器网络中刷新许可证的方法包括:将刷新请求从客户机发送到服务器;将连接确认从所述客户机发送到所述服务器;在所述客户机端接收来自所述服务器的更新的许可证数据;并根据所述更新的许可证数据更新存储在所述客户机上的子拷贝许可证;其中所述客户机和所述服务器连接在集线器网络中,所述刷新请求标识存储在所述客户机上的子拷贝版本,所述子拷贝版本包括子拷贝锁定内容数据,所述子拷贝许可证对应于所述子拷贝版本,并且所述子拷贝许可证绑定到所述集线器网络。
[0033] 在另一实现中,在集线器网络中刷新许可证的方法包括:在服务器端接收来自客户机的刷新请求;将连接确认请求从所述服务器发送到所述客户机;并将更新的许可证数据从所述服务器发送到所述客户机;其中所述客户机和所述服务器连接在集线器网络中,所述刷新请求标识存储在所述客户机上的子拷贝版本,所述更新的许可证数据用于更新对应于所述子拷贝版本的子拷贝许可证,并且所述子拷贝许可证绑定到所述集线器网络。

附图说明

[0034] 图1-16示出媒体网络环境一个实现的配置及操作的一个示例;
[0035] 图17示出了媒体网络环境的一个实现的表示;
[0036] 图18示出了将设备作为成员设备添加到集线器网络的一个实现的流程图;
[0037] 图19示出了将设备作为成员设备从集线器网络移除的一个实现的流程图;
[0038] 图20示出了从集线器网络断开成员设备的一个实现的流程图;
[0039] 图21示出了将成员设备重新连接到集线器网络的一个实现的流程图;
[0040] 图22示出了内容的离散实例的一个实现的表示;
[0041] 图23示出了绑定实例和子拷贝的一个实现的表示;
[0042] 图24示出将离散实例绑定到集线器网络的一个实现的流程图;
[0043] 图25示出了从集线器网络释放绑定实例的一个实现的流程图;
[0044] 图26示出了更新和刷新许可证的一个实现的流程图;
[0045] 图27-29示出从集线器网络断开设备的示例和截止周期的操作;
[0046] 图30示出了在客户机设备上呈现存储在子拷贝中的内容数据的客户机设备的一个实现的流程图;
[0047] 图31示出了将内容数据从服务器上的绑定实例流到客户机的一个实现的流程图;
[0048] 图32示出了创建子拷贝的一个实现的流程图。

具体实施方式

[0049] 本发明提供了用于管理网络环境中设备和内容的方法和装置。在一个实现中,在定义客户机-服务器关系的多个集线器网络的媒体网络环境中,将设备的集合互相连接。在集线器网络中,服务器通过将内容流到客户机、或将拷贝发送到客户机来将给客户机提供对内容的访问。服务器和客户机一起工作,以管理集线器网络中的成员资格、与集线器网络的连接和断开、集线器网络中的内容分配以及集线器网络中的内容状态。
[0050] 一般而言,本文中使用具有如下含义的以下术语。“内容”指的是媒体条目的音频和/或视频,诸如电影或歌曲。一个内容条目是一个特定媒体条目,诸如一部电影。“内容数据”指的是表示内容条目的数据。“实例”是包含内容条目的内容数据的逻辑数据集。相应地,例如移动和播放(再现)内容实例的内容数据。“播放”和“呈现”指的是再现和显示内容实例的内容数据,或根据内容类型呈现内容数据(例如,呈现电影的音频和视频或呈现歌曲的音频)。类似地,“呈现一个实例”指的是再现和显示实例的内容数据。“许可证”指的是存储使用内容数据的允许的数据,诸如是否允许设备播放或拷贝内容数据。在此描述的能或不能利用实例或内容数据指的是,由有关实例或内容数据的许可证在适当时设置的允许。
[0051] 说明性示例
[0052] 图1-16示出媒体网络环境一个实现的配置及操作的一个示例。
[0053] 在图1中,用户吉姆已建立了家庭媒体网络环境100,该网络环境包括两台设备:连接到电视110的PVR(个人视频录像机)105。PVR 105是媒体网络顺从性设备,这意味着PVR 105根据为是集线器网络成员的设备定义的过程来操作。PVR 105包括存储内容拷贝(例如,作为存储在硬盘上的电子文件)的存储器,并且是服务器设备。作为服务器设备,PVR 105是集线器网络的服务器,并可将内容提供给是集线器网络中成员的客户机设备。作为服务器,PVR 105还定义本地环境(未示出)。在该示例中,PVR 105的本地环境定义为相对于PVR 105位置的物理区域(例如,由往返包定时或GPS信息确定的)。PVR 105还是客户机设备。作为客户机设备,PVR 105可直接或通过连接的终端设备(诸如通过连接的电视110)再现内容。作为客户机和服务器设备,PVR 105作为集线器网络的服务器和集线器网络中的客户机是集线器网络的成员。在图1中,用“HN1”标记PVR105,来指示PVR 105是集线器网络1(HN1)的客户机设备。还用“HN1*”标记PVR 105,来指示PVR 105是HN1中的服务器。
[0054] 电视110不是媒体网络顺从性设备,因此不能成为集线器网络的成员。然而,非顺从性设备可以是集线器网路的终端设备,接收用于呈现的数据(例如,显示电影的视频以及输出音频),无需存储内容的数据(除瞬变之外)。相应地,PVR 105通过将用于呈现的内容数据输出到连接的电视110,来再现内容。
[0055] 作为服务器设备,PVR 105最初建立集线器网路HN1。PVR 105检查连接到PVR 105的其它顺从性设备。在将设备作为成员添加到集线器网络HN1之前,PVR 105认证设备,确定设备的身份,并授权认证的设备,确认设备是顺从性设备。如果PVR 105没有认证和授权设备,则PVR 105不将该设备添加到集线器网络HN1。在图1中,PVR105是唯一的顺从性设备。PVR 105将其自身作为服务器和客户机添加到集线器网络。电视110不是顺从性设备,因此PVR 105不将电视110添加为成员。
[0056] 在图2中,吉姆已购买了电影A和电影B,以及录制的电视节目C。在该例中,吉姆购买了作为从连接到PVR 105的网络115下载的电子文件的电影A和B。吉姆将节目C作为来自PVR 105的集成接收机接收的广播的电子文件来录制。
[0057] 如下所述,服从集线器网络操作的实例处于下面两种专用状态中的一种:离散或绑定。离散实例独立于任何集线器网络,并可通过任何顺从性设备(根据离散实例的许可证)来播放或呈现。然而,顺从性设备不能产生离散实例的可用拷贝。离散实例包括锁定内容数据和离散许可证。离散实例的锁定内容数据称为锁定内容数据的“离散版本”。通过防止未经授权的访问(诸如通过加密),来锁定锁定内容数据。绑定实例绑定到一个集线器网络。绑定实例是由在集线器网络服务器上和集线器网络的0个或多个客户机上存储的锁定内容数据及相应许可证所表示的一个逻辑实例。服务器存储的锁定内容数据是集线器网络中内容数据拷贝的源,且是“源版本”。源版本内容数据的拷贝存储在客户机上,且是“子拷贝版本”(虽然离散版本、源版本和/或任何子拷贝版本中的一些或全部数据可以是相同的)。绑定实例仅可通过是集线器网络成员的兼容的顺从性设备来播放或呈现。集线器网络的成员可产生绑定实例的内容数据的子拷贝。
[0058] 服务器设备可将离散实例的状态从离散变为绑定,禁止离散实例,并启动绑定实例。禁止的实例再现为不可用(例如,通过删除或加密实例的内容数据,或通过禁止实例的许可证)。服务器设备还可将绑定实例的状态从绑定变为离散,禁止绑定实例(包括任何相应的子拷贝),并启动离散实例。此外,集线器网络的服务器管理绑定实例的根职责(responsibility)。根职责包括发布和管理集线器网络中绑定实例内容数据的许可证。相应地,服务器拥有根许可证,根许可证定义呈现绑定实例和管理集线器网络中绑定实例的内容数据和许可证的允许。当创建新的子拷贝时,还从根许可证创建子拷贝的许可证。不服从集线器网络操作的内容实例是非顺从性实例。顺从性设备将根据可能与该实例相关联的任何识别拷贝控制信息来播放或拷贝非顺从性实例。
[0059] 在图2-16中,字母标号指示内容实例的锁定内容数据的版本。根据字母的变化来指示锁定内容数据的版本以及对应于锁定内容数据的实例的状态。下划线指示内容的离散版本。例如,电影A的离散版本用“A”指示。没有下划线的大写字母指示存储在服务器上的锁定内容数据的源版本。例如,电影A的源版本用“A”指示。小写字母指示锁定内容数据的子拷贝版本。例如,电影A的子拷贝版本由“a”指示。这些版本还具有相应的许可证(图2-16中未示出):离散版本具有离散许可证,源版本具有根许可证,并且子拷贝版本具有子拷贝许可证。
[0060] 返回图2,吉姆通过将离散版本A和B存储在PVR 105中来经PVR 105将电影A和B引入集线器网络HN1。PVR 105还存储节目C的离散版本C。
[0061] 在图3中,吉姆将离散实例绑定到集线器网络HN1。PVR 105将离散版本A、B和C的离散实例的状态变为绑定实例,并因此创建源版本A、B和C。PVR 105禁止或删除离散版本A、B和C。
[0062] 在图4中,吉姆购买了包含顺从性设备的汽车120。汽车120是服务器设备(例如包括存储器)和客户机设备(例如包括音频和视频系统)。汽车120建立了第二集线器网络HN2,其中汽车120作为服务器(由“HN2*”指示)并作为成员客户机(由“HN2”指示)。汽车120基于距汽车120的相对距离(例如,汽车120包括确定往返包时间或提供定义汽车
120位置的GPS信息的部件)来定义第二本地环境(未示出)。在图4中,汽车120和PVR
105物理上彼此靠近,并因此汽车120的本地环境与PVR 105的本地环境基本同时扩张。
[0063] 在图5中,吉姆连接了两个集线器网络HN1和HN2。PVR 105和汽车120各包括无线网络能力。吉姆使PVR 105和汽车120建立无线连接。在PVR 105和汽车120检测到彼此时,它们的每一个都认证并授权另一个添加为成员设备。相应地,PVR 105将汽车120作为成员添加到集线器网络HN1(由添加到汽车120的“HN1”标号指示),并且汽车120将PRV105作为成员添加到集线器网络HN2(由添加到PVR 105的“HN2”标号指示)。
[0064] 在图6中,吉姆将更多内容引入第二集线器网络HN2。吉姆购买了存储在顺从性媒体产品(诸如顺从性光盘)上的电影X的顺从性实例。顺从性媒体根据为可纳入(使绑定)集线器网络并从集线器网络释放的内容定义的过程来操作。具体地说,顺从性媒体允许根据实例状态的改变(例如在离散和绑定之间改变时)来禁止和激活存储在顺从性媒体上的实例。此外,配置顺从性媒体,以使设备在没有授权的情况下不会创建存储在顺从性媒体上数据的完全逐位拷贝。由于存储在顺从性光盘上的实例是顺从性的,且还没绑定到任何集线器网络,因此该实例是离散实例。吉姆将顺从性光盘插入到汽车120的服务器设备中,并使汽车120将电影X的离散实例绑定到集线器网络HN2。汽车120创建电影X的绑定实例,并将锁定内容数据的源版本和根许可证作为绑定实例的一部分存储在汽车120的存储器中,并禁止顺从性光盘上的离散实例(例如,通过将数据存储到光盘)。在已禁止了顺从性光盘上的离散实例后,不能在另一设备上播放或呈现禁止实例的锁定内容数据的离散版本(如下所述,在另一实现中,当将离散实例绑定到集线器网络时,仍可通过离散实例绑定到的集线器网络中的成员设备来播放当时禁止的离散实例)。在图6中,电影X的源版本由添加到汽车120的“X”标号指示。类似地,吉姆从网络115购买并下载了歌曲Y的顺从性实例,并让汽车将该实例绑定到集线器网络HN2。在图6中,歌曲Y的源版本由添加到汽车120的“Y”标号指示。
[0065] 在图7中,吉姆通过集线器网络访问内容。吉姆决定通过PVR 105和连接的电视110观看电影X。作为集线器网络HN2的成员设备,PVR 105可访问绑定到集线器网络HN2的电影X。PVR 105请求电影X的拷贝,并且作为集线器网络HN2服务器的汽车120将电影X的子拷贝版本提供给PVR 105。PVR 105存储电影X的子拷贝版本(由添加到PVR 105的“x”标号指示),并通过连接的电视110呈现电影X。类似地,吉姆还决定通过PVR 105听歌曲Y,并因此PVR 105存储歌曲Y的子拷贝版本(由添加到PVR 105的标号“y”指示)。
[0066] 吉姆随后决定通过汽车120观看电影A。作为集线器网络HN1服务器的PVR 105将电影A的子拷贝版本提供给汽车120。汽车120存储电影A的子拷贝版本(由添加到汽车120的标号“a”指示),并呈现电影A。
[0067] 在图8中,吉姆购买了是顺从性设备的电视125。电视125是客户机设备而非服务器设备。相应地,电视125并不形成另一集线器网络。
[0068] 在图9中,吉姆将电视125连接到集线器网络HN1和HN2。电视125支持有线连接和无线连接。吉姆使PVR 105和电视125建立有线连接,并使汽车120和电视125建立无线连接。在PVR 105检测到电视125时,PVR 105认证并授权电视125添加为成员设备。相应地,PVR 105将电视125作为成员添加到集线器网络HN1(由添加到电视125的“HN1”标号指示)。类似地,汽车120认证、授权并将电视125作为成员添加到集线器网络HN2(由添加到电视125的“HN2”标号指示)。
[0069] 在图10中,吉姆通过电视125访问内容。吉姆决定通过电视125观看录制的节目C。作为集线器网络HN1的成员设备,电视125可访问绑定到集线器网络HN1的节目C。电视125请求PVR 105将节目C流到电视125。PVR 105使用源版本C将节目C流到电视125上(由PVR 105和电视125之间标有“c”的虚线指示)。电视125并不存储节目C的拷贝(除了在呈现流节目过程中瞬变的以外)。类似地,吉姆决定通过电视125观看电影X,并因此汽车120使用源版本X将电影X流到电视上(由汽车120和电视125之间标有“x”的虚线指示)。
[0070] 在图11中,吉姆决定从集线器网络HN2释放或解除歌曲Y,以使歌曲Y便携。吉姆请求汽车120创建歌曲Y的离散实例。汽车120禁止歌曲Y的绑定实例,禁止歌曲Y的源版本以及任何子拷贝版本(由从PVR 105移除标号“y”和从汽车120移除标号“Y”来指示)。汽车120创建歌曲Y的离散实例,并将离散版本(由添加到汽车120的标号“Y”指示)存储在顺从性媒体(例如,顺从性硬盘或顺从性可记录盘)上。
[0071] 在图12中,吉姆从集线器网络HN2移除歌曲Y。吉姆将顺从性便携式存储设备130(例如可移动存储卡)连接到汽车120。吉姆将歌曲Y的离散版本从汽车120移到便携式存储器130(由从汽车120移除并添加到便携式存储器130的“Y”标号指示),并将便携式存储器130连接到便携式音乐播放器135。便携式音乐播放器135是顺从性设备,且不是集线器网络的成员,但播放器135仍可播放来自离散版本Y的歌曲Y,因为离散版本Y的离散实例没绑定到集线器网络。
[0072] 在图13中,吉姆决定从集线器网络HN1解除电影B,以将电影B给朋友萨利。吉姆请求汽车120创建电影的离散实例。PVR 105具有源版本B,并因此汽车120将该请求传给PVR 105。PVR 105禁止电影B的绑定实例(由从PVR 105移除标号“B”指示)。PVR 105创建包括锁定内容数据的离散版本B的离散实例,并将离散版本B移到汽车120(由添加到汽车120的标号“B”指示)。
[0073] 在图14中,吉姆将车120开到他朋友萨利家。当吉姆驾车离开他的家时,汽车120离开媒体网络环境100,并进入萨利的媒体网络环境140。在一个实现中,集线器网络的服务器设备监控集线器网络的成员设备,并确定成员设备何时已离开本地环境。如上所述,在该示例中,由物理位置定义PVR 105和汽车120的本地环境。当汽车120离开时,汽车120离开PVR 105的本地网络环境,并且汽车120将汽车120的本地环境远离PVR 105和电视125。作为集线器网络HN1的服务器,PVR 105认识到汽车120已离开本地环境,因为汽车
120不能向PVR 105报告其物理位置,或当汽车120向本地环境100边界之外的PVR 105报告物理位置时。类似地,作为集线器网络HN2的服务器,汽车120认识到PVR 105和电视
125已“离开”汽车120的本地环境(即通过被留下)。
[0074] 当汽车120离开时,汽车120创建集线器网络HN1和HN2中的断开。作为集线器网络HN1中的客户机,汽车120监控通过集线器网络HN1接收的每个子拷贝版本的截止周期。该周期是子拷贝版本的许可证中的机制,在存储子拷贝版本的客户机和管理绑定实例的服务器之间没有连接的情况下,用于控制子拷贝版本可使用多久。在该周期到期时(例如根据客户机中的安全时钟测量的),存储子拷贝版本的断开客户机禁止子拷贝版本。在-15 -15该例中,周期是15天(由汽车120的标号“a ”中的上标“ ”指示)。类似地,作为集线器网络HN2中的客户机,PVR 105监控通过集线器网络HN2接收的子拷贝版本的截止周期-15 -15
(由PVR 105的标号“x ”中的上标“ ”指示)。
[0075] 在萨利的媒体网络环境140中,萨利具有游戏控制台145和连接的电视150。游戏控制台145是顺从性设备,并且既是服务器设备又是客户机设备。电视150不是顺从性设备,且用作终端设备,用于呈现来自游戏控制台145的内容。游戏控制台145定义集线器网络HN3,并用作集线器网络HN3的服务器(由游戏控制台145上的标号“HN3*”指示)和集线器网络HN3中的客户机(由游戏控制台145上的标号“HN3”指示)。作为集线器网络的服务器,游戏控制台145定义本地环境(未示出)。电影L和M以及歌曲N绑定到集线器网络HN3,并且游戏控制台145存储电影L和M的源版本(由游戏控制台145上的标号“L”和“M”指示)以及歌曲N的源版本(由游戏控制台145上的标号“N”指示)。
[0076] 在图15中,第二天,吉姆将汽车120连接到萨利的游戏控制台145,并将电影B的离散实例给了萨利。吉姆和萨利没让汽车120作为成员加入集线器网络HN3,或让游戏控制台145作为成员加入集线器网络HN2。为将电影B的离散实例给萨利,吉姆让汽车120将离散版本从汽车120移到游戏控制台(由从汽车120移除标号“B”来指示)。萨利让游戏控制台145将电影B的离散实例绑定到集线器网络HN3。游戏控制台145禁止电影B的离散实例,并创建电影B的绑定实例,将源版本和根许可证存储在游戏控制台145的存储器中(由添加到游戏控制台145的标号“B”指示)。
[0077] 由于这是第二天,并且汽车120没有重新连接到集线器网络HN1或HN2,汽车120和PVR 105的时钟与子拷贝版本a和x的截止周期的结束仅差1天,因此在该周期到期之-14 -14前剩下不到一天(由变为汽车120上的“a ”和PVR 105上的“x ”的标号指示)。
[0078] 在图16中,吉姆驾驶他的车120回家。当汽车120离开时,汽车120从游戏控制台145断开。当汽车120进入吉姆的媒体网络环境100时,汽车120连接到PVR 105和电视125。汽车120已返回PVR 105的本地环境,并将汽车120的本地环境带回到PVR 105和电视125。当汽车120重新连接到PVR 105时,作为集线器网络HN1的服务器的PVR 105重新设置存储在汽车120上的电影A的子拷贝版本a的截止周期(通过在汽车120上将标号-14“a ”变为“a”指示)。类似地,作为集线器网络HN2的服务器的汽车120重新设置存储在-14
PVR 105上的电影X的子拷贝版本x的截止周期(通过在PVR 105上将标号“x ”变为“x”来指示)。
[0079] 在该例中,吉姆能够获取内容的实例,并将该实例绑定在他的家庭媒体网络环境的集线器网络中。吉姆能够呈现该内容,并在该媒体网络环境内产生拷贝。当吉姆从媒体网络环境中释放内容实例时,移除了这些实例。以这种方式,当在媒体网络环境中绑定内容实例时,吉姆能够在整个媒体网络环境中使用他的内容,并随后在他希望该内容离开媒体网络环境时,移除该内容实例。
[0080] 媒体网络环境的配置和操作
[0081] 图17-33示出了媒体网络环境中集线器网络的配置和操作。
[0082] 网络配置
[0083] 媒体网络环境包括一个或多个集线器网络,每个集线器网络都有各自的本地环境,其中的一些或全部可能重叠或共同扩张。本地环境定义为有限区域,以使顺从性设备可以确定该设备是在本地环境内还是外。例如,可根据物理位置(例如,通过计算将包从服务器传播到客户机的往返时间,或使用来自集成到设备的GPS系统的地理定位数据)定义一个本地环境,而根据网络寻址信息(例如,使用IP地址和/或子网信息)或逻辑区域(例如,使用包所穿过的网关或路由器的数目来评估网络配置)定义另一个本地环境。根据相对于集线器网络的服务器来定义本地环境(例如,以服务器为中心半径为100米的圆)。当服务器状态改变时(例如服务器移动时),本地环境也可改变。如下所述,当顺从性设备处于集线器网络的本地环境时,可加入该集线器网络中,而当该设备离开本地环境时,从该集线器网络中断开该设备(虽然该设备可以一直是成员)。如果设备虽然在离开本地环境之后仍能保持网络连接(例如无线连接),但当该设备在本地环境以外时,仍被视为断开的。
[0084] 媒体网络环境包括一个或多个设备。在一个实现中,设备是整装的软件应用、硬件部件或上述组合。例如,一个计算机系统可包括多个硬件和/或软件设备。媒体网络环境中的各设备是媒体网络顺从性设备(顺从性设备),或不是媒体网络顺从性设备(非顺从性设备)。顺从性设备根据为媒体网络环境和集线器网络定义的规则操作。顺从性设备可以是集线器网络的成员,诸如服务器或客户机设备。非顺从性设备(诸如终端设备)不能是媒体网络环境中的集线器网络的成员。非顺从性设备可与集线器网络相互作用,诸如从集线器网络成员设备接收作为输出数据的内容,如下所述。然而,非顺从性设备不能解密和再现内容的顺从性拷贝。
[0085] 集线器网络包括一个或多个成员设备。集线器网络中的各成员设备是服务器、客户机或两者。例如,成员设备可包括同一物理系统中的服务器和客户机功能性。每个集线器网络都有一个服务器。每个客户机都直接或通过网络连接连接到服务器。以这种方式,集线器网络服从以服务器为中心的集中星型或星型拓扑。多个服务器设备可以是同一集线器网络中的成员,其中一个服务器设备用作集线器网络的服务器,并且附加的服务器设备用作集线器网络服务器的客户机(通过它们的客户机功能性)。
[0086] 集线器网络的服务器是集线器网络的焦点,并管理集线器网络控制的许多方面。服务器管理内容绑定实例的根职责,并将内容提供给集线器网络中的客户机成员。服务器存储锁定内容数据的源版本和绑定实例的相应根许可证。服务器将绑定实例的锁定内容数据的子拷贝版本提供给客户机,或将锁定内容数据源版本的数据流到客户机。服务器管理实例、处理许可、管理网络成员资格、监控设备与集线器网络的连接和断开,并执行时间管理。服务器定义集线器网络的本地环境。如下所述,服务器通过将实例状态从离散(集线器网络外部)变为绑定(集线器网络内部)来将内容实例绑定到集线器网络,并且服务器通过将实例状态从绑定变为离散来从集线器网络中释放实例。
[0087] 集线器网络中的客户机播放或呈现来自内容实例的内容数据(例如,通过解密和再现存储在实例锁定数据版本中的内容数据)。客户机设备从服务器接收锁定内容数据的子拷贝版本和绑定实例的子拷贝许可证,或从服务器接收流数据。客户机设备包括存储子拷贝版本(存储客户机设备)的存储器,或不存储子拷贝版本(非存储客户机设备)。客户机设备直接通过集成部件或通过连接的终端设备来呈现内容数据。在另一实现中,客户机设备还可将内容数据从子拷贝版本流到是同一集线器网络成员的另一客户机设备。
[0088] 终端设备用于呈现内容,并且不是集线器网络的成员。终端设备连接到成员设备,并接收用于呈现的数据,诸如输出视频和音频数据。终端设备也可提供除媒体网络环境之外的服务的其它功能。
[0089] 当媒体网络环境包括两个或两个以上集线器网络时,集线器网络中的一些或全部可能重叠。当其中两个集线器网络都包括相同设备时,这两个集线器网络重叠。属于两个集线器网络的设备跨越这两个集线器网络,并且是跨越设备。跨越设备存储(或能存储)绑定到每个集线器网络的实例的内容数据。相应地,跨越设备可呈现绑定到多个各自集线器网络的内容(绑定实例仅绑定到一个集线器网络)。然而,在一个实现中,跨越设备仅在同一本地环境中跨越多个集线器网络。在此情况下,如果设备成为不同本地环境中集线器网络的成员,则该设备将仅呈现来自该设备最近连接到的集线器网络的内容。在另一实现中,跨越设备可跨越不同本地环境中的集线器网络,并播放来自任何跨越设备的集线器网络的内容(服从许可证要求,诸如如下所述的刷新)。
[0090] 重叠的集线器网络提供了管理内容的使用和拷贝的灵活环境。每个服务器管理服务器的集线器网络中的设备和内容,并且每个客户机遵循集线器网络的规则而操作。结果,用户可以便利的方式通过媒体网络环境呈现、移动和拷贝内容数据,同时控制内容数据的呈现、拷贝和移动,以反映(例如由内容所有者)为许可授权设置的许可准则。此外,各集线器网络的管理以集线器网络的服务器为基础。
[0091] 图17示出了媒体网络环境1700的一个实现的表示。媒体网络环境包括两个重叠集线器网络HN1和HN2,这两个集线器网络具有两个各自的且基本同时扩张的本地环境(未示出)。
[0092] 媒体网络环境1700包括若干设备:连接到终端设备1710的服务器/客户机设备1705、服务器设备1715、存储客户机设备1720、非存储客户机设备1725、存储设备1730和播放器设备1735。服务器/客户机设备1705、服务器设备1715、存储客户机设备1720、非存储客户机设备1725和存储设备1730是顺从性设备。终端设备1710和播放器设备1735是非顺从性设备。
[0093] 服务器/客户机设备1705和服务器设备1715是各自集线器网络的服务器。服务器/客户机设备1705用作服务器和客户机。服务器设备1715用作服务器,但不用作客户机(例如,不解密和再现内容)。
[0094] 终端设备1710用于呈现来自连接设备(例如电视)的内容数据。终端设备1710不存储绑定到集线器网络的内容数据。
[0095] 存储客户机设备1720和非存储客户机设备1725是客户机设备。作为客户机设备,存储客户机设备1720和非存储客户机设备1725通过集成的媒体部件(例如音频和视频输出)来呈现内容数据。如上所述,服务器/客户机设备1705也是客户机设备,但通过连接的终端设备1710来呈现内容数据。存储客户机设备1720包括存储内容数据的子拷贝版本的存储器。存储客户机1720呈现存储在存储客户机1720中的子拷贝版本的内容数据,或从服务器(例如,服务器/客户机设备1705)作为流数据接收的内容数据。非存储客户机1725不存储呈现的内容数据的子拷贝版本。非存储客户机1725呈现从服务器(例如服务器设备1715)作为流数据接收的内容数据。在另一实现中,所有客户机设备都是非存储客户机设备。在此情况下,如果设备具有绑定数据内容的存储器,则该设备是服务器或服务器/客户机设备。
[0096] 服务器/客户机设备1705是集线器网络HN1的服务器,由服务器/客户机1705上的“HN1*”标号指示。服务器/客户机设备1705和存储客户机设备1720是集线器网络HN1中的客户机,由“HN1”标号指示。终端设备1710连接到服务器/客户机设备1705,用于呈现来自服务器/客户机设备1705的内容数据。终端设备1710不是集线器网络HN1的成员。服务器设备1715是集线器网络HN2的服务器,由服务器设备1715上的“HN2*”标号指示。服务器/客户机设备1705、存储客户机设备1720和非存储客户机设备1725是集线器网络HN2中的客户机,由“HN2”标号指示。非存储客户机设备1725不存储内容数据的子拷贝版本,而是接收来自服务器设备1715的流数据,由从服务器设备1715到非存储客户机设备1725的虚线指示。
[0097] 两个集线器网络HN1和HN2是重叠的,这定义了重叠或覆盖的集中星型结构。集线器网络HN1包括服务器/客户机设备1705和存储客户机设备1720。集线器网络HN2包括服务器/客户机设备1705、服务器设备1715、存储客户机设备1720和非存储客户机设备1725。服务器/客户机设备1705和存储客户机设备1720是集线器网络HN1和HN2的成员,并因此是跨越设备。
[0098] 存储设备1730是顺从性媒体设备,且连接的播放器设备1735是非顺从性设备。存储设备1730和播放器设备1735不是集线器网络HN1和HN2的成员。存储设备1730是包括顺从性媒体(诸如顺从性闪存卡)的便携式存储设备。播放器设备1735是便携式媒体播放器设备,诸如MP3播放器。在其它环境中,不是便携式的非顺从性设备可连接到一个或多个顺从性设备。
[0099] 存储设备1730连接到服务器设备1715(例如插入到端口),并因此可与服务器设备1715交换数据。相应地,存储设备1730和服务器设备1715可交换离散实例。存储设备1730连接到播放器设备1735,且播放器设备1735可呈现存储在存储设备1730中内容数据的非顺从性拷贝。由于播放器设备1735是非顺从性设备,因此播放器设备1735不能播放或呈现存储在存储设备1730上的顺从性内容数据。存储设备1730不能从存储在存储设备
1730上的离散实例产生可用的拷贝。
[0100] 集线器网络成员资格
[0101] 服务器管理集线器网络中设备的成员资格。服务器将客户机作为集线器网络的成员添加和移除。服务器只将许可证授予成员设备。一旦用户批准,服务器就在认证客户机设备是顺从性设备之后将客户机设备添加为成员。如果服务器也是客户机设备,则最初服务器自动将其自身添加为客户机。在一个实现中,服务器也视为成员。在另一实现中,只有客户机是成员。一旦添加为成员,设备就是成员,直到服务器将该设备作为成员移除为止。在用户请求时,或当满足撤消成员资格的条件时,服务器将客户机设备作为成员移除。
[0102] 图18示出了将设备作为成员设备添加到集线器网络的一个实现的流程图1800,诸如将存储客户机1720添加到图17中的集线器网络HN1。最初,客户机设备连接到集线器网络(块1805)。客户机可通过有线或无线连接直接连接到服务器,或诸如可通过中介网络设备来间接连接到服务器。服务器不会将未连接的设备添加为成员(即使参见以下所述使用中间设备添加未连接设备的备选实现)。
[0103] 服务器检测连接的客户机设备(块1810)。顺从性设备将消息或连接通知发送到集线器网络上的设备,该消息或连接通知指示该设备现在连接到集线器网络。在另一实现中,服务器为新客户机周期性地轮询连接的设备。
[0104] 服务器认证检测的客户机设备(块1815)。服务器发送来自客户机设备的信息的顺从性确认请求,以确定该客户机设备是否是顺从性设备。例如,服务器发送为顺从性设备加密的确认请求。如果客户机设备没有正确响应,或服务器确定该客户机设备不是顺从性设备,则认证失败,并且该服务器不会将客户机设备作为成员添加到集线器网络。
[0105] 在确认客户机设备是顺从性设备之后,服务器发送来自客户机设备标识该客户机设备的信息的标识请求。服务器具有认证客户机设备所需的最小标识信息集,诸如MAC地址(媒体访问控制地址)。在一个实现中,顺从性设备具有集线器网络的安全且唯一的设备标识符。如果客户机设备不响应或不提供适当的信息,则认证失败,并且服务器不会将客户机设备作为成员添加到集线器网络。如果服务器认证客户机设备,则服务器检查成员设备列表,以查看认证的客户机设备是否已在成员设备列表中。如果是,则服务器不需要将客户机设备添加为成员,并通知用户该设备已重新连接。服务器和客户机根据以下参考图21(讨论了成员设备的重新连接)所述的进行。在一个实现中,服务器将认证的客户机设备添加到服务器集线器网络的认证连接设备列表中。
[0106] 在成功认证客户机设备之后,服务器从用户接收添加客户机设备的添加请求(块1820)。服务器等待继续添加客户机设备,直到服务器从用户接收到添加特定客户机设备的肯定请求为止。在另一实现中,在检测到设备时,服务器请求来自用户的添加认证设备的批准或确认,而不是等待来自用户的请求。在另一实现中,服务器等待认证客户机设备,直到接收到添加客户机的请求或批准后为止。
[0107] 在接收到添加客户机设备的请求之后,服务器授权客户机设备(块1825)。在一个实现中,客户机必须在要添加的集线器网络的本地环境中。服务器发送来自客户机对信息的本地环境确认请求,以确定该客户机设备是否在集线器网络的本地环境中。在一个实现中,服务器发送测试消息,并等待来自客户机的响应(例如强制回应客户机)。基于发送测试消息和接收响应之间的时间量,服务器确定客户机是否在本地环境中(例如,低于阈值的往返时间指示客户机在本地环境内)。在另一实现中,服务器将本地环境信息发送到客户机设备,且客户机设备确定该客户机设备是否在本地环境中。如果服务器没确定客户机设备在集线器网络的本地环境中,则认证失败,并且服务器不会将客户机设备作为成员添加到集线器网络。
[0108] 在一个实现中,在授权客户机设备之前,服务器还确认客户机设备不在服务器的撤消列表上。如下所述,撤销列表指示已撤消授权的设备。在一个实现中,服务器将授权的客户机设备添加到授权设备列表中。
[0109] 在成功授权客户机设备之后,服务器确认集线器网络中成员设备的数量低于成员设备极限(块1830)。服务器存储设备极限,该设备极限指示服务器将作为成员添加到集线器网络的成员设备的最大数量(诸如20)。服务器还保存设备计数,对于添加为成员的每个设备,该设备计数都增加。如果设备计数已达到设备极限,则服务器不会将客户机设备作为成员添加到集线器网络。在备选实现中,服务器不保存设备计数或设备极限,并跳过块1830。在另一实现中,可通过来自验证的外部授权机构的请求来修改设备极限。
[0110] 如果设备计数低于设备极限,则服务器将客户机设备添加为集线器网络的成员和客户机(块1835)。服务器将添加确认消息发送给添加的客户机。服务器还将设备计数加1。在一个实现中,服务器将客户机设备添加到成员列表和客户机列表(或同一列表)。连接设备、认证设备、授权设备、成员设备、客户机设备和撤消设备列表中的一些或全部可被集成、或相关(对照索引)、或省略。
[0111] 在备选实现中,在检测时,服务器自动尝试添加检测的客户机设备,或使用一组规则来确定何时尝试添加连接的客户机设备。在另一实现中,服务器自动尝试认证和授权检测的客户机设备,但直到接收到用户请求或批准之后才将认证和授权的设备添加为成员。
[0112] 在另一实现中,当设备计数已达到设备极限且服务器尝试添加另一设备时,服务器诸如通过外部网络连接来联系设备注册服务器。设备注册服务器指示是否将客户机设备添加到集线器网络。设备注册服务器保存集线器网络及其成员设备的信息。设备注册服务器可使用各种标准来确定是否允许添加客户机设备。在一个实现中,设备注册服务器将阈值与客户机作为成员添加到的集线器网络的数量相比较。在另一实现中,设备注册服务器将已添加到集线器网络的设备数量与第二设备极限相比较,允许在设备计数低于第二设备极限的情况下添加客户机设备。在此情况下,服务器存储的第一设备极限用作在没有外部注册的情况下添加设备的极限,而第二设备极限用作添加设备的最大值。在另一实现中,在添加设备之前,服务器总是与设备注册服务器协商(例如,好像第一设备极限是0)。
[0113] 在另一实现中,未连接的设备或本地环境以外的设备可添加为成员。在此情况下,中间设备用作成员资格的“导管(conduit)”。服务器和潜在成员客户机不连接,或客户机不在服务器的本地环境中。中间设备连接到服务器和客户机(例如直接、间接或在不同时间,诸如当中间设备是在服务器和客户机之间移动的便携式设备时)。中间设备从集线器网络服务器请求允许将客户机添加到集线器网络。附加过程的工作类似于上述过程,但中间设备在服务器和客户机之间传递消息,而不是服务器和客户机直接通信,其中与各个设备的通信发生在相对于该设备的本地环境中。
[0114] 图19示出了将设备作为成员设备从集线器网络移除的一个实现的流程图1900,诸如将存储客户机1720从图17中的集线器网络HN1移除。最初,设备连接到集线器网络,并且是该集线器网络的成员。触发成员客户机设备的移除(块1905)。在一个实现中,以两种方式触发移除:通过接收来自指定客户机设备的用户的移除请求,或通过确定撤消客户机设备的授权的服务器。在服务器接收到标识客户机的撤消通知时,或服务器确定该客户机设备已回避或违反了顺从性成员设备的集线器网络规则(诸如在绑定实例的状态变为离散时不能禁止子拷贝版本),服务器决定撤消该客户机设备。当服务器确定已危及设备安全时,该服务器也撤消设备的授权。
[0115] 对于要移除的客户机设备,服务器禁止绑定到服务器集线器网络的绑定实例子拷贝版本的许可证(块1910)。服务器将禁止请求(其指示要禁止的子拷贝版本)发送给客户机,且该客户机禁止相应许可证。此外,移除的客户机设备将不能接收新的许可证,或刷新绑定到集线器网络(客户机设备从该集线器网络移除)的绑定实例的现有许可证。在一个实现中,一旦客户机已经移除,顺从性客户机设备就自动禁止存储在客户机上的子拷贝版本的所有许可证以及绑定到集线器网络(客户机已从该集线器网络移除)的绑定实例的所有许可证。从一个集线器网络移除客户机并不一定禁止绑定到另一集线器网络的绑定实例的子拷贝版本的许可证。
[0116] 服务器将客户机设备作为集线器网络成员移除(块1915)。服务器从成员设备列表中移除客户机设备,并减少成员设备计数。服务器保存已撤消成员资格设备的撤销列表。当服务器移除撤消的设备时,服务器将该设备添加到服务器的撤消列表中。如果撤销列表中包括该客户机设备,则服务器不会将该客户机设备添加为成员。在一个实现中,当更新撤消列表时,服务器将撤消列表公布给其它设备,诸如集线器网络中的客户机、其它服务器或中央数据库。在另一实现中,服务器更新存储在服务器上的一个或多个根许可证,来指示已经撤消了该客户机。
[0117] 在一个实现中,直到存储在客户机上的子拷贝的所有许可证都已经到期,服务器才将断开的客户机作为成员移除。如下所述,当断开设备时,来自断开的集线器网络的许可证将最后到期。服务器等待完成断开设备的移除,直到所有那些许可证到期为止。
[0118] 设备断开和重新连接
[0119] 当设备进入集线器网络的本地环境时,该设备可连接到该集线器网络。当设备离开集线器网络的本地环境时,该设备从该集线器网络中断开。当设备返回该本地环境时,该设备可重新连接到该集线器网络。如上所述,当顺从性非成员连接或重新连接到集线器网络时,在接收到来自用户的请求或批准之后,服务器继续尝试添加新的设备。
[0120] 图20示出了从集线器网络断开成员设备的一个实现的流程图2000。最初,连接的设备变为断开(块2005)。可以各种方式断开设备。当设备离开集线器网络的本地环境时,该设备从该集线器网络断开。当设备和集线器网络之间的物理连接(无线或有线)失效时,该设备断开。例如,当服务器和客户机不再能交换数据包时,客户机和服务器断开。在一个实现中,服务器确定在需要时(例如,在基于连接的客户机操作之前)是否连接客户机。在另一实现中,服务器周期性地为连接轮询客户机,并保存连接的设备列表,并且客户机还周期性地轮询服务器,并确认何时断开客户机。在另一实现中,当用户肯定地请求断开设备时,断开该设备。
[0121] 由于相对于服务器位置(例如在服务器的100米内)定义本地环境,因此服务器不会离开本地环境,这是因为当服务器物理上移动时,服务器带着本地环境。然而,当服务器移动时,作为服务器移动的结果,集线器网络的一个或多个客户机可能不移动,并因此可能“离开”该集线器网络的本地环境。在此情况下,由于留下的客户机在本地环境的以外,因此从集线器网络断开。
[0122] 客户机检查绑定到集线器网络的绑定实例的子拷贝版本的任何许可证的截止周期(块2010)。如下所述,子拷贝版本的许可证包括截止周期。当客户机接收到许可证时,该客户机基于许可证的截止周期设置截止时间。例如,对于截止周期为15天的许可证,客户将截止时间设为从客户机接收到许可证时起的15天。客户机使用安全时钟监控到截止时间还剩多长时间,以及何时已达到截止时间。客户机通过请求来自服务器的刷新许可证来周期性地刷新许可证,并且当接收到刷新许可证时,重新设置截止周期和时间。断开的客户设备不能刷新许可证,因为客户机没连接到服务器。虽然客户机不能刷新许可证,但截止时间不改变,因此到达截止时间的时间量继续减少。当达到截止时间时,截止周期已到期,并且客户机禁止许可证。当客户机又能刷新许可证时,客户机启动许可证,并重新设置截止时间。由于客户机从许可证的集线器网络断开了,所以客户机可能不能刷新一个许可证,但由于客户机仍连接到对应于第二许可证的不同集线器网络,所以能刷新第二许可证。
[0123] 如果任何截止周期都已到期,则客户机禁止具有这些截止周期的许可证(块2015)。客户机禁止许可证,禁止相应的子拷贝版本。在另一实现中,客户机以另一方式禁止子拷贝版本,如下所述。
[0124] 客户机周期性地检查,以查看客户机是否已重新连接到集线器网络(块2020)。在一个实现中,当请求刷新的许可证时,客户机同时检查重新连接。在一些配置中,诸如对于使用有线连接的一个实现,由于客户机迅速接收指示重新连接的信号,因此该客户机不必周期性地检查重新连接,并因此可跳过块2020。当客户机重新连接到集线器网络时,该客户机遵循图21中所示的过程。
[0125] 图21示出了将成员设备重新连接到集线器网络的一个实现的流程图2100。最初,该设备是已从集线器网络断开的成员设备。然后该设备重新连接到集线器网络(块2105)。当设备在集线器网络的本地环境中、并且恢复或建立了设备和集线器网络之间的物理连接时,可重新连接该设备。在一个实现中,客户机周期性地轮询服务器,并确认何时重新连接该客户机。在一个实现中,直到用户请求这么做时,设备才重新连接。
[0126] 服务器检测集线器网络中的重新连接的设备(块2110)。在一个实现中,客户机将重新连接通知发送给服务器。如上面参考图18的块1810所描述的,在另一实现中,服务器为新连接或重新连接的设备周期性地轮询集线器网络。
[0127] 服务器认证检测的设备,并检查重新连接的设备是否是集线器网络的成员客户机(块2115)。如上面参考图18的块1815所描述的,服务器认证连接的设备,以确定设备身份。服务器保存成员设备列表,并因此能够确认新连接的设备已是集线器网络的成员,并不需要再次添加。在一个实现中,服务器确认重新连接的设备在集线器网络的本地环境中。在一个实现中,服务器还确认重新连接的设备不在撤消列表上。
[0128] 在将设备认证为成员设备之后,服务器刷新客户机的许可证(块2120)。对于绑定到服务器的集线器网络的绑定实例,服务器刷新存储在客户机上的内容数据的子拷贝版本的许可证。服务器并不刷新绑定到其它集线器网络的绑定实例的子拷贝版本的许可证。备选地,一旦客户机已成功重新连接到集线器网络,该客户机就请求刷新许可证。
[0129] 时间管理
[0130] 服务器管理集线器网络的时间管理。时间管理包括相对时间和绝对时间管理。服务器管理时间,以实施诸如在集线器网络中内容的离散或绑定实例的许可证中基于时间的限制。客户机还在内部管理时间,或根据服务器的时间管理来管理时间。当客户机从许可授权机构接收子拷贝版本的许可证时,在接收许可证之前客户机将时间信息与许可授权同步。服务器和客户机使用管理时间的安全机制。
[0131] 安全
[0132] 在一个实现中,集线器网络设备使用各种操作的安全技术,包括(但不限于):传递数据;发出请求;记录事务历史的事务;提供和禁止许可证;认证、授权、禁止和撤消设备;存储、产生和移动实例、拷贝和密钥;保存实例和拷贝的元数据;以及呈现和流内容。顺从性设备可周期性地更新来自中央授权机构的安全过程,或接收来自用户或自动源的更新。客户机设备在接收许可证之前更新安全机制,包括诸如更新加密密钥、使客户机的时钟和时间信息与服务器同步、交换和更新撤消列表以及更新系统安全数据和工具的机制。在一个实现中,如果服务器已确定危及了密钥,则服务器可撤消该密钥。在此情况下,服务器请求顺从性设备禁止撤销的密钥,以使撤消的密钥不将用于访问安全媒体内容。
[0133] 内容管理
[0134] 媒体网络环境中的设备呈现、拷贝和移动内容实例的内容数据。如上所述,实例包括是诸如音频和/或视频数据的媒体数据的内容数据。如上所述,集线器网络的服务器管理集线器网络中内容的绑定实例的状态。服务器直接改变绑定实例的状态,并使集线器网络中的成员客户机根据这些状态改变采取适当行动。
[0135] 内容的实例是顺从性或非顺从性的。顺从性实例包括编码的数据,以使只有顺从性设备能够解码和呈现内容数据。相应地,非顺从性设备不能呈现来自顺从性实例的内容数据。顺从性设备(服务器)可将顺从性实例绑定到集线器网络,或从集线器网络中释放顺从性实例。
[0136] 根据集线器网络的要求,不对内容的非顺从性实例或拷贝编码,并因此非顺从性设备或顺从性设备可呈现非顺从性实例或拷贝的内容数据(受可存在于实例或拷贝中的其它拷贝控制机制的控制)。顺从性设备不会将非顺从性实例或拷贝绑定到集线器网络,但可以备选形式存储非顺从性内容。在一个实现中,如果非顺从性实例具有顺从性设备识别的、并被授权用在集线器网络中的拷贝控制信息,则该顺从性设备可根据拷贝控制信息来绑定定义根许可证的非顺从性实例。
[0137] 内容状态
[0138] 集线器网络中内容的每个顺从性实例都处于两种互斥状态的其中一种:离散或绑定。内容的离散实例不绑定到任何集线器网络,并可使用顺从性媒体在集线器网络中或集线器网络外从一个设备移到另一设备。顺从性设备不会产生离散实例的拷贝(除在呈现内容数据过程中的瞬变以外)。离散实例可以各种形式,诸如存储在顺从性存储媒体(例如光盘)上的一个或多个电子文件,或存储在顺从性设备的存储器中的一个或多个电子文件(例如,经网络连接通过下载所接收的)。存储内容离散实例的媒体是媒体网络顺从性媒体。顺从性媒体允许服务器按需要修改离散实例,诸如在将内容绑定到集线器网络时禁止离散实例。此外,配置顺从性媒体,以使设备不能创建存储在顺从性媒体上的任何离散实例数据的逐位拷贝。相应地,顺从性媒体是或包括安全读/写存储媒体(例如,具有附加或相关可写存储器的可写光盘或只读媒体)。在一个实现中,可写存储器远离媒体其自身,诸如数据库。顺从性设备不会创建离散实例的拷贝。
[0139] 图22示出了离散实例2205的一个实现的表示。离散实例2205包括锁定或安全内容数据(例如加密的)2210。离散实例的锁定内容数据也称为该离散实例的锁定内容数据的离散版本。锁定内容数据2210是离散实例的媒体内容数据,诸如音频或视频数据(例如歌曲、电视节目、电影)。在备选实现中,锁定内容数据是非媒体数据,诸如可执行软件(例如计算机或视频游戏)。锁定内容数据2210被加密(例如,使用通过公共同级评审发布并验证的一个或多个密码算法)。使用内容加密技术将锁定内容数据2210加密,以使只有顺从性设备可解密锁定内容数据2210。标题信息2215与锁定内容数据相关联。标题信息包括诸如标题标识符、实例标识符(标识具体实例)、编码数据(例如,指示编解码器、分辨率(resolution)以及用于将锁定内容数据编码的编码实体)和许可授权数据的元数据。许可授权数据指示可被访问以获取附加权限或许可证的外部许可授权机构。离散实例的一些实现并不包括许可授权数据(例如,与锁定内容数据一起提供使用任何许可证)。在另一实现中,标题信息2215中的一些或全部被加密,或被包含在锁定内容数据2210中。离散实例2205包括加密数据的安全区2220。使用集线器网络加密技术,对安全区2220的数据加密,以使只有顺从性设备能够将安全区2220的数据解密(例如,使用顺从性设备拥有的密钥)。
安全区2220包括密钥2225、离散许可证2230和撤销列表2235。密钥2225用于解开锁定内容数据2210。在一个示例中,顺从性设备拥有对包括密钥2225的安全区2220(其是使用集线器网络加密术加密的)解密的密钥,并使用密钥2225对锁定内容数据2210(其是使用内容加密术加密的)解密。离散许可证2230拥有特定离散实例2205的锁定内容数据2210的当前许可证。许可证2230定义为特定离散实例2205的锁定内容数据2210定义的允许集,包括在适当时(例如不允许拷贝时)对于离散实例的呈现、拷贝和移动。许可证2230还基于离散实例2205指示可用于绑定实例的许可证类型。在一个实现中,许可证2230包括指示离散实例2205是离散实例的标记。撤消列表2235指示已经撤销了授权的设备。顺从性设备保存其自己的撤消列表。当顺从性设备接收离散实例时,该设备将不在设备撤消列表上的离散实例的撤销列表中的任何设备添加到其撤销列表上。如果在顺从性设备的撤销列表中没列出该设备,则该顺从性设备不会呈现或播放离散实例。如果顺从性服务器的撤销列表中没列出该服务器,则该顺从性服务器不会绑定离散实例。在另一实现中,离散实例不包含撤消列表。在另一实现中,离散实例的部件存储为多个文件。
[0140] 绑定实例绑定到特定集线器网络,并由该集线器网络的服务器管理。绑定实例的数据被加密(至少部分被加密),以使非顺从性设备或绑定集线器外部的设备不能够呈现或播放绑定实例的内容数据。管理绑定实例的服务器具有该绑定实例的根职责。根职责包括颁发和管理绑定实例的锁定内容数据的子拷贝版本的许可证。管理绑定实例的服务器还管理绑定实例锁定内容数据的源版本。服务器使用该源版本创建集线器网络中锁定内容数据的子拷贝版本。指定的服务器是该绑定实例的子拷贝版本的本地许可授权机构。该服务器可从源版本产生子拷贝版本,并将子拷贝版本提供给集线器网络中的客户机。在一个实现中,客户机还可从客户机存储的子拷贝版本中产生子拷贝版本,但接收新子拷贝版本的客户机需要来自集线器网络服务器的许可证,以呈现内容。客户机设备可将子拷贝版本移到集线器网络中的另一设备,或集线器网络外部的设备。接收来自不同集线器网络(例如,设备不是其成员的集线器网络)的子拷贝版本的设备需要诸如从子拷贝版本指示的许可授权机构获得新的许可证。在没有首先将绑定实例的状态改回离散的情况下,顺从性服务器不会将根职责以及由此的绑定实例移到另一顺从性服务器。为了将根职责传到另一服务器,服务器将绑定实例转换为离散实例,并将离散实例移到第二服务器。然后第二服务器将接收的离散实例转换为绑定实例,并因此第二服务器随后具有根职责。在此情况下,绑定实例然后绑定到不同的集线器网络(第二服务器的集线器网络)。在另一实现中,源版本没有存储在集线器网络的服务器上,但服务器存储和管理根许可证,并远程管理源版本。
[0141] 图23示出了绑定实例2300的一个实现的表示,包括存储在服务器2305和客户机2350上的部件。绑定实例2300的结构与图22中的离散实例2205类似,但可包括存储在服务器上的数据和存储在集线器网络中的0个或多个客户机上的数据。服务器部件2305包括:锁定内容数据2310、标题信息2315和安全区2320,安全区包括密钥2325、根许可证
2330和撤消列表2335。服务器部件2305中的锁定内容数据2310是绑定实例2300的锁定内容数据的源版本。服务器使用该源版本,以产生锁定内容数据(例如,下面讨论的锁定内容数据2310)的子拷贝版本。源版本是集线器网络中内容的最高分辨率版本。如果不同设备请求不同分辨率拷贝,则可从源版本产生这些拷贝。标题信息2315的许可授权数据指示外部许可授权机构(例如,与绑定实例基于的离散实例所指示的授权机构相同的授权机构),以及作为本地许可授权机构的服务器。绑定实例的一些实现不包括绝对许可授权数据(例如,使用与锁定内容数据一起提供的任何许可证)。根许可证2330指示为特定锁定内容数据2310定义的允许集,包括适当时对绑定实例的呈现、拷贝和移动(例如,不允许移动,但允许创建子拷贝版本并将其提供给其它设备)。根许可证2330被密码地绑定到特定服务器。根许可证2330定义什么类型许可证可用于集线器网络中的子拷贝。在一个实现中,根许可证2330包括指示绑定实例2305是绑定实例的标记。在一个实现中,根许可证是不同的,这取决于服务器是服务器设备还是服务器/客户机设备。撤销列表指示已经撤消授权的设备。如上所述,顺从性设备保存其自身的撤消列表(例如,服务器保存服务器或设备撤销列表,客户机保存客户机撤消列表)。当服务器接收绑定实例时,服务器将不在服务器撤消列表上的绑定实例的撤销列表中的任何设备添加到其撤销列表。如果服务器的撤销列表中列出了顺从性服务器设备,则该设备不会呈现或播放绑定实例。如果服务器的撤销列表中列出了顺从性服务器,则该服务器不会解除(使离散)绑定实例。顺从性服务器不会将子拷贝版本或许可证提供给在服务器撤销列表中列出的设备。在另一实现中,顺从性服务器会将子拷贝版本提供给撤销列表中列出的设备,但不将许可证提供给该设备。
[0142] 存储在客户机2350上的部件类似于存储在服务器2305上的部件,但许可证不同。客户机部件2350包括:锁定内容数据2355、标题信息2360以及包括密钥2370、子拷贝许可证2375和撤销列表2380的安全区2365。标题信息2360的许可授权数据指示外部许可授权机构(例如,由绑定实例基于的离散实例所指示的同一授权机构)以及对应于绑定实例的、作为本地许可授权机构的服务器。如上所述,绑定实例的一些实现不包括许可授权数据。子拷贝许可证2375根据相应绑定实例的根许可证来指示为特定锁定内容数据2355定义的允许集,包括呈现内容的规则,诸如任何时间约束。子拷贝许可证2375密码地绑定到特定客户机。子拷贝许可证2375包括客户机何时不能刷新许可证的截止周期,如下所述。
如上所述,客户机设备保存撤销列表,并根据撤消列表2380更新该撤销列表。如果在客户机的撤销列表中列出了顺从性客户机设备,则该设备不会呈现或播放子拷贝版本。在一个实现中,顺从性设备也不会将子拷贝提供给在客户机的撤销列表中列出的设备。
[0143] 在一个实现中,类似于离散实例,使用不同技术对绑定实例的锁定内容数据和安全区加密。使用内容加密技术,将锁定内容数据(源版本和任何子拷贝版本)加密。使用集线器网络加密技术,将安全区加密。在一个示例中,顺从性设备拥有集线器网络密钥,用以对包含密钥的安全区(其是使用集线器网络加密术加密的)解密,并使用来自安全区的解密密钥对锁定内容数据(其是使用内容加密术加密的)解密。
[0144] 在另一实现中,可独立管理和分配绑定实例的锁定内容数据和许可证(或整个安全区)。类似地,可独立分配离散实例的锁定内容。在此情况下,在没有先获得有效许可证的情况下,顺从性设备不会呈现锁定内容数据。设备可在集线器网络之外分配锁定内容数据,但接受者仍将需要新许可证。此外,以这种方式,中间设备可用作导管,用以通过将许可证从服务器传到断开的客户机来刷新集线器网络本地环境之外的断开的成员设备的许可证,如下所述。
[0145] 相同内容的多个离散实例被视为截然不同的离散实例,并且这些离散实例不相关。类似地,如果相同内容的多个离散实例绑定到集线器网络,则每个都创建截然不同的绑定实例。在另一实现中,服务器识别何时存在相同内容的多个离散实例(例如,通过标识内容中的信息或标题信息),并且实例的许可信息允许绑定实例被视为相关的。例如,如果存在多个相关实例,则释放一个相关实例不需要禁止其余相关绑定实例的锁定内容数据。
[0146] 在另一实现中,内容的实例或拷贝也可处于第三种状态:无限制的。在集线器网络之内或之外,无限制的实例和拷贝可被移动、拷贝和播放。顺从性设备不会将无限制实例的状态变为绑定或离散。当用户请求将内容添加到集线器网络时,如果服务器标识受控状态(其根据拷贝控制信息定义根许可证),则服务器检查拷贝控制信息,并将内容添加为绑定实例。如果用户请求添加不包含任何检测的拷贝控制或媒体网络环境信息的实例(例如,不是离散或绑定实例),则设备可将内容添加为无限制实例。
[0147] 返回图17,两个内容条目A和B绑定到集线器网络HN1。对于两个内容条目A和B中每一个的绑定实例,服务器/客户机设备1705存储锁定内容数据的源版本(由“A”和“B”标号指示)。存储客户机设备1720存储两个内容条目A和B中每一个的锁定内容数据的子拷贝版本(由“a”和“b”标号指示)。
[0148] 一个内容条目X绑定到集线器网络HN2。服务器设备1715存储内容X的源版本(由“X”标号指示)。服务器/客户机设备1705和存储客户机设备1720每个都存储内容条目X的子拷贝版本(由“x”标号指示)。服务器设备1715还存储内容Y的离散实例的锁定内容数据的离散版本(由“Y”标号指示)。
[0149] 存储设备1730存储内容Z的离散版本(由“Z”标号指示)。
[0150] 内容状态转变
[0151] 服务器管理在集线器网络中内容的顺从性实例的状态。服务器通过将离散实例的状态变为绑定来将实例绑定到集线器网络。服务器通过将绑定实例的状态变为离散并禁止集线器网络中相应的锁定内容数据,来从集线器网络中移除或释放该实例。
[0152] 图24示出将离散实例绑定到集线器网络的一个实现的流程图2400。最初,服务器接收离散实例(块2405)。如上所述,离散实例可以各种形式在顺从性媒体上,诸如存储在顺从性存储媒体(例如光盘)上的电子文件,或存储在服务器存储器中的电子文件(例如,经网络连接通过下载接收的)。服务器也不产生离散实例的拷贝,因为服务器将不产生没绑定到集线器网络的离散实例的拷贝(虽然服务器可以产生离散实例的锁定内容数据的拷贝)。
[0153] 服务器接收来自用户的将离散实例绑定到集线器网络的请求(块2410)。在一个实现中,服务器等待来自用户的请求。在另一实现中,当服务器接收到离散实例时,服务器向用户发送询问,询问该服务器是否应将该离散实例绑定到集线器网络。
[0154] 在服务器接收到绑定请求后,服务器禁止离散实例(块2415)。通过禁止离散实例,顺从性设备不会呈现或播放该离散实例。在一个实现中,服务器通过禁止离散实例的许可证来禁止离散实例。在另一实现中,服务器通过设置离散实例数据中的标记来禁止离散实例,以使顺从性设备不会呈现离散实例。在另一实现中,服务器通过用服务器专用的密钥对离散实例中的一些或全部加密来禁止离散实例。在另一实现中,服务器通过将离散实例注册为用中央数据库或授权机构(例如,在呈现或播放内容数据之前设备与其协商)禁止的方式来禁止离散实例。在另一实现中,离散实例仅被部分禁止,以使是禁止离散实例已绑定到的集线器网络的成员的设备可将离散实例作为子拷贝来呈现或播放。如果服务器不能禁止离散实例,则服务器不将离散实例绑定到集线器网络。
[0155] 服务器从离散实例创建绑定实例(块2420)。服务器拷贝离散实例,包括拷贝锁定内容数据、包含许可授权信息的标题信息、解开锁定内容数据的密钥、离散许可证和撤消列表(如果存在)。服务器将锁定内容数据的拷贝存储为绑定实例的锁定内容数据的源版本。服务器在适当时修改要成为根许可证的离散许可证,以管理绑定实例,而不是离散实例。备选地,服务器不拷贝离散许可证,而是使用离散许可证产生新的根许可证。在另一实现中,服务器还(或而是)联系由许可授权信息指示的外部许可授权机构,以更新或产生根许可证。在一个实现中,如果服务器不是服务器/客户机设备,并因此不呈现内容,则根许可证不存储关于服务器的呈现允许的许可信息。
[0156] 在备选实现中,服务器通过删除离散实例中的一些或全部来禁止离散实例。在此情况下,在删除离散实例之前,服务器首先建立离散实例的绑定实例。
[0157] 在另一实现中,服务器将离散实例转换为绑定实例。在此情况下,服务器不产生离散实例的拷贝。而服务器在适当时改变许可授权信息和许可证,以指示离散实例现在是绑定实例。
[0158] 在一个实现中,在禁止离散实例并创建绑定实例之前,服务器确认允许该服务器绑定离散实例。服务器确认离散实例的许可证允许服务器绑定离散实例。服务器还确认该服务器不在服务器撤销列表上。在另一实现中,服务器还确认在离散实例的锁定内容数据中有正确的水印。如果服务器没有成功确认允许绑定离散实例,则该服务器不绑定离散实例。
[0159] 在一个实现中,服务器记录广播信息,并将其存储为绑定内容并建立根。服务器自动创建根许可证。在备选实现中,服务器使用广播中的信息来定义根许可证,或使用广播信息中的许可授权信息来联系外部许可授权机构,以获得构建根许可证的许可证。在另一实现中,服务器将来自广播的内容记录为离散实例。在一个实现中,广播信息包括密钥、许可授权信息和构建离散拷贝的许可信息。在另一实例中,服务器记录广播信息,并将其存储为绑定内容并建立根。服务器使用广播信息中的许可授权信息来联系外部许可授权机构,以获得构建根拷贝的许可证。在一个实现中,服务器根据广播提供的任何拷贝控制信息对广播信息的媒体内容加密。
[0160] 图25示出了从集线器网络中释放内容拷贝、产生内容离散(“离散性(discretification)”)的一个实现的流程图2500。最初,绑定实例存储在服务器上和存储内容子拷贝版本的任何客户机上。
[0161] 服务器从用户那接收从集线器网络释放绑定实例并创建离散实例的请求(块2505)。在一个实现中,服务器等待来自用户的请求。在另一实现中,当服务器接收到不可用于绑定实例的操作的请求时,诸如将绑定实例移出集线器网络,服务器向用户发送询问。
在此情况下,询问服务器是否应该从集线器网络中释放绑定实例并创建离散实例。
[0162] 在服务器接收到离散请求之后,该服务器使集线器网络的客户机禁止相应绑定实例的子拷贝版本(块2515)。服务器将禁止请求发送到集线器网络的每个成员,指定哪个绑定实例子拷贝版本要被禁止。备选地,服务器将禁止请求发送到具有绑定实例子拷贝版本的成员(例如,通过发送到客户机的许可证所指示的)。接收到禁止请求的客户机禁止对应于绑定实例的所有子拷贝版本。通过禁止子拷贝版本,顺从性设备不会呈现或播放禁止的子拷贝版本。在一个实现中,客户机通过禁止子拷贝版本的许可证来禁止该子拷贝版本。在另一实现中,客户机删除要禁止的子拷贝版本。在另一实现中,客户机通过在子拷贝版本的数据中设置标记来禁止该子拷贝版本,以使顺从性设备不会呈现该子拷贝版本。在另一实现中,客户机通过用客户机专用的密钥将子拷贝版本加密来禁止该子拷贝版本。在另一实现中,客户机通过用中央数据库或授权机构(例如,在呈现或播放子拷贝版本之前与其协商)将绑定实例注册为被禁止的方式来禁止子拷贝版本。如果这时客户机从集线器网络断开,则当客户机设备重新连接到集线器网络时,服务器产生禁止相应子拷贝版本的请求。
[0163] 在服务器禁止子拷贝版本之后,该服务器禁止源版本(块2515)。通过禁止源版本,顺从性设备不会呈现或播放该源版本。服务器禁止源版本类似于服务器禁止离散实例,或客户机禁止子拷贝版本,诸如通过禁止绑定实例的根许可证。
[0164] 服务器从绑定实例产生离散实例(块2520)。服务器拷贝绑定实例,包括拷贝锁定内容数据的源版本、包含许可授权信息的标题信息、解开锁定内容数据的密钥、根许可证和撤消列表(如果存在)。服务器将离散实例存储在内部存储器或外部顺从性媒体上(例如,根据来自用户的离散请求)。服务器在适当时修改离散实例(而非绑定实例)的根许可证。备选地,服务器不拷贝根许可证,而是使用根许可证生成新的离散许可证。在另一实现中,服务器还(或而是)联系由许可授权信息指示的外部许可授权机构,以更新或生成离散许可证。
[0165] 在一个实现中,在外部顺从性媒体上创建离散实例之前,服务器确认该顺从性媒体可用于存储新的离散实例。如果顺从性媒体不可用,则服务器可在内部存储器上创建离散实例,或者服务器可使用批准的记录技术(例如,由根许可证或由集线器网络的配置批准的)来创建非顺从性拷贝。在一个实现中,批准的记录技术的例子包括4C或D-VHS。一旦服务器已经创建了非顺从性拷贝,该非顺从性拷贝将不能再被绑定,并且禁止的子拷贝将不能被激活(在没购买新许可证的情况下)。相应地,在创建非顺从性拷贝之前,服务器请求确认。如果外部顺从性媒体不可用,并且批准的记录技术不可用,则服务器不会在外部存储器上产生离散实例。在一个实现中,用户可请求从离散实例创建非顺从性拷贝,而不管顺从性媒体的存在(虽然仍然需要批准的记录技术)。
[0166] 在另一实现中,服务器将绑定实例转换为离散实例。在此情况下,服务器不需要产生绑定实例的拷贝。而是,服务器在适当时改变许可授权信息和许可证,以指示绑定实例现在是离散实例。
[0167] 在另一实现中,存储客户机设备还可将绑定实例的状态变为离散。在此情况下,客户机设备通知服务器,并且服务器禁止源版本和所有其余子拷贝版本(例如,通过将禁止请求发送到其它客户机)。在备选实现中,存储客户机设备请求集线器网络的所有成员设备禁止内容的子拷贝版本(其受存储客户机设备的许可证的控制)。在一个实现中,如果客户机设备存储子拷贝版本或存储其它锁定内容数据,则该客户机设备包括将绑定实例的状态变为离散的功能性。
[0168] 在一个实现中,服务器不会释放在许可信息中包含限制时间的使用规则的绑定实例。在此情况下,如果服务器接收到将绑定实例变为离散实例的请求,则该服务器拒绝该请求,并且具有相应子拷贝版本的绑定实例保持激活。
[0169] 在一个实现中,服务器确认在禁止绑定实例并创建离散实例之前允许该服务器释放该绑定实例。服务器确认绑定实例的根许可证允许该服务器释放绑定实例。服务器还确认该服务器不在服务器的撤销列表上。如果服务器没有成功确认允许释放绑定实例,则该服务器不释放该绑定实例。
[0170] 内容许可证管理
[0171] 服务器管理绑定到该服务器的集线器网络的绑定实例的子拷贝版本的许可证。如上所述,当服务器将内容实例绑定到集线器网络时,该服务器创建具有根许可证的绑定实例。具有绑定实例的根许可证的服务器是集线器网络中绑定实例的本地许可授权机构,并且该服务器使用该根许可证来控制集线器网络中绑定实例的所有子拷贝版本的许可。
[0172] 顺从性设备使用许可证来用内容实例的锁定内容数据,诸如呈现、拷贝或移动锁定内容数据。在一个实现中,许可证指示为特定锁定内容数据定义的允许集。许可证允许根据类型(例如离散实例、绑定实例)指示呈现、拷贝和移动锁定内容数据的允许。许可证还可指示允许的条件,诸如基于时间(例如,租用的时限)、地理(例如区代码)、用户身份(例如密码)。通过与许可授权机构的相互作用(例如,租用销售量的附加付费),可改变或更新许可证。在没有当前有效且激活的许可证的情况下,顺从性设备不会呈现锁定内容数据。当顺从性设备首先使用锁定内容数据时,该顺从性设备请求新许可证,或确认锁定内容数据的许可证。服务器只将许可证提供给集线器网络本地环境中的服务器集线器网络的成员客户机。
[0173] 在另一实现中,服务器使用中间设备(例如,另一客户机设备)将许可证提供给断开的和/或在集线器网络本地环境之外的成员客户机。中间设备用作许可证的“导管”(类似于如上所述将远程设备添加为成员)。服务器和客户机不连接,或是该客户机不在服务器的本地环境中。中间设备连接到服务器和客户机(例如,直接、间接或在不同时间,诸如当该中间设备是在服务器和客户机之间移动的便携式设备时)。中间设备在服务器和客户机之间传递信息,并且最终将许可证从服务器传到客户机(如果服务器将许可证授予客户机的话)。
[0174] 在一个实现中,如果传送时两个设备都在同一本地环境中,则客户机设备可将其许可证扩展到同一集线器网络的另一成员客户机。扩展的许可证与扩展客户机设备所拥有的许可证相同(或前者比后者更具限制性),因此扩展客户机不会扩大许可证的允许。接收客户机在收到许可证时刷新许可证。扩展之后,扩展客户机和接收客户机都有许可证。
[0175] 许可证刷新
[0176] 绑定实例的子拷贝版本的许可证具有截止周期。当客户机接收到许可证时,该客户机根据许可证的截止周期和客户机安全时钟的当前时间来设置截止时间。例如,对于截止周期为15天的许可证,客户机会将截止时间设为从接收到许可证起的15天。当时钟指示已达到截止时间时,许可证到期。客户机通过联系存储子拷贝版本根许可证的服务器来周期性地刷新客户机存储的每个子拷贝版本的许可证。当许可证被刷新时,客户机根据刷新的许可证的截止周期来重新设置截止时间。在许可证没被刷新时,截止时间保持不变,并且因此达到截止时间之前的截止周期中的剩余时间继续减少。当客户机重新连接到集线器网络时,客户机还刷新对应于该集线器网络的子拷贝版本的所有其许可证。
[0177] 图26示出了更新和刷新许可证的一个实现的流程图2600。最初,客户机存储绑定实例的锁定内容数据的子拷贝版本。子拷贝版本的许可证绑定到特定集线器网络,并且因此该集线器网络的服务器管理对应于客户机存储的子拷贝版本的绑定实例。当客户机接收到子拷贝版本的许可证时,该客户机根据截止周期和客户机时钟的时间来设置许可证的截止时间。客户机的时钟是安全时钟,并以规则速率前进。如果客户机没接收到具有子拷贝的激活许可证,则客户机在接收到子拷贝时请求新的或刷新的许可证。
[0178] 客户机请求来自服务器的刷新许可证(块2605)。客户机将刷新请求发送到子拷贝版本的绑定实例绑定到的集线器网络的服务器。客户机周期性地将刷新请求发送到服务器,诸如每分钟或每小时一次。在一个实现中,服务器或用户可调整客户机请求刷新许可证的频率。在一个实现中,在请求刷新的许可证之前,或除请求刷新的许可证之外,客户机请求来自服务器的时间同步。
[0179] 服务器接收请求,并确认客户机被正确配置为接收刷新许可证(块2610)。服务器确认客户机连接了,并在集线器网络的本地环境中(例如,通过强制回应客户机)。如果客户机没有连接,或不在本地环境中,则服务器不发送刷新许可证。服务器还确认客户机具有正确的安全软件和数据(例如密钥)。如果客户机没有正确的安全软件和数据,则服务器将包括更新软件和数据的安全更新发送到客户机。如果服务器不能将安全更新发送到客户机,则服务器不将刷新许可证发送给客户机。如果服务器没接收到刷新请求,则服务器不将刷新许可证发送到客户机。
[0180] 在确认客户机之后,服务器确认客户机的许可证(块2615)。服务器确认该客户机不在服务器的撤消列表上。在一个实现中,在服务器将新许可证发送到客户机之前,该服务器和客户机还交换和更新撤消列表。如果客户机在服务器的撤消列表上,则服务器不发送刷新许可证。服务器通过检查根许可证来确定许可证是否仍可用于该客户机。如果根许可证指示许可证可用于该客户机,则服务器将刷新许可证发送到该客户机。刷新许可证不一定与存储在客户机中的许可证相同。服务器可通过将不同的许可证作为刷新许可证发送来更新客户机许可证的方面。例如,在一个实现中,服务器周期性地请求来自外部许可授权机构的许可证更新,并相应地更新根许可证。在另一实现中,根许可证根据改变标准(诸如时间、付费或客户机状态)来指示不同的许可允许。如下所述,在一个实现中,在创建新的子拷贝版本时,该新的子拷贝版本具有禁止许可证,并需要对新设备特定的新许可证。响应对新子拷贝版本的第一刷新请求,服务器使用根许可证创建新许可证。
[0181] 如果根许可证指示许可证不可用于客户机,则服务器不将刷新许可证发送给该客户机。如果根许可证指示由于环境的变化(例如租用的时限已到期,或还未付订金)内容的许可证不再有效,则该许可证不可用。在一个实现中,服务器还与外部许可授权机构协商一些或全部刷新请求。在一个实现中,服务器将解释不发送刷新许可证的原因的消息发送给客户机。
[0182] 在另一实现中,服务器不发送刷新许可证,而是发送指示是否能够刷新许可证和对许可证任何改变的消息或标记。
[0183] 客户机确定服务器是否发送刷新许可证(块2620)。如果客户机从服务器断开,则服务器不会响应刷新请求,且因此该客户机不会接收刷新许可证。在另一实现中,客户机首先检查来自服务器的任何响应。在另一实现中,如果客户机从集线器网络断开,则客户机不发送刷新请求,并继续,就好像没接收到刷新许可证一样。如果服务器不可用,或被禁止了,则该服务器不会发送刷新许可证。如上所述,如果服务器没有成功确认客户机或许可证,则不允许客户机接收刷新许可证,并且服务器不发送刷新许可证。
[0184] 如果客户机接收到刷新许可证,则客户机刷新许可证(块2625)。客户机用刷新许可证代替存储的许可证。将截止时间重新设回截止周期的最大值。
[0185] 如果客户机没有接收到刷新许可证,则该客户机确定许可证是否已经到期(块2630)。在已过截止周期还没接收到刷新许可证的情况下,许可证到期。当客户时钟指示已达到截止时间时,许可证到期。在其它实现中,可用不同的机制来确定截止周期何时到期,诸如减量定时器。
[0186] 如果许可证已到期,则客户机禁止该许可证(块2635)。客户机禁止许可证,以使该客户机和其它顺从性设备不会呈现那个子拷贝版本。在一个实现中,客户机以另一种方式禁止子拷贝版本,诸如加密该子拷贝版本或删除该子拷贝版本。
[0187] 当用于请求刷新许可证的下一周期出现时,客户机返回块2605。在一个实现中,客户机可与请求刷新的许可证无关地确定许可证已到期(例如,当截止时间在请求刷新许可证之间时)。
[0188] 在一个实现中,如果客户机没有从服务器接收到刷新许可证,则该客户机从外部许可证授权机构请求刷新的或新的许可证。如上所述,服务器是由子拷贝版本标题信息中的许可授权信息定义的本地许可授权机构。许可授权信息还可指示外部许可授权机构,诸如通过网络(例如互联网)连接到客户机的中央服务器。在一个实现中,当服务器不可用时,或当客户机不是服务器的集线器网络成员且需要新许可证时,该客户机请求来自外部授权机构的许可证。在另一实现中,许可授权信息指示授权机构的级别(例如,本地的、区域的、国家的或绝对的)。
[0189] 图27-29示出从集线器网络断开设备以及截止周期操作的例子。
[0190] 在图27中,两个媒体网络环境2700和2750处于不同的本地环境中。本地环境是相对于服务器的位置定义的(紧密相邻的两个服务器被视为定义基本同时扩张的本地环境)。虚线表示本地环境之间的中断。第一媒体网络环境2700包括4个设备:连接到终端设备2710(用于呈现内容)的服务器/客户机设备2705、服务器设备2715和客户机设备2720。服务器/客户机设备2705是集线器网络HN1的服务器(由“HN1*”标号指示)。服务器/客户机设备2705和客户机设备2720是集线器网络HN1中的客户机(由“HN1”标号指示)。服务器设备2715是集线器网络HN2的服务器(由“HN2*”标号指示)。服务器/客户机设备2705和客户机设备2720是集线器网络HN2中的客户机(由“HN2”标号指示)。
[0191] 两个内容条目A和B绑定到集线器网络HN1。服务器/客户机设备2705存储两个内容条目A和B中每一个的源版本并管理根职责,由“A”和“B”标号指示。客户机设备2720存储两个内容条目A和B中每一个的子拷贝版本(由“a”和“b”标号指示)。
[0192] 一个内容条目X绑定到集线器网络HN2。服务器设备2715存储内容条目X的源版本并管理根职责,由“X”标号指示。服务器/客户机设备2705和客户机设备2720中的每一个都存储内容条目X的子拷贝版本(由“x”标号指示)。服务器设备2715还存储内容条目Y的离散实例(由“Y”标号指示)。
[0193] 第二媒体网络环境2750包括一个设备:服务器/客户机设备2755。服务器/客户机设备2755是集线器网络HN3的服务器(由“HN3*”标号指示)。服务器/客户机设备2755是集线器网络HN3中的客户机(由“HN3”标号指示)。
[0194] 一个内容条目M绑定到集线器网络HN3。服务器/客户机设备2755存储内容条目M的源版本并管理根职责,由“M”标号指示。
[0195] 在图28中,服务器/客户机设备2705移动到第二媒体网络环境2750,并作为客户机成为集线器网络HN3的成员(由“HN3”标号指示)。服务器/客户机设备2705仍是集线器网络HN1和HN2的客户机(由“HN1”和“HN2”标号指示)。服务器/客户机设备2705接收内容条目M的子拷贝版本(由“m”标号指示)。服务器/客户机设备2755作为客户机加入集线器网络HN1(由“HN1”标号指示)。服务器/客户机设备2755接收内容条目A和B中每一个的子拷贝版本(由“a”和“b”标号指示)。
[0196] 通过移动到第二媒体网络环境2750,服务器/客户机2705已将集线器网络HN1的本地环境带到第二媒体网络环境2750。结果,客户机设备2720不再处于集线器网络HN1的本地环境中,并因此客户机设备2720从集线器网络HN1断开。由于断开了,客户机设备2720不能刷新内容条目A和B的子拷贝版本a和b的许可证,并且因此不会重新设置子拷-15 -15
贝版本a和b的截止时间(由“a ”和“b ”标号指示)。
[0197] 此外,当服务器/客户机设备2705离开媒体网络环境2700时,由于服务器/客户机设备2705已离开了集线器网络HN2的本地环境,因此服务器/客户机设备2705变为从集线器网络HN2断开。由于断开了,服务器/客户机设备2705不能刷新内容条目X的子拷-15贝版本x的许可证,并因此不会重新设置子拷贝版本x的截止时间(由“x ”标号指示)。
然而,服务器/客户机设备2705已成为集线器网络HN3的成员,并且集线器网络HN3处于与集线器网络HN2不同的本地环境中。如上所述,在一个实现中,当跨越设备是处于不同本地环境中的两个集线器网络的成员时,客户机将只呈现来自设备最近连接到的集线器网络(在本例中是集线器网络HN3(以及集线器网络HN1,因为服务器/客户机设备是集线器网络HN1的服务器))的子拷贝版本。相应地,暂时禁止内容条目X的子拷贝版本x,直到服-15
务器/客户机设备2705再次连接到集线器网络HN2为止(由“* ”标号指示(删除线))。
在备选实现中,跨越设备客户机没有暂时禁止来自远程集线器网络的子拷贝版本,并继续监控没被刷新的子拷贝版本的截止周期,如上所述。
[0198] 在图29中,服务器/客户机设备2705已返回到第一媒体网络环境2700,并连接到服务器设备2715和客户机设备2720,重新连接到集线器网络HN2。结果,客户机/服务器设备2705可刷新子拷贝版本x的许可证,并且客户机设备2720可刷新子拷贝版本a和b的许可证(由上标的移除指示)。
[0199] 通过服务器/客户机设备2705离开第二媒体网络环境2750,服务器/客户机设备2705从集线器网络HN3断开,并且服务器/客户机设备2755从集线器网络HN1断开。结果,服务器/客户机设备2705不能刷新子拷贝版本m的许可证,因此截止时间没被重新设置,并且子拷贝版本m被暂时禁止了(由 标号指示)。服务器/客户机设备2755不能刷新子拷贝版本a和b的许可证,因此没重新设置截止时间(由“a-15”和“b-15”标号指示)。
[0200] 内容呈现
[0201] 客户机设备呈现或播放内容。某些客户机设备包括集成呈现部件,并直接呈现内容数据。某些客户机设备通过连接的设备(例如终端设备)呈现内容数据。某些客户机以任一种或两种方式呈现内容数据。存储客户机设备呈现存储在客户机设备上的子拷贝中的内容数据,或从服务器流出的内容数据中的内容数据。非存储客户机设备呈现从服务器流出的内容数据。返回图17,从服务器设备1715到非存储客户机1725的虚线指示将内容数据从服务器设备1715流到非存储客户机1725。在一个实现中,呈现的内容数据包括控制未授权拷贝的输出控制(例如,防止或抑制拷贝输出数据的数据或处理)。某些服务器包括服务器和客户机功能性,并且这种服务器将类似于客户机地呈现内容。
[0202] 图30示出了呈现存储在客户机设备上的子拷贝版本中的内容数据的客户机设备的一个实现的流程图3000。最初,客户机设备是存储客户机设备,并存储要呈现的锁定内容数据的子拷贝版本。
[0203] 客户机接收呈现内容的请求(块3005)。该请求来自用户,并指示内容条目。在另一实现中,该请求来自另一设备,或是自动的。
[0204] 客户机确认许可证允许呈现子拷贝版本(块3010)。当刷新许可证时,许可证可改变或更新,因此在呈现子拷贝版本之前,客户机检查许可证。如果许可证不是当前的、不是有效的、或是禁止的,则客户机不会呈现子拷贝版本。在一个实现中,如果客户机不具有当前有效且激活的许可证,则客户机请求来自服务器的新许可证,并且服务器参考相应绑定实例的根许可证。如果服务器拒绝该请求(例如,由于客户机没有权利使用新许可证),则该客户机不会呈现子拷贝版本。
[0205] 客户机还确认该客户机不在该客户机可用的任何撤消列表上(块3015)。如果客户机在撤销列表上,则客户机不会呈现子拷贝版本。
[0206] 在成功确认许可证和撤消列表之后,客户机呈现子拷贝版本的内容数据(块3020)。客户机通过将锁定内容数据解密以产生输出数据并将该输出数据输出到集成呈现部件、外部呈现部件或终端设备来呈现子拷贝版本的内容。
[0207] 顺从性设备以类似的方式呈现来自离散实例的内容数据。
[0208] 如上所述,包含客户机功能性的服务器以类似的方式呈现内容数据。在另一实现中,服务器设备和客户机设备在同一物理设备上共存,并因此服务器依赖于常驻客户机来呈现内容。
[0209] 图31示出了将内容数据从服务器流到客户机的一个实现的流程图3100。最初,服务器创建内容的绑定实例,并且客户机设备连接到该服务器。
[0210] 客户机接收呈现内容的请求(块3105)。该请求来自用户,并指示内容的条目。在另一实现中,请求来自另一设备,或者是自动的。客户机将流请求发送到管理当前请求所指示绑定实例的服务器。在另一实现中,服务器接收当前请求,并且该请求还指示呈现内容的客户机设备。
[0211] 服务器确认根许可证允许通过流到指示的客户机来呈现内容数据(块3110)。当刷新许可证时,该许可证可改变或被更新,因此服务器在流来自绑定实例源版本的内容数据之前检查许可证。如果许可证不是当前的、不是有效的或者是禁止的,则服务器不会流内容数据。服务器不会将内容数据流到不是集线器网络成员的客户机。
[0212] 服务器还确认客户机不在该服务器可用的撤消列表上(块3115)。如果客户机在可用撤销列表上,则服务器不会流内容数据。
[0213] 在成功确认许可证和撤销列表之后,服务器将内容数据从该绑定实例的源版本流到客户机(块3120)。在一个实现中,服务器将源版本的锁定内容数据流到客户机。
[0214] 当客户机接收到流内容数据时,该客户机呈现内容数据(块3125)。客户机不存储流内容数据(除在呈现内容数据过程中的瞬变以外)。客户机通过将内容数据输出到集成呈现部件、外部呈现部件或终端设备来呈现内容数据。
[0215] 在另一实现中,服务器将锁定内容数据加密(例如,使用流数据的加密技术),并将加密的锁定内容数据流到客户机。客户机将加密的锁定内容数据解密以获得锁定内容数据,并然后将锁定内容数据解密以获得输出数据。客户机呈现该输出数据。在备选实现中,可使用服务器和客户机之间不同的加密和解密组合。例如,服务器可将锁定内容数据解密以获得输出数据,并然后加密该输出数据。服务器然后将加密的输出数据流到客户机,并且客户机对加密的输出数据解密。
[0216] 在一个实现中,顺从性设备可总是将数据输出到连接的终端设备,因为终端设备不存储接收的输出数据(除瞬变以外),并且到终端设备的连接和传输是相当安全的。在一个实现中,当顺从性设备将输出数据发送到终端设备时,该顺从性设备将相同的数据发送到从该顺从性设备接收数据的所有终端设备。
[0217] 在一个实现中,顺从性设备会将离散内容流到另一顺从性设备,但接收设备不会存储任何流内容数据(除在呈现过程中瞬变以外)。
[0218] 客户机设备不会流子拷贝版本的内容数据。在另一实现中,存储客户机设备将子拷贝版本的内容数据流到另一成员客户机。
[0219] 内容拷贝和移动
[0220] 顺从性设备可从源版本创建子拷贝版本,或拷贝子拷贝版本。顺从性设备可随意将子拷贝版本提供给集线器网络的另一成员。顺从性设备可将子拷贝版本提供给不是绑定实例绑定到的集线器网络的成员的顺从性设备,但在能够呈现子拷贝版本的内容数据之前,非成员将需要获得新的有效许可证。顺从性设备可将子拷贝版本提供给非顺从性设备,但该非顺从性设备将不能呈现子拷贝版本的锁定内容数据。非顺从性设备可将子拷贝版本移动到顺从性设备,且该顺从性设备在获得新的有效许可证之后将能呈现该子拷贝版本。
[0221] 顺从性设备不会拷贝离散实例(除在集线器网络上将实例从离散变为绑定的过程中以外)。类似地,顺从性设备不会创建离散实例的备份拷贝。顺从性设备可产生离散实例锁定内容数据的离散版本的拷贝(类似于子拷贝版本),并将该拷贝提供给另一设备,但在能够呈现锁定内容数据的接收拷贝之前,接收设备将需要获得新的有效许可证。
[0222] 服务器不会将源版本和根职责直接移到另一服务器。在一个实现中,为了将根职责从一个服务器移到另一服务器,服务器将绑定实例转换为离散实例,将离散实例移动到另一服务器,且第二服务器将离散实例转换回绑定实例,建立新根。跨越设备可通过允许服务器通过跨越设备将离散实例传到另一顺从性服务器来便于离散实例从一个集线器网络到另一集线器网络的传送。在另一实现中,服务器将根职责直接移到共享公共客户机设备的另一顺从性服务器。
[0223] 服务器不会将源版本或根职责移动到客户机(除非该客户机也是服务器)。
[0224] 顺从性设备可使用顺从性媒体、安全传输或顺从性记录技术移动离散实例。如上参考从绑定实例创建离散实例所述,在一个实现中,在将离散实例移动到外部媒体之前,顺从性设备确认该外部媒体是顺从性媒体。如果顺从性媒体不可用,则顺从性设备可使用批准的记录技术在非顺从性媒体上创建非顺从性拷贝。一旦顺从性设备已经创建了非顺从性拷贝,该非顺从性拷贝就不能够再次绑定。相应地,在创建非顺从性拷贝之前,顺从性设备请求确认。如果外部顺从性媒体不可用,并且批准的记录技术不可用,则顺从性设备不会将离散实例移动到外部存储器。
[0225] 顺从性设备使用安全传输将子拷贝版本传输到其它顺从性设备。在另一实现中,顺从性设备也可经过非安全连接传输子拷贝版本(没有许可证或密钥)。顺从性设备还可使用顺从性物理媒体来将子拷贝版本传送到另一顺从性设备,这受在此所述的限制控制。
[0226] 图32示出了创建成员客户机的锁定内容数据的子拷贝版本的一个实现的流程图3200。最初,服务器管理内容的绑定实例,存储绑定实例的源版本和根许可证。如上所述,服务器使用源版本以产生集线器网络的子拷贝版本。
[0227] 服务器接收创建子拷贝版本的请求(块3205)。该请求来自用户,并指示内容条目和接收子拷贝版本的客户机。备选地,拷贝请求没指示新子拷贝版本的目的地(例如,拷贝请求之后是将新的子拷贝版本移动到目的客户机的请求)。在另一实现中,该请求来自另一设备,或者是自动的。在另一实现中,客户机接收拷贝请求,并将该请求传到服务器。在一个实现中,拷贝请求指示目标分辨率。如果目标分辨率不同于源版本(或拷贝的子拷贝版本)的分辨率,则可使用作为集线器网络中最高分辨率拷贝的源版本(或拷贝的子拷贝版本)来进行转换。在另一实现中,拷贝请求指示目标格式。服务器使用要拷贝的子拷贝版本或源版本来执行作为部分拷贝过程的任何代码转换。备选地,在客户机需要时,可将目标分辨率和格式转换和代码转换用于呈现。
[0228] 服务器确认许可证允许将子拷贝版本提供给指示的客户机(块3210)。当刷新许可证时,该许可证可改变或被更新,因此服务器在创建子拷贝版本之前检查该许可证。如果许可证不是有效的,或者是禁止的,则服务器不会创建子拷贝版本。如下所述,在另一实现中,在产生子拷贝版本之前,服务器不确认许可证。相反,在创建子拷贝版本的新许可证时,服务器检查许可证。
[0229] 服务器还确认客户机不在服务器的撤消列表上(块3215)。如果客户机在撤消列表上,则服务器不会创建子拷贝版本。
[0230] 在成功确认许可证和撤销列表之后,服务器创建子拷贝版本(块3220)。服务器从源版本创建新的子拷贝版本,将该新子拷贝版本存储在服务器上。参考图23,服务器从源版本2310创建子拷贝版本2355。服务器还拷贝包含许可授权信息的标题信息。服务器不拷贝根许可证、解开锁定内容数据的密钥或源版本的撤消列表。服务器根据根许可证创建子拷贝版本的新子拷贝许可证。然而,最初禁止新子拷贝版本的许可证。为了激活该许可证或接收新的许可证,接受客户机将联系服务器,以刷新许可证,并接收对新子拷贝版本特定的新许可证。在一个实现中,服务器为新子拷贝版本提供激活的许可证。当服务器将许可证提供给客户机时,该服务器基于服务器的撤销列表提供解开子拷贝版本的密钥和撤销列表。
[0231] 在创建新的子拷贝版本之后,服务器将新子拷贝版本移动到目的客户机(块3225)。在一个实现中,为了移动新的子拷贝版本,服务器将新子拷贝版本的另一拷贝以及任何伴随数据(例如许可证)发送到客户机,并删除服务器上的第一个新子拷贝版本。客户机接收并存储该新子拷贝版本。在另一实现中,服务器直接在客户机上创建新子拷贝版本,并因此跳过块3225。在另一实现中,服务器响应来自客户机对新许可证的请求而随后创建并提供子拷贝许可证。
[0232] 在另一实现中,根许可证允许产生有限数量的子拷贝版本。在此情况下,服务器保存产生的子拷贝版本的数量的计数(例如,通过计算已从根许可证产生子拷贝许可证的次数),将拷贝计数存储在根许可证中。如果已达到极限,则服务器不会从绑定实例的源版本中产生另一子拷贝版本。如果通知服务器删除或禁止,则可通过删除或禁止集线器网络中的子拷贝版本来减少拷贝计数。
[0233] 在另一实现中,仅允许客户机具有特定数量的许可证。当客户机接收到新的子拷贝版本和子拷贝许可证时(通过拷贝或移动),该客户机确定是否已经超过许可证上客户机的极限。如果超过,则客户机禁止新子拷贝版本的许可证,直到禁止某些其它许可证以使许可证的数量再次低于该极限为止。
[0234] 在一个实现中,存储客户机设备还可产生存储在客户机上的子拷贝版本的拷贝。在此情况下,存储客户机设备产生如上参考图32所述的服务器的子拷贝版本。
[0235] 在一个实现中,以类似的方式处理移动子拷贝版本的请求。服务器或客户机接收该请求,并确认许可证允许子拷贝版本移动到指示的客户机。服务器或客户机确认该指示的客户机不在服务器或客户机的撤销列表上。如果确认成功,则服务器或客户机将子拷贝版本和任何相应数据(例如许可证)移动到指示的客户机。
[0236] 在另一实现中,客户机可在没有确认的情况下移动和拷贝子拷贝版本,但不会移动或拷贝许可证。类似地,在没有首先确认根许可证和撤销列表的情况下,服务器可创建和分配子拷贝版本。在此情况下,服务器和客户机可没有限制地将子拷贝版本分配给顺从性和非顺从性设备。非顺从性设备将不能够呈现锁定内容数据,但可将子拷贝版本传到顺从性设备。在能够呈现子拷贝版本的锁定内容数据之前,接受顺从性设备将得到许可证(例如,如子拷贝版本标题中的许可授权信息所指示的)。在另一实现中,客户机可移动许可证的拷贝,以将该许可证提供给断开的成员客户机。
[0237] 当服务器和客户机将子拷贝版本提供给不是集线器网络成员的顺从性设备时,服务器和客户机不给子拷贝版本提供有效许可证。接受者随后使用存储在子拷贝版本中的许可授权信息来获得有效许可证。以这种方式,顺从性设备可将子拷贝版本分配给其它集线器网络。
[0238] 在备选实现中,以绝对项定义本地环境,诸如以定义的地点为中心半径为100米的圆。例如,可将媒体限制于在特定物理位置使用,诸如限制在特定建筑物的绝密文件。如上所述,当设备离开本地环境时,该设备从集线器网络断开(虽然该设备仍可以是成员)。在此情况下,服务器可从其自己的集线器网络断开,并因此在断开服务器时,没有设备能够刷新该集线器网络的许可证,包括服务器。在另一备选实现中,集线器网络不受本地环境限制。在此情况下,当设备不能与服务器通信时(例如,物理或网络连接中断时),该设备不能刷新许可证。
[0239] 用电子硬件、计算机软件或这些技术的组合来实现本发明的各种实现。大多数实现包括由可编程计算机执行的一个或多个计算机程序。例如,参考图17,在一个实现中,服务器/客户机设备1705、服务器设备1715、存储客户机设备1720和非存储客户机设备1725中的每一个都包括执行实现上述客户机和服务器操作的软件的一个或多个计算机。通常,每个计算机都包括一个或多个处理器、一个或多个数据存储部件(例如,易失性或非易失性存储模块,以及持久的光存储设备和磁存储设备,诸如硬盘和软盘驱动器、CD-ROM驱动器和磁带驱动器)、一个或多个输入设备(诸如鼠标和键盘)以及一个或多个输出设备(例如显示控制台和打印机)。在一些实现中,计算机包含在消费电子设备中。
[0240] 计算机程序包括可执行代码,该代码通常存储在持久存储媒介中,并然后在运行期拷贝到存储器中。处理器通过以规定顺序从存储器中检索程序指令来执行该代码。在执行程序代码时,计算机从输入和/或存储设备接收数据,对数据执行操作,且然后将结果数据传递到输出和/或存储设备。
[0241] 已经描述了本发明的各种说明性实现。然而,本领域的技术人员会发现附加实现也是可能的,并且其在本发明的保护范围之内。某些实现包括少于上述所有方面和/或各方面的变化。例如,当以上描述集中在使用描述为音频和/或视频数据的内容拷贝的实现时,该拷贝也可以是其它类型数据,诸如数值数据或可执行软件代码。
[0242] 相应地,本发明并不仅局限于上述那些实现。