专利名称:通信设备、密钥服务器、管理服务器、通信服务器、内容分配系统以及通信方法
技术领域:
本发明涉及一种从其他通信设备接收用加密密钥加密的加密内容的通信设备, 一种传 输用于解密该加密内容的解密钥的密钥服务器, 一种在其内存储当通信设备访问其他通信 设备时所使用的信息的管理服务器, 一种通信服务器, 一种内容分配系统以及一种通信方 法。
背景技术:
一般而言,被用来分配内容的系统包括"单服务器"系统以及"分配服务器"系统。在 单服务器系统中,举例来说, 一个内容服务器经由网络被连接到许可服务器和客户以将 内容从内容服务器分配到每一个客户。分配的内容被加密,并且有关加密处理的密钥信 息被存储在许可服务器中。内容服务器在其内存储内容作为E(KT)[C]。在该表达式中, "KT"是被称为标题密钥的密钥,而"C"是明文内容。E(KT)[C]意指用"KT"将"C" 加密。密钥信息含有"KT"。客户B从许可服务器获取密钥信息,用对于客户(即,客 户B)是唯一的密钥KB将密钥信息加密,并在其内存储与己经从内容服务器接收的内容 E(KT)[C]对应的加密的密钥信息。然后,客户B用密钥KB将密钥信息解密,取出标题密 钥KT,并且用标题密钥KT将内容E(KT)[C]解密。因此,客户B能够使用该内容。
在该构造中,当客户B从内容服务器下载内容E(KT)[C],客户B和内容服务器相互之 间执行验证处理和密钥交换处理。结果,客户B与内容服务器共用临时密钥KtmpB。内 容服务器用临时密钥KtmpB将内容E(KT)[C]加密,并将内容E(KtmpB)[E(KT)[C]]传输给 客户B。客户B使用与内容服务器共用的临时密钥KtmpB将内容E(KtmpB)[E(KT)[C]]解 密,作为上述的认证和密钥交换处理的结果并且取出E(KT)[C]。在该构造中,即使加密 的内容E(KtmpB)[E(KT)[C]]通过网络中的途径被非法读取,也不可能将非法读取的内容 解密,除非可以得到临时密钥ktmpb。换句话说,使用对于每一个客户都不同的临时密 钥将内容加密,以使内容对于每一个客户都是个别化的。结果,可以防止内容的非法使 用。举例来说,通过使为客户A构造的临时密钥KtmpA和为客户B构造的临时密钥KtmpB 彼此不同,分配给客户A的内容E(KtmpA)[E(KT)[C]]和分配给客户B的内容
10E(KtmpB)[E(KT)[C]]是互不相同的个别化的数据段。通过用这样的方式用互不相同的加 密密钥使内容个别化,可以防止内容的非法使用。
然而,在单服务器系统中,因为在每一个客户和内容服务器之间执行的通信是一对 一的方式,当大量客户试图从内容服务器接收内容的分配时,分配效率水平降低的问题 出现了。
另一方面,分配服务器系统的实例包括被称为比特洪流(BitTorrent)的使用对等 (peer-to-peer, P2P)网络(举例来说,参见,BitTorrent协议规范1.0版本)的内容分配 系统。在该系统中,对于每一个内容都分别不同的追踪器(tracker),播种者(seeder), 和吸收者(leecher)通过使用P2P网络彼此连接。此外,每一个分配的内容被分成多段。 播种者是分配构成用于分配(即,上载)内容的内容的段的节点。吸收者是接收构成内 容的段并为接收(即,下载)内容的目的分配构成内容的段的节点。换句话说,当吸收 者已经获取构成内容的某些段时,吸收者可以变成播种者。因此, 一些播种者是在他们 作为吸收者已经接收到构成内容的一部分或所有的段的之后变成播种者,并且其他播种 者是每一个都设置于系统侧(预先或者分配期间)的播种者(从一开始)。后一种类型 的播种者将被称为初始播种者。初始播种者在其内存储部分或者所有的构成一个内容的 段。在下面的说明中,"播种者"既代表播种者也代表初始播种者,除非另有说明。一 个节点代表吸收者,播种者和初始播种者中的一个。追踪器在其内存储与每一个节点有 关的节点信息。当吸收者已经访问追踪器时,追踪器为吸收者提供节点信息。
在该构造中,当吸收者将要接收内容的分配时,吸收者首先获得被称为洪流文件 (Toirent File)的信息。举例来说,洪流文件是从提供销售内容的服务给内容供应商或 者使用者的服务器(以下,"销售服务器")供至另一个节点或者另一个销售服务器,并 进一步由其他节点或者其他销售服务器供给吸收者。另外,另一个安排是可接受的,在
其中洪流文件被记录在类似高密度磁盘只读存储器(CD-ROM)的记录介质上并被离线 分配给吸收者。洪流文件在其内存储与内容和内容的文件信息相关的追踪器信息。追踪 器信息含有追踪器的连接目的地。文件信息含有,举例来说,构成内容的段的散列信息 (hash information)。散列信息被用于检查段的完整性。换句话说,散列信息被用于计 算吸收者下载的段的散列值,用散列信息中的段的散列值与计算所得的散列值比较,并 进行检查以查看接收到的段有没有被损坏。
当已经获得洪流文件时,吸收者基于追踪器信息连接到追踪器。追踪器将如上所述 的节点信息传输给吸收者。节点信息含有一个或多个节点的连接目的地的列表。吸收者基于节点信息连接到多个节点。就通过节点分配的段而言,经常是对于每一个节点来说 段往往是互不相同的。因为吸收者能够从多个节点接收互不相同的段,吸收者能高速接 收内容。
如上面说明的,在这样的使用P2P网络的内容分配系统中,内容被存储为在多个节
点中分配。因此,在这样的系统中,即使大量节点试图接收内容,每一个节点都能经由
P2P网络从多个其他节点接收内容。因此,P2P内容分配系统比单服务器系统具有更高水 平的分配效率。
日本专利No.3917395公开了一种内容分配方法,通过该方法将内容分成多段,并且 对于每一段,通过使用多个加密密钥将段加密生成多个加密的段。
在如比特洪流协议规范1.0版本中描述的可以通过多个节点分配内容的内容分配系 统中,还期望能够用加密处理保护分配的内容,以致可以防止内容的非法使用。然而, 在这样的内容分配系统中,不同于在单服务器系统中,由互不相同的吸收者接收到的加 密的内容必须对所有的吸收者是相同的。因此,难以将个别地加密的内容分配给每一个 吸收者。因此,如果用于解密加密的内容的一个密钥被公开,存在这样的可能性,可以 解密所有存在于网络中的大量同样的加密的内容。
日本专利No. 3917395中公开的内容分配方法要求每一个将要接收内容的分配的使 用者应该获得所有的加密段。因此,当该内容分配方法没有任何修改而应用于P2P内容 分配系统时,存在分配效率的水平被降低的可能性。进一步,即使存在多个用于解密加 密的内容的密钥,如果密钥被公开,存在不需要合法地获得解密密钥就可以将内容解密 的可能性。
发明内容
根据本发明的一个方面,提供了一种接收构成一部分内容的多个段的通信设备。多个 第一加密的段由通过第一加密密钥加密该段生成。第二加密的段通过用第二加密密钥将该 段中的至少一个加密生成。用于加密同样的段的第一加密密钥和第二加密密钥彼此不同。 通信设备包括从其他通信设备接收用于每一个段的第一加密的段和第二加密的段中的任
意一个的内容接收单元;将用于请求用于解密第一加密的段和第二加密的段中的任意一个
的解密密钥的请求消息传输到密钥服务器;以及响应请求消息从密钥服务器接收解密密钥
的密钥接收单元。
此外,根据本发明的另一个方面,提供了一种接收构成一部分内容的多个段的通信设备。多个第一加密的段通过用第一加密密钥加密该段生成。第二加密的段通过用第二加密 密钥将该段中的至少一个加密生成。用于加密同样的段的第一加密密钥和第二加密密钥彼 此不同。通信设备包括在其内存储用于每个段的第一加密的段和第二加密的段中任意一个
的存储单元;接收用于从其他通信设备请求第一加密的段和第二加密的段中任意一个的所
有或部分数据的段请求的请求接收单元;以及将在段请求中请求的所有或者部分数据传输 到其他通信设备的传输单元。
此外,根据本发明的另一个方面,提供了一种与接收构成一部分内容的多个段的通信 设备通信的密钥服务器。多个第一加密的段通过用第一加密密钥加密该段生成。第二加密 的段通过用第二加密密钥将该段中的至少一个加密生成。用于加密同样的段的第一加密密 钥和第二加密密钥彼此不同。通信设备从其他通信设备接收用于每一个段的第一加密的段 和第二加密的段中的任意一个。密钥服务器包括从通信设备接收用于请求用于解密用于每 一个段的第一加密的段和第二加密的段中任意一个的解密密钥的请求消息的接收单元; 在其内存储解密密钥的第一存储单元;基于在请求消息中请求的解密密钥的组合判定是否 传输解密密钥的判定单元;以及当判定单元判定传输解密密钥时,从第一存储单元读取在 请求消息中请求的组合中的解密密钥,并将解密密钥传输到通信设备的密钥传输单元。
此外,根据本发明的另一个方面,提供了一种与接收构成一部分内容的多个段的通信 设备通信的管理服务器。多个第一加密的段通过用第一加密密钥加密该段生成。第二加密 的段通过用第二加密密钥将该段中的至少一个加密生成。用于加密同样的段的第一加密密 钥和第二加密密钥彼此不同。通信设备从其他通信设备接收用于每一个段的第一加密的段 和第二加密的段中的任意一个。管理服务器包括在其内存储用于访问其他通信设备的连接 目的地信息的第一存储单元;选择由加密该段中至少一个所获得的第一加密的段和第二加 密的段中任意一个的选择单元;以及从第一存储单元读取连接目的地信息,并将连接目的 地信息和选择第一加密的段和第二加密的段中任意一个所指定的播种者信息传输到通信 设备的传输单元。
此外,根据本发明的另一个方面,提供了一种接收构成一部分内容的多个段的通信设 备。多个第一加密的段通过用第一加密密钥加密该段生成。第二加密的段通过用第二加密 密钥将该段中的至少一个加密生成。第三加密的段通过用第三加密密钥将该段中的至少一 个加密生成。用于加密同样的段的第一加密密钥,第二加密密钥和加密密钥彼此不同。通 信设备从其他通信设备接收用于每一个段的第一加密的段和第二加密的段中的任意一个。 通信服务器包括在其内存储第三加密的段的第一存储单元;当第三加密的段被传输到通信 设备时,在其内存储用于识别通信设备的识别信息的第二存储单元;从通信设备接收用于请求第三加密的段的特殊段请求以及含有用于识别通信设备的识别信息的第一接收单元; 以及当含在特殊段请求中的识别信息未被存储在第二存储单元中时,从第一存储单元读取 第三加密的段,并将第三加密的段传输到通信设备的第一传输单元。
图l是根据本发明的第一实施例的内容分配系统的框图2是用于说明内容如何被分成多段的示意图3是加密的段的示意图4是存储在播种者中的加密的段的实例的示意图5是存储在播种者中的加密的段的另一个实例的示意图6是存储在播种者中的加密的段的又一个实例的示意图7是段信息的数据结构的实例的图8是吸收者的示例性功能图表;
图9是洪流文件的实例的图10是密钥服务器的示例性功能图表;
图ll是节点信息的数据结构的实例的图12是内容分配处理中的过程的流程图13是比较处理中的过程的流程图14是根据第一实施例的变型例的洪流文件的数据结构的实例的图15是根据第一实施例的另一个变型例的含有散列值的索引信息的实例的图16是根据第一实施例的另一个变型例的比较处理中的过程的流程图17是根据本发明的第二实施例的追踪器的功能框图18是播种者数据库的数据结构的实例的图19是播种者信息的实例的图20是内容分配处理的流程图21是索引生成处理中的过程的流程图22是播种者信息的实例的图23是根据第二实施例的变型例的播种者信息的实例的图; 图24是根据第二实施例的另一个变型例的播种者信息的实例的图; 图25是根据第二实施例的另一个变型例的含有散列值但不含有连接目的地信息的播种者信息的实例的示意图26是根据第二实施例的另一个变型例的索引生成处理中的过程的流程图;
图27是根据本发明的第三实施例的比较处理中的过程的流程图28是根据第三实施例的变型例的密钥服务器的示例性图表;
图29是根据本发明的第四实施例的段信息的数据结构的实例的图30是根据第四实施例的内容分配处理中的过程的流程图31是根据第四实施例的变型例的段信息的数据结构的实例的图32是根据第四实施例的另一个变型例的段信息的数据结构的实例的图33是根据第四实施例的又一个变型例的内容分配处理中的过程的流程图;
图34是根据第四实施例的又一个变型例的内容分配处理中的过程的流程图;
图35是根据第四实施例的又一个变型例的内容分配处理中的过程的流程图;
图36是根据第四实施例的又一个变型例的内容分配处理中的过程的流程图;
图37是根据本发明的第五实施例的吸收者的示例性功能图表;
图38是根据第五实施例的段请求的数据结构的实例的图39是根据第五实施例的内容分配处理中的过程的流程图40是根据第五实施例的下载处理和上载处理中的详细过程的流程图41是根据第五实施例的变型例的播种者的示例性功能图表;
图42是根据本发明的第六实施例的内容分配系统的图表;
图43是根据第六实施例的循环的加密的段和非循环的加密的段的实例的图; 图44是根据第六实施例的余量服务器的示例性功能图表; 图45是根据第六实施例的内容分配处理中的过程的流程图;以及
图46是根据第六实施例的余量服务器执行的比较处理中的过程的流程图。
具体实施例方式
下面将参照附图详细说明本发明的示范性实施例。 图l是根据本发明的第一实施例的内容分配系统的框图。在根据第一实施例的内容分
配系统中,吸收者50A, 50B,追踪器51,播种者52A, 52B, 52C,和销售服务器54经由 P2P网络NT连接在一起。吸收者50A和50B的每一个都经由如因特网(未显示)的网络被连 接到密钥服务器53。在该情形中,吸收者50A和50B和播种者52A, 52B和52C的每一个都是 节点。播种者52A, 52B和52C的每一个都在其内存储通过用互不相同的加密密钥加密的段所获得的加密的段,在这些段内多个内容已经被分割。在下面的说明中,用这样的加密的 段构成的内容将被称为加密的内容。这样的加密的内容的细节将在后面说明。播种者52A, 52B和52C中,播种者52A起着如上面所说明的初始播种者的作用。播种者52A在其内存储 所有的加密的段,加密的段是通过每段使用多个加密密钥加密构成内容的每一段所生成 的。追踪器51在其内存储被用来访问每一个节点的节点信息。假设节点识别信息的一段被 分派给每一个节点。节点识别信息的每一段都是唯一地标识节点的信息,举例来说,可以 是节点的IP地址。密钥服务器53在其内存储被用来解密加密的段的解密密钥。销售服务器 54在其内存储洪流文件。
吸收者50A从销售服务器54接收洪流文件,通过基于洪流文件访问追踪器51获得节点 信息,通过基于获得的节点信息访问播种者52A, 52B, 52C以及吸收者50B中的至少一个 接收解密的段,获取对应于段的所有加密的段,并从密钥服务器53接收含有解密密钥的密 钥环(keyring),其中解码密钥被分别用来解密加密的段。吸收者50B也执行同样的处理。 在下面的说明中,在吸收者50A和50B不需要彼此区别的情况中,它们中的每一个都被简单 地称作吸收者50。同样地,在播种者52A, 52B和52C不需要彼此区别的情形中,它们中的 每一个都被简单地称作播种者52。
接下来,将说明内容的构造。内容是任何不同类型的数字数据,诸如活动图像专家组 (MPEG) 2和MPEG4的活动画面数据和音频数据以及文本数据和静止图像数据。此外, 通过加密这样的数字数据所获得的数据也将被称作内容。举例来说,通过加密根据高级访 问内容系统(AACS, Advanced Access Content System)规范的视频内容准备的高清晰度数 字式通用碟片(HDDVD)所获得的数据也可以用作内容。在下面的说明中,全部的内容 将被标识为"C"。内容"C"可以是明文的或者加密的。图2是用于说明内容如何被分割 成多段的示意图。举例来说, 一个内容(即,本实例中的内容C)被分成如N段(N>1)的 许多段,这些段被标识为C1到CN。段Cl, C2,……,CN的数据长度可以全部相同或彼此 不同。段C1到CN,其数量等于"N",用互不相同的加密密钥加密。在该情形中,对于N 个段,"a"个段中的每一段通过每段使用"m"个互不相同的加密密钥加密(例如,第一 加密密钥和第二加密密钥)。剩下的数量等于"N-a"的段中的每一段,通过每段使用一 个加密密钥(即,第一加密密钥)加密。换句话说,对于数量等于"a"的一些段的每一个, 用互不相同的数量等于"m"个的加密密钥将该段加密,从而生成互不相同的数量等于 "m"个的段(B卩,加密的段)。对于其他的数量等于"N-a"的段中的每一个,用一个加 密密钥将该段加密以对于一个段生成一个加密的段。图3是加密的段的示意图。通过区别
16出的"m"个加密的段而获得的加密的段的组合,可 以使全部的由"N"个加密的段构成的加密的内容个别化。
接下来,将说明诸如吸收者50,追踪器51,播种者52和密钥服务器53的设备中的每一 个的硬件配置。每一个设备都包括诸如中央处理单元(CPU)的行使设备的全面控制的 控制装置;诸如只读存储器(ROM)和随机存取存储器(RAM)的在其内存储各种类型 数据和各种类型计算机程序(以下,"程序")的存储装置;诸如硬盘驱动器(HDD)和高 密度磁盘(CD)驱动装置的在其内存储各种类型数据和各种类型程序的外部存储装置;和 将这些组成元件彼此连接的总线。每一个设备都具有常用的计算机能够应用的硬件配置。 此外,显示信息的显示装置,诸如键盘和鼠标的接收来自使用者的指令输入的输入装置, 以及控制与以有线或无线方式连接到每一个设备的外部设备的通信的通信接口 (I/F)。
接下来,将说明当播种者52的CPU执行存储在存储设备和外部存储装置中的各种类型 的程序时,在如上所述的硬件配置中实现的各种类型的功能。播种者52在其内存储已经由 加密构成内容C的多个段C1到CN获得的加密的段,分别与用于解密段C1到CN的解密密钥 的索引(即,后缀)对应。解密密钥可以和加密密钥一样或者可以不同于加密密钥。在两 种情形中的一种情形下,因为段C1到CN已经用加密密钥分别加密,可以通过使用对应于 被用来解密该加密的段的解密密钥的索引来识别每一个加密的段。这些加密的段被保存 在,例如,外部存储装置中。
为简化后续部分中的说明,假设加密密钥与解密密钥分别相同。在每一个解密密钥的 索引可以表示为(ij),以及解密密钥被表示为K(U)的情况中,每一个加密的段可以被表示
为如下所示
E,)) [Cj〗
这里i利每一个都是满足l《《mltn^^n(m〉1)的整数;对互不相同的索弓l(ij)和(i'j'), 这里可以满足(ij)^(i,j,),K(ij^K(i,j,)。
由加密的段组成的加密的内容可以表示为如下所示,例如 讽K(iI,l)) [Cl〗,E(K(i2,2)) [C2],…,E(K(iN,N)) [CN]} 这里满足l《il,…,iN^m。
加密的内容中的加密的段的序列用加密的段的索引的组合表示且可以被表示为如下 所示,例如(下面的实例中,对应于段C1到CN的索引被从左边开始安排在一行中) 肌l),(i2,2),…,(iN,N" 这里满足l《il,…,^^m。
17从而,保存在播种者52中并同时保持加密的段与索引相对应的可以被表示为如下所
示
((E(K(il,l))[Cl],(i1,1)), E(K(i2,2))[C2],(i2,2)),…,E(K(iN,N)) [CN], (iN,N)) } 这里满足l《il,…,iN^m。
进一步,作为初始播种者的播种者52A,在其内存储所有的已经通过每段使用多个加 密密钥对分别对应于组成内容的段的加密的段加密所生成的加密的段。图4是存储在播种 者52A中的加密的段的实例的图示。在图4中,所指出的是,N个段中,通过每段使用多个 互不相同的加密密钥对"a"个段中的每一个进行加密(其中l〈a〈N)。在图4中所示的实例 中,对于不同的段用来加密,每一个段的加密密钥的数目不相同。被用来加密段C1的加密 密钥的数目是m,其中被用来加密段C3的加密密钥的数目是2。然而,根据第一实施例,在 其中被用来加密每一个段的加密密钥的数目对于所有的段来说是相同的另一种安排是可 接受的。在段处理设备中,利用该安排,其中在N个段中,"a"个段中的每段都通过每段 使用多个互不相同的加密密钥加密(其中l〈a〈N),可以有一种构造以使,例如重要等级 越高,加密密钥的数目越大。
第一实施例不限于如上所述的实例。例如,如图5所示的在其中满足"a=N"的另一种 安排是可接受的,以使所有的N个段中的每段通过每段使用"m"个互不相同的加密密钥 来加密。使用该安排,可以增加加密的段的序列的变化的数量。进一步,如图6所示的在 其中"a-l"的另安排也是可接受的,以使只对N个段中的一个用"m"个互不相同的加密 密钥加密。用该安排,可以提高分配效率的水平。
在如上所述的构造中,当被吸收者50访问时,播种者52将段信息传输到吸收者50,段 信息指示保存在播种者52中的加密的段的序列。图7是段信息的数据结构的实例的图示。 在图7中,所指示的是对应于段C1的加密的段将用解密密钥K(1,1)解密,而对应于段C2的加 密的段将用解密密钥K(3,2)解密。换句话说,段信息指示加密的段和每个都被用于解密加 密的段中的不同的一个的解密密钥之间的对应关系。当已经从基于段信息请求加密的段的 吸收者50处接收到段请求的时候,播种者52判断所要求的加密的段是否存储在其内。在判 断处理的结果是肯定的情形中,播种者52将所请求的加密的段传输给吸收者50。
接下来,将说明当吸收者50的CPU执行存储在存储装置和外部存储装置中各种类型的 程序时,在如上所述的硬件构造中实现的各种类型的功能。图8是吸收者50的示例性功能 图表。吸收者50包括内容获取单元500,密钥环请求单元501,密钥环获取单元502,内容 解密单元503。当CPU执行程序时,这些组成元件中的每一个的实体在存储装置(例如,RAM)中生成。
内容获取单元500经由P2P网络NT从至少一个播种者52接收组成加密的内容的加密的 段。更具体地说,内容获取单元500首先从销售服务器54接收洪流文件。洪流文件包含追 踪器信息,该追踪器信息包括被用来连接到追踪器51的追踪器连接目的地信息和指示由哪 些加密的段组成加密的内容的文件信息。图9是洪流文件的实例的图示。在图9中,对于文 件信息,对应于加密的段的索引被显示为用来识别每一个加密的段的信息。追踪器连接目 的地信息可能是,例如,追踪器51的IP地址或者资源定位码(URL, Uniform Resource Locator) ■
基于洪流文件,内容获取单元500经由P2P网络NT访问追踪器51并从追踪器51接收用于 访问连接到P2P网络NT的其他节点(例如,播种者52及其他吸取者50)的节点信息。(节 点信息将在后面说明。)在此之后,基于节点信息,内容获取单元500访问至少一个节点 并获取指示存储在节点中的加密的段的序列的段信息。然后,基于段信息,内容获取单元 500将段请求传输到至少一个节点以请求一个或多个组成加密的内容的加密的段。通过接 收响应于段请求所传输的加密的段,内容获取单元500获取所有的组成加密的内容的加密 的段(以下,"段序列")。例如,在如图3所示的加密的段中,内容获取单元500获取所有 的加密的段,其用作为段序列的阴影线显示。
密钥环请求单元501将请求消息传输到密钥服务器53以请求用来解密段序列的密钥 环。密钥环包含用来解密与加密的段的序列对应的段序列中的加密的段的解密密钥。将在 后面说明密钥环和解密密钥。请求消息包含作为指定包含在密钥环中的解密密钥的序列的 信息的索引信息,索引信息指示段序列中的加密的段的索引的组合(即,序列)。
例如,序列可以表示为如下所示
(il, 1),(i2,2), .,.,(iN,N)
这里满足l《il,…,il^m。
密钥环获取单元502接收响应于请求消息而已经从密钥服务器53传输的密钥环。内容 解密单元503用包含在通过密钥环获取单元502获取的密钥环中的并且分别对应于加密的 段的解密密钥,将已经通过内容获取单元500获取的加密的段解密。内容解密单元503因而 获取由解密处理产生的段组成的内容。
存在一种吸收者50起着播种者作用的情形,如上面所说明的;然而,因为播种者的功 能构造已经在播种者52的描述中被说明,因此将省略对它的说明。
接下来,将说明当密钥服务器53的CPU执行存储在存储装置和外部存储装置中的各种类型的程序时,所实现的各种类型的功能。图10是密钥服务器53的示例性功能图表。密钥 服务器53包括控制单元530,包(packet)处理单元531,网络接口单元532,认证和密钥交 换处理单元533,密钥存储单元534,序列信息存储单元536,序列信息比较单元535和密钥 提供单元537。当CPU执行程序时,诸如控制单元530,序列信息比较单元535,网络接口单 元532,包处理单元531,认证和密钥交换处理单元533和密钥提供单元537的每一个单元的 实体在存储装置中生成。例如,密钥存储单元534被存储在外部存储装置中。
控制单元530控制全部的密钥服务器53并还将来自序列信息比较单元535的指令过渡 到密钥提供单元537。包处理单元531将要被传输到诸如吸收者50的外部设备的数据封包并 将包转发到网络接口单元532。包处理单元531还基于从网络接口单元532转发的包获取数 据。网络接口单元532控制与外部设备的通信,将从包处理单元531转发的封包的数据传输 到外部设备,并将从外部设备接收的包转发到包处理单元531。
认证和密钥交换处理单元533经由网络接口单元532接收来自吸收者50的请求消息,与 吸收者50执行相互验证处理,并且,在结束验证过程之后,将接受消息传输到吸收者50以 指示请求已经被接受。
例如,密钥存储单元534被设置在诸如硬盘驱动器(HDD)的外部存储装置中并在其 内存储用来解密加密的段的解密密钥。如上面说明的,例如,每一个解密密钥可以被表示 为K(ij)。
例如,序列信息存储单元536被设置在例如硬盘驱动器的外部存储装置中并在其内存
储指示分别对应于所有的过去被传输到吸取者50的密钥环的序列的序列信息。例如,如同
在如上所述的索引信息中所指示的序列,分别对应于密钥环的序列可以表示为如下所示
{(il,l),(i2,2), '..,(iN,N) } 这里满足1《il,…,iN^m。
序列信息比较单元535将存储在序列信息存储单元536中的序列信息同从吸收者50接
收的索引信息进行比较,并判定对应于索引信息中指示的序列的密钥环是否应该被传输。 更具体地说,在序列信息存储单元536在其内未存储指示与索引信息中指示的序列相同的 序列的序列信息的情形中,序列信息比较单元535判定对应于索引信息中指示的序列的密 钥环应该被传输。例如,密钥环可以被表示为如下所示(在下面的实例中,分别对应于段 C1到CN的解密密钥被安排在从左边开始的行中)-
脚l,l), K(i2,2),…,K(iN,N"
这里满足l《il, ,i^^m。
在序列信息比较单元535已经判定密钥环应该被传输的情形中,序列信息比较单元535
20经由控制单元530通知密钥提供单元537将密钥环传输给吸收者50。相反地,在序列信息比 较单元535已经判定密钥环不应该被传输的情形中,序列信息比较单元535经由控制单元 530通知密钥提供单元537将密钥环传输到吸收者50是禁止的。
根据从序列信息比较单元535接收的经由控制单元530发出的密钥环应该被传输的通 知,密钥提供单元537从密钥存储单元534读取出对应于密钥环的序列的解密密钥,并将包 含读取的解密密钥的密钥环经由网络接口单元532传输到吸收者50。
接下来,将说明追踪器51的构造。当被吸收者50访问的时候,追踪器51将节点信息传 输到吸收者50,节点信息用于访问连接到P2P网络NT的节点。节点信息包含每一个都是由 不同的节点的IP地址和端口号组成的集合。图ll是节点信息的数据结构的实例的图示。在 图11中,每一个节点A和B都是吸取者50A和50B以及播种者52A, 52B和52C中的任意一个, 并且由IP地址和端口号组成的集合分别用于显示每一个节点。
接下来,将说明追踪器51如何生成节点信息。假定在其内存储包含用来连接追踪器51 的追踪器连接目的地信息的洪流文件的节点还在其内存储加密的段。节点引用包含在洪流 文件中的追踪器连接目的地信息,访问追踪器51并将用于识别节点本身的IP地址和端口号 传输到追踪器51。追踪器51通过使用己经接收的段信息,IP地址和端口号生成节点信息。
接下来,将参照图12说明在根据第一实施例的内容分配系统中执行的内容分配处理的 过程。吸收者50能够从任何其他的吸取者50接收加密的段;然而,在下面的说明中,为了 说明的方便,假定吸收者50从播种者52A, 52B和52C中的至少一个接收加密的段。
首先,吸收者50访问销售服务器54并获取洪流文件(步骤S1)。然后,吸收者50通过 使用包括在洪流文件中所含的追踪器信息中的追踪器连接目的地信息访问追踪器51 (步骤 S2〉。追踪器51然后将节点信息传输到吸收者50 (步骤S3)。当吸收者50已经接收节点信 息时(步骤S4),举例来说,吸收者50通过使用节点信息访问播种者52A, 52B,和52C中的 至少一个(步骤S5)。当播种者52被吸收者50访问时,播种者52将段信息传输到吸收者50 以指示存储在其内的加密的段的序列(步骤S6)。
当吸收者50已经接收到段信息时(步骤S7),吸收者50通过使用段信息访问播种者52 中的至少一个(步骤S8)。吸收者50将段请求传输到播种者52以请求,对于段C1到CN的 每一个的,多个可能对应于段存在的加密的段中的至少一个,以使吸收者50能够接收加密 的段。响应来自吸收者50的请求,播种者52将存储在其内的加密的段传输到吸收者50 (步 骤S9)。更具体地说,例如,通过使用由访问播种者52B已经接收到的段信息,吸收者50 判断播种者52B是否在其内存储有通过对段Cl加密获得的加密的段E(K(il,l))[Cl](这里il是满足l《il《m的整数)中的对应于"il=l"的加密的段。在判断处理的结果是肯定的情形 中,吸收者50访问播种者52B并通过从播种者52B接收其来获取加密的段E(K(1,1))[C1]。在 播种者WB事实上在其内没有存储加密的段E(K(1,1))[C1]的情形中,吸收者50接着访问另一 个播种者52 (例如,播种者52C)并从其他播种者获取段信息(例如,播种者52C)。以与 上述同样的方式,通过使用段信息,吸收者50判断播种者是否在其内存储加密的段。在判 断处理的结果是肯定的情形中,吸收者50访问播种者52C并尝试获取加密的段。通过重复 上述的处理,吸收者50获取由加密的段组成的加密的内容{E(K(il,l))[Cl], E(K(i2,2))[C2],…,E( K(iN,N))[CN]}。
作为要获取的目标,吸收者50能够任意地选择可能对应于段Cj (这里1^N)存在的 多个加密的段中的任意一个。换句话说,对于E(K(il j))[Cj](这里il是满足l《il《m的整数), 吸收者50能够任意地将"il"设定为从"r'到"m"中的任何一个值。从而,已经由吸收者50获 取的对应于段Cl到CN的加密的段的序列((il,),(i2,2),…,(iN,N》是任意的。
当吸收者50已经获取全部的分别对应于组成内容和组成加密的内容的段的加密的段 时,吸收者50将请求消息传输到密钥服务器53,以请求包含用来解密加密的段的解密密钥 的密钥环(步骤SIO)。请求消息包含指示对应于解密密钥的序列的索引信息 肌1),…,,"。
当包括在密钥服务器53中的认证和密钥交换处理单元533已经经由网络接口单元532 接收到请求消息时(步骤Sll),认证和密钥交换处理单元533同吸收者50执行相互验证处 理。在验证处理已经成功地执行的情形中,认证和密钥交换处理单元533将接受消息传输 到吸收者50以指示请求已经被接受(歩骤S12)。当吸收者50己经从密钥服务器53接收到 接受消息时(步骤S13),吸收者50等待将从密钥服务器53传输的密钥环。
另一方面,包括在密钥服务器53中的序列信息比较单元535通过使用包含在已经在步 骤S11中接收的请求消息中的索引信息执行比较处理(步骤S14)。图13是比较处理中的过 程的流程图。在比较处理中,序列信息比较单元535将含在已经在步骤S11中接收到请求消 息中的索引信息同存储在序列信息存储单元536中的序列信息进行比较(步骤S140),并 判断序列信息存储单元536是否在其内存储有指示和索引信息中指示的序列一样的序列的 序列信息(步骤S141)。换句话说,序列信息比较单元535判断吸收者50请求的密钥环是 否在过去被传输到任何一个吸取者50。
在判断处理的结果是否定的情形中(步骤S141:否),序列信息比较单元535判定对 应于在索引信息中指示的序列的密钥环(K(il,l), K(i2,2),…,K(iN,N"应该被传输。如此,
22序列信息比较单元535经由控制单元530通知密钥提供单元537将密钥环传输到吸收者50。 另外,序列信息比较单元535将指示序列的序列信息存储进序列信息存储单元536中(步骤 S142)。密钥提供单元537从密钥存储单元534读取出其传输已经由序列信息比较单元535 经由控制单元530通知的密钥环,并将读取的密钥环经由网络接口单元532传输到吸收者50 (步骤S143)。相反地,在步骤S141中的判断处理的结果是肯定的情形中,序列信息比较 单元535判定密钥环不应该被传输,并经由控制单元530通知密钥提供单元537将密钥环传 输到吸收者50是禁止的(步骤S144)。
返回到图12的描述,在吸收者50已经从密钥服务器53接收到密钥环 ((K(il,l),K(i2,2),…,K(iN,N》的情形中(步骤S15:是),吸收者50使用含在密钥环中的解 密密钥将加密的段(E(K(il,l))[Cl], E(K(i2,2))[C2],…,E(K(iN,N))[CN])解密以获取解密的段 C1到CN,并获取用段C1到CN组成的内容C (步骤S16)。换句话说,吸收者50将通过使用 解密密钥K(il,l)将E(K(il,l)[Cl]解密并获取段Cl,使用解密密钥K(i2,2)将E(K(i2,2))[C2]解 密并获取段C2,以及使用解密密钥K (iN,N)将E(K(iN,N))[CN]解密并获取段CN。吸收者 50以同样的方式获取其他段。如此,吸收者50已经获取用段C1到CN组成的内容C。
相反地,在如图13所示的吸收者50在步骤S15未接收密钥环并在步骤S143已经接收到 从密钥服务器53传输来的错误信息的情形中,吸收者50不能将已经在步骤S10中获取的段 解密并因此不能使用内容。在该情形中,处理回到步骤S5,以使吸收者50获取与在步骤S10 中获取的序列不同的序列中的加密的段,并再次执行步骤S10及其之后的处理。
如上面说明的,在一个内容经由P2P网络被分配给多个吸取者50的情形中,密钥服务 器53使用加密的段的序列判定密钥环是否应该被传输。在该情形中,因为密钥服务器53避 免重新使用那些已经被用过的序列,可以使内容对于每一个吸取者50个别化。从而,例如, 即使一个密钥环泄露,也只可以将对应于泄漏的密钥环的加密的内容解密。如此,可以阻 止内容的非法使用。另外,通过使用吸收者50任意地获取的加密的段所限定的序列,来取 代预先决定的序列,可以实现灵活的适应P2P网络的内容分配处理。
根据第一实施例,洪流文件不限于如上所述的实例。例如,在其中文件信息包含通过
使用加密的段的散列计算处理所得的散列值的另一种安排是可接受的。例如,加密的段的 散列值可以表示为如下
(hash(E(K(i,j》[Cj])
这里满足l^m和1,。
图14是这样的洪流文件的数据结构的实例的图示。在图14中,显示的是加密的段的散列值和索引之间的对应关系。吸收者50能够通过使用mxn个散列值检查所接收的加密的段 的完整性。进一步,还有在其中洪流文件的创建者或者可靠的第三方(例如,内容创建者) 将数字签名附加到洪流文件的另一种安排是可接受的。在该情形中,除了所接收的加密的 段的完整性外,吸收者50能够检查其真实性。
此外,通过引用这样的洪流文件,可以基于每一个加密的段的散列值识别索引。结果 是,还可以识别用于解密加密的段的解密密钥。
在该构造中,还有在其中播种者52进一步将包含散列值的段信息传输到吸收者50的另 一种安排是可接受的。图15是包含散列值的索引信息的实例的图示。此外在该情形中,吸 收者50能够通过使用散列值检查所接收的加密的段的完整性。 ,
文件信息不需要显示所有的索引。(在上述的实例中,文件信息显示所有的满足l《《m 和l^N的(i,j)的组合)。如果文件信息只显示索引的一部分也是可接受的。
还有在其中洪流文件包含它的版本号和/或与它的有效期有关的信息的另一种安排是 可接受的。在该情形中,吸收者50能够得知所获取的洪流文件是否在获取的时候是有效的。 例如,在其中在所获取的洪流文件在某个特定时间点不是有效的情形中吸收者50获取更新 的洪流文件的安排是可接受的。换句话说,在其中吸收者50通过使用在某个特定时间点获 取的洪流文件幵始获取加密的段的另一种安排是可接受的,以及如果播种者52在其内存储 对应于未知的(对于吸收者50)索引的加密的段,吸收者50从播种者52接收对应于未知的 索引的加密的段,并在己经接收到加密的段之后,吸收者50获取新的洪流文件并检查所接 收的加密的段的完整性和真实性。
根据上述的第一实施例,吸收者50将索引信息放进请求消息并在步骤S10将请求消息 传输到密钥服务器53;然而,本发明不限于该实例。在其中吸收者50在已经接收到接受消 息之后将索引信息传输到密钥服务器53的另一种安排也是可接受的。
在上述的步骤S6中,播种者52在吸收者50已经访问播种者52的时候传输指示存储在其 内的段的序列的段信息;然而,在其中播种者52不需要等待来自吸收者50的访问就将段信 息传输到吸收者50的另一种安排是可接受的。
在上述步骤S9中,播种者52将加密的段传输到吸收者50。另外,对于播种者52来说将 对应的索引传输到吸收者50也是可接受的。例如,在其中如果传输的加密的段是E(K(l,l)) [C1],除了加密的段之外,播种者52还将对应的索引(1,1)传输到吸收者50的安排是可接受 的。
在上述的第一实施例中,吸收者50从播种者52接收加密的段;然而,本发明不限于该实例。在其中吸收者50从任何其他的吸取者50获取加密的段的另一种安排是可接受的。
还有另一种安排是可接受的,在其中,对于每一个分别对应于段C1到CN的加密的段, 吸收者50获取多个互不相同的用于段的加密的段。例如,对于段C1,对于吸收者50来说获 取加密的段E(K(iU))[Cl]和E(K(il,,l)[Cl](这里满足il^il', 1《il^n和l《il《m)是可接受 的。用该安排,当吸收者50从密钥服务器53请求密钥环时,如果包含索引(il,l)的序列己经 被使用,吸收者50不能获取对应于该序列的密钥环,但是如果包含索引(il',l)的序列是可用 的,吸收者50能够从密钥服务器53获取对应于该序列的密钥环而不需要再次访问播种者 52。具有在其中吸收者50预先获取额外的加密的段的安排,吸收者50能够预先准备多个序 列候选。如此,吸收者50能够避免不得不再次访问播种者52的麻烦。
在上述的第一实施例中,在序列信息存储单元536已经在其内存储对应于吸收者50请 求的密钥环的序列的情形中,在步骤S144,包括在密钥服务器53内的序列信息比较单元535 经由控制单元530通知密钥提供单元537将密钥环传输到吸收者50是禁止的;然而,本发明 不限于该实例。另一种安排,在其中例如,在吸收者50已经获取加密的内容E(K(il,l))[C1], E(K(i2,2》[C2],…,E(K(iN,N))[CN]并从密钥服务器53请求对应的密钥环的情形中,如果序 列信息存储单元536已经在其内存储对应于吸收者50请求的密钥环的序列 ((il,l),(i2,2),…,(iN,N",密钥服务器53生成另一个未存储在序列信息存储单元536中的序列 ((il,,l),(i2,2),…,(iN,N》,并将吸收者50应该用其替换另一个加密的段的加密的段E(K(il', l))[Cl]和有关它的索引的信息(本实例中的(il,,l)传输到吸收者50。另外,密钥服务器53 将包含分别地对应于另一个序列((il,,l),(i2,2),…,(iN,N))的解密密钥的密钥环传输到吸收 者50。具有该安排,吸收者50能够避免不得不为了获取对应于在包括在密钥服务器53中的 序列信息比较单元535执行的比较处理中密钥环的传输被许可的序列的加密的段而再次访 问追踪器51的麻烦。在该情形中,密钥服务器53需要在其内预先存储可以被传输到吸收者 50的加密的段。存储的加密的段的数目可以是一个或者超过一个。在密钥服务器53在其内 存储超过一个加密的段的情形中,对于密钥服务器53来说将每一个都作为吸收者50将用其 替换其他的加密的段的多个加密的段(连同与它的索引有关的信息)传输到吸收者50是可 接受的。在序列信息存储单元536还没有在其内存储对应于吸收者50请求的密钥环的序列 ((il,l),(i2,2),…,(iN,N》的情形中,密钥服务器53可能或者可能不执行上述的替换处理。
根据上述的第一实施例,在执行比较处理期间,如果吸收者50请求的密钥环在过去被 至少一次地传输给任何一个吸取者50,序列信息比较单元535通知不应该传输密钥环;然 而,本发明不限于该实例。在其中密钥服务器53被允许将一个密钥环传输诸如两次或更多次的预设次数的另一种安排是可接受的。在该情形中,在同吸收者50执行相互验证处理期 间,包括在密钥服务器53中的认证和密钥交换处理单元533从吸收者50获取用于识别吸收 者50的吸收者识别信息。例如,吸收者识别信息可以是,吸收者50的IP地址,吸收者50的 端口号,吸收者50的媒体存取控制(MAC, Media Access Control)地址,或者订阅者ID, 或者它们任意的组合。序列信息比较单元535将指示密钥环的序列的序列信息,吸收者识 别信息和指示用吸收者识别信息识别的吸收者50己经请求多少次密钥环的传输的使用次 数值存储进序列信息存储单元536中,同时保持这些信息段彼此对应。图16是根据本变型 例的比较处理的过程的流程图。在步骤S140到S141执行的处理同根据第一实施例的那些相 同。在步骤S141的判断处理的结果是肯定的情形中,也就是说,在序列信息存储单元536 已经在其内存储指示与吸收者50请求的密钥环的序列相同的序列的序列信息的情形中,序 列信息比较单元535引用存储在序列信息存储单元536中的对应于序列信息和吸收者50的 吸收者识别信息的使用次数值,并判断使用次数值是否等于或者小于预定值(步骤S140A)。 在判断处理的结果是肯定的情形中,序列信息比较单元535通过逐一增加来更新存储在序 列信息存储单元536中的对应于序列信息和吸收者识别信息的使用次数值(步骤S140B), 并执行如上所述的在步骤S143的处理。相反地,在步骤S141的判断处理的结果是否定的情 形中,序列信息比较单元535执行如上所述的步骤S142及其之后的处理。在步骤S140A的判 断处理的结果是否定的时候,序列信息比较单元535执行与上述的步骤S144相同的处理。
具有这样的安排,可以多次使用同样的加密的段的序列,而不是仅仅一次。如此,可 以实现更灵活的内容分配处理。
在上述的第一实施例中,节点信息指示节点的IP地址和端口号;然而,本发明不限于 该实例。在其中节点信息指示节点的MAC地址的另一种安排是可接受的。还有在其中节点 信息指示当订阅内容分配服务时被分配给订阅者的订阅者ID的另一种安排是可接受的。在 该情形中,如果每一个节点传输给追踪器51,节点的IP地址,节点的MAC地址,订阅者ID 和URL中的至少一个作为节点识别信息就足够了 。
进一步,在上述的第一实施例中,当追踪器51生成节点信息时,每一个节点将接收到 的段信息,IP地址和端口号传输到追踪器51;然而,本发明不限于该实例。在其中每一个 节点除了段信息,IP地址和端口号之外,还将洪流文件识别信息传输到追踪器51的另一种 安排也是可接受的。洪流文件识别信息可以是,例如,所有的或部分的洪流文件的散列值 或者洪流文件的文件名。换句话说,在洪流文件具有显示它的ID的字段的情形中,如果洪 流文件识别信息是所显示的ID的值也是可接受的。在该情形中,在其中当追踪器51除了已经接收的段信息,IP地址和端口号还接收到了洪流文件识别信息的段的时候,追踪器51对 每一个接收到的洪流文件识别信息的段生成节点信息的安排是可接受的。换句话说,在其 中追踪器51生成对应于由已经访问了追踪器51的节点传输的洪流文件识别信息的段的节
点信息并将生成的节点信息传输到节点的另一种安排也是可以接受的。
还有在其中追踪器51基于其IP地址和端口号将节点划分成多组并为每一个组生成节点 信息的另一种安排也是可以接受的。换句话说,在其中追踪器51生成对应于由已经访问了 追踪器51的节点传输的IP地址和端口号所属的组的节点信息并将生成的节点信息传输到节 点。在该安排中,对于追踪器51来说将节点以每一个节点属于两个或更多的组的方式划分 成多组是可接受的。在那个情形中,追踪器51生成对应于由已经访问了追踪器51的节点传 输的IP地址和端口号所属的组的全部或部分的节点信息并将生成的节点信息传输到节点。
在上述的第一实施例中,另一种安排是可接受的,在其中,在吸收者50在步骤S9已经 成功地获取加密的段的情形中,吸收者50告知从其传输加密的段的播种者52加密的段已经 被成功地获取。例如,以下面的方式判断加密的段是否已经被成功地获取是可接受的播 种者52在向数据的末端附上指示加密的段的末端的标记之后将加密的段传输。当吸收者50 已经接收到加密的段时,吸收者50通过检查标记来判断对应于加密的段的完整数据已经被 接收。
在含在洪流文件中的文件信息包括通过使用上面的第一实施例的变型例的一个中所 说明的加密的段的散列计算处理所得的散列值的情形中,在其中吸收者50计算从播种者52 接收到加密的段的散列值并将计算所得的散列值同含在洪流文件中的加密的段的散列值 比较,从而如果这些散列值匹配的话,吸收者50判断加密的段已经被成功地获取。另一种 安排是可接受的,在其中当吸收者50将通告信息传输到播种者52以通告播种者52加密的段 已经被成功地获取时,吸收者50将下述类型中的任意信息放进通告信息中加密的段的散 列值,洪流文件中指示的加密的段的索引,加密的段被成功地获取的时间和吸收者50的节 点信息。
在上述的第一实施例中,在其中为吸收者50能够一次从播种者52请求的加密的段的数 目设定最大限度的另一种安排是可接受的。在该情形中,如果播种者52已经接收到请求比 最大限度更大数量的加密的段的请求,对于播种者52来说拒绝请求是可接受的。还有在其 中播种者52没有拒绝请求,而是传输数量等于或者少于最大限度的加密的段给已传输了段 请求的吸收者50的另一种安排也是可接受的。在播种者52已经确认加密的段的至少一个的 传输已经完成之后,对于播种者52来说将数量等于或者少于最大限度的加密的段和在段请
27求中已请求的但是还没有被传输的剩下的加密的段传输到吸收者50是可接受的。
在上述的第一实施例中,另一种安排是可接受的,在其中,在播种者52不能传输吸收
者50传输的段请求中请求的加密的段的情形中,例如播种者52没有在其内存储所请求的加
密的段,播种者52将一个消息传输到吸收者50以告知吸收者50情况。
接下来,将说明根据本发明的内容分配系统的第二实施例。第二实施例中与第一实施
例相同的部分将使用同样的标号来说明或者在说明中省略。
根据第二实施例的内容分配系统的构造与根据第一实施例的内容分配系统的结构的
不同之处如下根据第二实施例,追踪器51判定所有或者部分对应于段C1到CN的加密的
段的序列。
图17是根据第二实施例的追踪器51的功能框图。追踪器51包括索引生成单元510,播 种者信息生成单元511,播种者数据库512和索引数据库513。
播种者数据库512在其内存储,相对于段C1到CN,用来解密加密的段的解密密钥的索 引和用来访问在其内存储对应于索引的加密的段的节点的播种者连接目的地信息,同时保 持这些类型的信息彼此关联。在本实例中,假定播种者连接目的地信息是URL。图18是播 种者数据库512的数据结构的实例的图示。在图18中,分别对应于段C1到CN的信息的段被 从左开始安排在一行中。例如,显示的是对应于段C1和对应于索引(1,1)的加密的段被存 储在其URL是"http:〃wwwll…"的节点和其URL是"http:/Avww2…"的节点中。另外显 示的是对应于段C2和对应于索引(2,2)的加密的段被存储在其URL是"http://www23..."的 节点中。与段C1到CN的索引对应的节点可能是全部相同或彼此不同。
追踪器51如下述地生成播种者连接目的地信息并将生成的播种者连接目的地信息存 储进播种者数据库512中,同时保持播种者连接目的地信息与索引的对应。如上面的第一 实施例中所述,追踪器51从每一个节点获取节点识别信息。根据第二实施例,除了节点识 别信息之外,追踪器51还获取存储在每一个节点中的加密的段的段信息。然后,追踪器51 基于节点识别信息,如同第一实施例的说明中解释的节点信息,生成播种者连接目的地信 息。追踪器51将生成的播种者连接目的地信息存储进播种者数据库512中;同时保持播种
者连接目的地信息对应于段信息中指示的序列中的索引。
当被吸收者50访问时,索引生成单元510首先从吸收者50获取洪流文件识别信息。然 后,索引生成单元510基于洪流文件识别信息限定索引的范围,索引可以对于每一个加密 的段从该范围中选出,以判定用于分别对应于段的加密的段的索引并生成索引的组合(即, 序列)。接着,索引生成单元510询问生成的序列是否已经被存储在索引数据库513中。索引生成单元510根据询问的结果判断序列是否可用。指示已经被索引生成单元510判断为可 用的序列信息被存储进索引数据库513中。
对于每一个对应于序列的加密的段,播种者信息生成单元511通过基于已经被索引生 成单元510判断为可用的序列引用播种者数据库512来识别在其内存储加密的段的节点。在 两个或更多节点的每一个都在其内存储有目标加密的段的情形中,对于播种者信息生成单 元511来说识别其中从两个或更多节点中任意选择的一个节点是可接受的。然后,播种者 信息生成单元511生成指示已经对于每一个加密的段被识别的节点的播种者信息并将生成 的播种者信息传输到吸收者50。播种者信息包含指示已经被索引生成单元510判断为可用 的序列中的索引信息和用来访问在其内存储对应于索引的加密的段的节点的连接目的地
〈曰息。
图19是播种者信息的实例的图示。在图19中,显示的是在其中追踪器51判定所有的加 密的段的序列的实例。在图19中,对应于段C1到CN的信息的段的被从左开始安排在一行 中。节点的URL被表示为连接目的地信息。它还显示对于段C1到CN所判定的序列是 ((3,1),(5,2),…,(1,N))。另外,还显示的是对应于索引(3,1)的加密的段被存储在URL是 "http:/Avww10..."的节点中;对应于索引(5,2)的加密的段被存储在其URL是 "http:〃www20…"的节点中;以及对应于索引(1,N)的加密的段被存储在其URL是 "http:/AvwwNO…"的节点中。另外,如果只有一个节点在其内存储加密的段也是可接受 的。
索引数据库513在其内存储指示已经由索引生成单元510生成的索引的序列的序列信 息。当索引数据库513在其内存储一段序列信息时,指的是在该序列信息的段中指示的序 列已经被使用。索引数据库513具有在外部或者在其内部的控制器,并指挥在响应来自索 引生成单元510的询问在序列信息中搜索。根据搜索的结果,索引数据库513返回索引生成 单元510的询问的结果或者在其内存储序列信息。
接下来,将参照图20说明在根据第二实施例的内容分配系统中执行的内容分配处理的 过程。此外在后面的部分中,为了说明的方便,假定吸收者50从播种者52A, 52B和52C中 的至少一个接收加密的段。
在步骤S1和S2执行的处理与根据第一实施例中所执行的相同。当吸收者50被访问时, 追踪器51从吸收者50获取洪流文件识别信息并基于洪流文件识别信息执行索引生成处理 (步骤S20)。在下面的部分,将说明在其中追踪器51判定所有的加密的段中的序列的实 例。图21是索引生成处理中的过程的流程图。在索引生成处理中,例如,索引生成单元510
29通过任意地判定关于索弓l(il,l),(i2,2),…,(i3,N)的满足"l《il,i2,…,i3^"的"il" , "i2",… 和"i3"的值来生成索引的序列((il,l),(i2,2),…,(i3,N》(步骤S200)。接着,索引生成单元 510询问索引数据库513指示序列((il,l),(i2,2),…,(i3,N))的序列信息是否己经被存储在其 内。索引数据库513指挥存储在其内的序列信息中的搜索。在索引数据库513已经在其内存 储指示与询问中的序列相同的序列的序列信息时(步骤S201:是),这指的是询问中的序 列已经被使用过。在那个情形中,索引数据库513返回"1"到索引生成单元510。当从索 引数据库513接收到"1"时,索引生成单元510生成新的序列并再次询问索引数据库513指 示新的序列的序列信息是否已经被存储在其内。
相反地,在索引数据库513没有在其内存储任何指示与询问中的序-列相同的序列的序 列信息的情形中(步骤S201:否),索引数据库513在其内存储指示询问中的序列的序列 信息并返回"0"到索引生成单元510 (步骤S202)。当索引生成单元510从索引数据库513 接收到"0"的时候,播种者信息生成单元511引用播种者数据库512,并Xlt于每一个对应 于序列的加密的段识别在其内存储加密的段的播种者52。播种者信息生成与t元511然后生 成指示已经对于加密的段被识别的播种者的播种者信息,并将生成的播种者fpT息传输到吸 收者50 (步骤S203)。播种者信息包含上述的索引信息和连接目的地信息。
返回到图20的说明,当吸收者50已经从追踪器51接收到播种者信息时(步骤S21), 吸收者50通过使用含在播种者信息中的连接目的地信息访问播种者52 (步骤S22),并获 取对应于含在播种者信息中的索引信息中所指示的序列的加密的段。在步骤S10到S13执行 的处理同根据第一实施例的那些相同。在步骤S23,密钥服务器53不执行上述的比较处理, 而是将对应于请求消息的密钥环传输到吸收者50。在步骤S15和其后的处理与根据第一实 施例的那些相同。
在上述的构造中,追踪器51能够提供给吸收者50组成加密的内容的加密的段的序列, 同时避免那些已经被使用过的序列。例如,让我们讨论在其中追踪器51已经将如图i9所示 的播种者信息传输到吸收者50的情形。如图19中所示的播种者信息中指示的序列是 {(3,1),(5,2),"*,(1,N)}。然后,当另一个吸收者50已经访问追踪器51时,举例来说,追踪器 51传输如图22中所示的播种者信息。在如图22中所示的播种者信息中指示的序列是 ((4,1),(5,2),…,(2,N》并不同于如图19中所示的序列。以这样的方式,对于吸取者50',追踪 器51能够提供组成加密的内容的加密的段的互不相同的序列。
因为追踪器51以这样的方式判定序列,可以防止对应于相互相同的序列的内容的非法 使用。举例来说,在所有的用来解密加密的段的解密密钥被泄漏的情形中,可以识别解密密钥从其处被泄漏的来源。
换句话说,为对付泄漏密钥环的非法动作,追踪器51能够将序列分配给节点,不仅仅 为了避免已经被使用的序列,而且为了识别密钥环已经从其处被泄漏的来源。为达到后一 目的,可以使用参考文件J. Staddon, D. R. Stinson和R. Wd, "Combinatorial properties of frameproofand traceability codes (帧样和可追踪性代码的组合性质)",电气与电子工程师 学会(IEEE)学报信息理论47 (3)第1042-1049页(2001)中所述的可追踪性(TA)代码。 举例来说,在分配给节点的TA代码的代码字被表示为w气il, i2......iN,)(这里il,i2,…和iN'
每一个都是组成代码字的符号)的情形中,加密的段E(K(il,l))[Cl], E(K(i2,2))[C2],…,E(K(iN,,N,))[CN']被存储进节点中。
如果密钥环被泄漏,通过识别对应于密钥环的序列,(即,?付应的代码字),可以识 别己经由追踪器51向其分配序列的节点。如此,结果是,可以阻止内容的非法使用。
在上述的第二实施例,连接目的地信息不限于上述的实例。另-一个安排是可接受的, 在其中连接目的地信息包含播种者的IP地址和端口号,而不是播种者L的URL。还有另一种 安排是可以接收的,在其中连接目的地信息包含除了播种者的URL外,每一个都由播种者 的IP地址和端口号组成的设定。
在上述的第二实施例中,在其中播种者信息包含加密的段的索引和加密:的段的散列值 的另一种安排是可接受的。图23是根据本变型例的播种者信息的实例的图示。在图23中, 设定每一个都由不同的一个节点的IP地址和端口号组成的被显示作为连f妾目的地信息。加 密的段的索引和散列值被显示作为散列(E(K(il,l)[Cl]),散列(E(K(i2,2))[C2])和散列 (E(K(iN,N))[CN])。
在上述的第二实施例中,在洪流文件包含如第一实施例的变型例的其中之一中所述的 加密的段的散列信息的情形中,追踪器51不需要从吸收者50获取洪流文1牛识别信息。
进一步,在上述的第二实施例中,由追踪器51生成的播种者信息含有用来访问节点的 连接目的地信息;然而,播种者信息并非必须包含连接目的地信息。图24是根据本变型例 的播种者信息的实例的图示。在图24中,只显示对应于加密的段的索引。在该构造中,如
果吸收者5o从追踪器5i获取如第一实施例中所述的节点信息,并基于所获i:又的节点信息获
取加密的段是足够的。此外在该情形中,如果播种者信息包含散列值是可接.受的。图25是 包含散列值但不包含连接目的地信息的播种者信息的实例的图示。
进一步,在上述的第二实施例中,追踪器51在播种者数据库512中存储对应于用来解 密加密的段的解密密钥的索引的连接目的地信息;然而,本发明不限于该实例。连接目的
31地信息本身并非必须被存储。在该情形中吸收者50执行的操作与上述的相同。
在上述的第二实施例,在索引生成处理期间,再次使用那些已经被使用过一次的序列 是不可能的;然而,在其中可以使用每一个序列到诸如两次或更多次的预设次数的另一种 安排是可接受的。在那个情形中,在同吸收者50执行相互验证处理期间,包括在密钥服务 器53中的认证和密钥交换处理单元533从吸收者50获取用于识别吸收者50的吸收者识别信 息。序列信息比较单元535将序列信息,吸收者i只别信息和指示已生成的序列已经被传输 到用吸收者识别信息识别的吸收者50多少次的使朋次数值存储进播种者数据库512中,同
时保持这些种类的信息彼此对应。图26是根据本3《型例的索引生成处理中的过程的流程 图。假设当追踪器51在如图20中所示的步骤S2被吸化化者50访问时,追踪器51已经从吸收者 50获取吸收者识别信息。在步骤S200到S201执行的处'理同上述的相同。在步骤S201的判断 处理的结果是肯定的情形中,gp,在索引数据库513巳'经在其内存储指示在步骤S200生成 的索引的序列的情形中,索引数据库513引用对应于序^J信息和已获取的吸收者识别信息 的使用次数值并判断使用次数值是否等于或者小于预定值1!(步骤S200A)。在判断处理的 结果是肯定的情形中,索引数据库513返回"0"到索引生万£单元510,并且还通过逐一增 加对应于序列信息和吸收者识别信息存储的使用次数值来更新'使用次数值(步骤S200B)。 相反地,在步骤S201的判断处理的结果是否定的情形中,执行如—匕所述的步骤S202及其后 的处理。在步骤S200A的判断处理的结果是否定的情形中,处理回到步骤S200以生成新的 索引的序列。
具有这样的安排,可以多次使用同样的加密的段的序列,而不是仅仅一次。如此,可 以实现更灵活的内容分配处理。
在上面的说明中,追踪器51本身判断已经由索引生成单元510生成的月3列是否已经被 使用;然而,在其中追踪器51不执行该判断处理的另一种安排是可接受的。在那个情形中, 以与第一实施例中所述的相同的方式,密钥服务器53在执行步骤S12的处理之后在步骤S14 执行比较处理,从而可以避免再次使用同样的序列。
举例来说,在那个情形中,在其中对于每一个^《序列由追踪器51判定的加密的段,吸 收者50获取多个相互不同的用于段的加密的段的另一种安排是可接受的。例如,对于段C1, 对于吸收者50来说获取加密的段E(K(il,l))[Cl]和E(K(ir,l)[Cl])(这里满足il^il', 1《1《m 和l《il《m)是可接受的。具有这样的安排,当吸收者50从密钥服务器53请求密钥环时,如 果包含索引(il,l)的序列已经被使用,吸收者50不能获取对应于该序列的密钥环,但是 如果包含索引(il', 1)的序列是可用的,吸收者50能够从密钥服务器53获取对应于-该序列的密钥环而不需要再次访问追踪器51。具有在其中吸收者50预先获取额外的加密的段的安 排,吸收者50能够预先准备多个序列候选。因此,吸收者50能够避免不得不再次访问追踪 器51的麻烦。
进一步,在上面的说明中,追踪器51判定对应于所有的组成内容的段C1到CN的加密 的段的序列;然而,本发明不限于该实例。在其中追踪器51判定仅仅一部分的加密的段的 序列的另一种安排是可接受的。在那个情形中,如第一实施例所述的,如果剩下的其序列 未被追踪器51判定的加密的段被吸收者50从任何其他节点任意地获取是足够的。在那个情 形中,对于密钥服务器53来说执行如上所述的对该序列的比较处理是可接受的。
在那个情形中,在比较处理期间,在其中密钥服务器53只对这样一部分不同于对应于 已经由追踪器51判定的那部分加密的段的序列执行比较^b理的安排是可接受的。在该情形 中,序列信息存储单元536在其内存储指示这样一部分:^同于由追踪器51判定的一部分序 列的序列的序列信息。举例来说,假定洪流文件预先限鬼 对应于段C1到CN的加密的段中 的哪一个被包括进由追踪器51判定的一部分序列中。在比:较处理期间,对于这样一部分不 同于由追踪器51判定的序列的一部分,包括在密钥服务器33中的序列信息比较单元535将 含在请求消息中的索引信息同存储在序列信息存储单元536中的序列信息比较。
具有这样的安排,可以减少存储在序列信息存储单元536中的信息的数量。此外,可 以减少在比较处理中使用的信息的数量。因此,可以减少密统1月艮务器53的处理工作量。
进一步,在上述的第二实施例中,索引数据库513被包括进:追踪器51中;然而,本发 明不限于该实例。在其中索引数据库513被包括在连接到追踪器5 l的数据库服务器中的另 一种安排是可接受的。在该构造中,包括在追踪器51中的索引生/、龙单元510经由数据服务 器引用存储在索引数据库51中的序列。
接下来,将说明根据本发明的内容分配系统的第三实施例。第三^实施例中与第一实施 例或第二实施例相同的部分将使用同样的标号或者在说明中省略。
根据第三实施例的内容分配系统的构造与根据第一实施例或第二;实施例的内容分配 系统的结构的不同之处如下在根据第三实施例的内容分配系统中,将解释在其中指定的 加密的段(例如,对应于段C1的加密的段)从密钥服务器53被分配到吸收者50的实例。在 本实例中,让我们假定加密的段被生成为如图6中所示。含在根据第三实施例的洪流文件 中的第三实施例不包括指示哪些加密的段对应于段C1的信息。
在该构造中,当吸收者50将请求消息传输到密钥服务器53以请习《密钥环时,吸收者50 将用于识别吸收者50的吸收者识别信息放进请求消息中并传输请求消息。请求消息并非必
33另外,如果请求消息指示除了指定的加密的段外的所有的段的索引的序列(例如,如 果指定的加密的段是对应于段C1的加密的段的话,段C2到CN的索引的序列)也是可以接 受的。
除了解密密钥之外,包括在密钥服务器53中的密钥存储单元534还在其内存储对应于 段C1的加密的段。序列信息存储单元536在其内存储,对应于序列信息的,密钥环已经在 过去从密钥服务器53被传输至其的吸取者50的吸收者识别信,息。序列信息比较单元535判 断从吸收者50传输的吸收者识别信息是否被存储在序列信息:j字储单元536中,并判定密钥 环和指定的加密的段是否应该根据判断处理的结果被传输。密1月提供单元537根据序列信 息比较单元535执行的判定处理的结果,将密钥环和加密的段传:输到吸收者50。
接下来,将参照图12说明在根据第三实施例的内容分配系统中执行的内容分配处理的 过程。在步骤S1到S13执行的处理同根据第一实施例的那些相同。然而,因为由吸收者50 在步骤S1获取的洪流文件不含有与对应于段C1的加密的段有关的信,昆,吸收者50已经获取 分别对应于段C1到CN的加密的段。在步骤SIO,吸收者50将用于识别'吸收者50的吸收者识 别信息放进用于请求密钥环的请求消息中并将请求消息传输到密钥服务:器53。在步骤S14, 密钥服务器53执行如下所述的比较处理
图27是在根据第三实施例的比较处理中的过程的流程图。包括在密钥'服务器53中的序 列信息比较单元535将含在请求消息中的吸收者识别信息同存储在序列信.息存储单元536
中的吸收者识别信息比较(步骤S140D),并判断序列信息存储单元536是否已经在其内存 储同样的吸收者识别信息(步骤S140E)。在判断处理的结果是否定的情形中,序列信息 比较单元535判定对应于吸收者识别信息的密钥环(K(il,l),K(l,2),…,K(l,N))和对应于段Cl 的加密的段E(K(il,l))[Cl]应该被传输。然后,序列信息比较单元535经由控制单fi530通知 密钥供应单元537将密钥环和加密的段传输到吸收者50。此外,序列信息比fe〖单元535将吸 收者识别信息存储进序列信息存储单元536。密钥提供单元537从密钥存储单元534中读取 其传输已经由序列信息比较单元535经由控制单元530通知的密钥环和加密的段,并将已读 取的密钥环和加密的段经由网络接口单元532传输到吸收者50 (步骤S140F)。相反地,在 步骤S140E的判断处理的结果是肯定的情形中,即,在密钥环在过去被从密钥服务器53传 输到吸收者50的情形中,序列信息比较单元535判定密钥环和加密的段不应该l皮传输,并 经由控制单元530通知密钥提供单元537将密钥环传输到吸收者50是奢f止的(步骚,S144)。 步骤S15及其后的处理与根据第一实施例的那些相同。
34具有在其中指定的加密的段从密钥服务器53分配的安排中,可以不使吸收者50再次访 问追踪器51,而允许吸收者获得被安排在互不相同的序列中的加密的段。因此,吸收者50 能避免再次访问追踪器51的麻烦。
在上述的步骤S140F,执行如上面的第一实施例的变型例中之一所述的替换加密的段 的处理是可接受的。举例来说,让我们详述在其中吸收者50已经获得加密的内容 E(K(i2,2))[C2], E(Ki3,3))[C3],…,E(K(iN,N))[CN]以及己经从密钥服务器53请求对应的密钥 环的情形。在序列信息存储单元536已经在其内存储对应于吸收者50请求的密钥环的序列 ((i2,2),(i3,3),…,(iN,N))(即,序列信息比较单元535执行判断二处理的结果是肯定的)的情形 中,密钥服务器53生成另 一 个未被存储在序列信息存储单元536中的序列 ((i2,,2),(i3,3), ' ,(iN,N)},并将吸收者50应该用其替换其他加密的段的加密的段 E(K(i2',2))[C2]和与索引有关的信息(即,本实例中的(i2,,2))传.输到吸收者50。此外,密 钥服务器53将含有对应于序列((il,l),(i2,,2),…,(iN,N)〉的解密密钥,和对应于段Cl的加密的 段E(K(il,l))[Cl]传输到吸收者50。相反地,在序列信息存储单元536还没有在其内存储对 应于吸收者50请求的密钥环序列((i2,2),(i3,3),…,(iN,N》的情形中(即,序列信息比较单元 535执行的判断处理的结果是否定的),密钥服务器53可能或者可能不执行上面说明的替 换处理。
在如上所述的第三实施例中,指定的加密的段并非必须是对应于段C1的加密的段。指 定的加密的段的数目并不必须是一个。举例来说,使用在第二实施例中:援引的参考文献中 公开的TA代码定义加密的段作为指定的加密的段是可接受的。举例来说,在分配给节点的 TA代码中的代码字可以表示为w^il i2…iN)的情形中,如果加密的段E(K(il,l))[Cl], E(K(i2,2))[C2],…,E(K(iN,,N,))[CN']作为指定的加密的段被从密钥服务器53传输到节点 是可接受的。
进一步,指定的加密的段并非必须由密钥服务器53分配给吸收者50。如果指定的加密 的段由追踪器51,销售服务器54或者可靠的第三方的服务器分配是可接受的。在那个情形 中,密钥服务器53在步骤S140F只将密钥环传输到吸收者50。
在如上所述的第三实施例中,加密的段和吸收者识别信息并非必须被分别存储在密钥 存储单元534和序列信息存储单元536中。举例来说,在其中密钥服务器53进一步包括互不 相同的存储单元以使加密的段和吸收者识别信息能够被分别存储在这些存储单元的另一-种安排也是可接受的。
在如上所述的第三实施例中,指定的加密的段从密钥服务器53传输到吸收者50。然而,本发明不限于此实例。在其中密钥服务器53指定的指定加密的段的索引(例如在上述的实 例中,对应于段Cl的索引(il,l)中的il的值)并使另一个节点,销售服务器54,或者个别提 供的专用服务器将对应于索引的加密的段E(K(il,l))[Cl]传输到吸收者50的另一种安排也 是可接受的。又一种在其中密钥服务器53不指定索引,而另一个节点,销售服务器54或者 个别提供的专用服务器指定的指定加密的段的索引,以使专用服务器将对应于指定的索引 的加密的段传输到吸收者50的安排是可接受的。
接下来,将说明根据本发明的内容分配系统的第四实施例。与第一到第三实施例的任 何一个相同的第四实施例的部分将使用同样的标记说明或者从说明中省略。
在第四实施例中,假定含在洪流文件中的文件信息包括通过使用加密的段的散列计算 处理计算出来的散列值(hash(E(K(i,j))[Cj])(这里满足l《《m^Il^N),如同第一实施例的 变型例所述的(参见图14)。在第一到第三实施例中,从播科i者52传输到吸收者50的段信 息指示存储在播种者52中的加密的段的序列,如图7所示。然ffvl根据第四实施例,存储 在播种者52中的加密的段的索引(ij)中,段信息只指示被用来互柏i区分段Cl到CN的索引j, 如图29所示。
在下面的部分,用来互相区分段Cl到CN的每一个索引j将被称丫,"段索引"。根据解 密密钥的数目提供变量的每一个索引i将被称作"变量索引"。由段索弓l^]变量索引组成的集 合(i,j)将被简单地称作"索引"。关于对应于段索引j的段,在存在用两1、或更多互不相同 的加密密钥加密该段获得的两个或更多加密的段的情形中,包括加密的段的集合将根据需 要被称为"加密的段串j"。
在该构造中,当包括在吸收者50中的内容获取单元500已经基于如上所述的段信息获 得加密的段时,内容获得单元500执行处理以识别关于加密的段的变量索引i。更具体地说, 内容获取单元500通过使用加密的段的散列计算处理计算出散列值,弓i用含在洪流文件中 的文件信息,并在对应于散列值的索引(i》内部识别出对应于加密的段l的段索引j的变量索 引i。
接下来,将参照图30说明在根据第四实施例的内容分配系统中执行的内容分配处理的 过程。在步骤S1到S5执行的处理同根据第一实施例的那些相同。在步骤S6,当》皮吸收者50 访问时,播种者52将指示存储在其内的加密的段的段索引的段信息传输到吸收者50,如图 29所示。在步骤S7,吸收者50接收段信息。在步骤S8,吸收者通过使用段{訂息访问至少一 个播种者52,将段请求传输到播种者52以请求对于段C1到CN的每一个的多个可能存在的 加密的段中的至少一个,并接受加密的段。响应来自吸收者50的段请求,溜:种者52将存储在其内的加密的段传输到吸收者50 (步骤S9)。在该情形中,在吸收者50已经通过访问播 种者52B接受到的段信息中指示的索引不含有变量索引。因此,通过使用吸收者50己经通 过访问播种者52B接收到的段信息,举例来说,吸收者50判断播种者52B是否在其内存储由 加密段Cl获得的加密的段E(K(il,l))[Cl](这里il是满足l《il《m的整数)中的任何一个。在 判断处理的结果是肯定的情形中,吸收者50访问播种者52B并通过从播种者52B接收其来获 得由加密段C1获得的加密的段中的一个。相反地,在播种者.52B实际上不在其内存储任何 由加密段C1获得的加密的段的情形中,吸收者50进一步访问该溜种者52(例如,播种者52C)
并从其他播种者(例如,播种者52C)获取段信息。然后,以如上所述的同样的方式,吸 收者50通过使用段信息判断播种者52C是否在其内存储加密的^。在判断处理的结果是肯 定的的情形中,吸收者50访问播种者并尝试获取加密的段。
然后,在步骤S4001,吸收者50计算出所接收到的加密的^:的散列值。随后在步骤 S4002,吸收者50引用如图14中所示的洪流文件并从对应于散列值的索弓l(i,j)识别对应于加 密的段的段索引j的变量索引i。在步骤S10执行的处理与第一实施例中的相同。如同在第一 实施例中,吸收者50传输到密钥服务器53的请求消息含有指示对应亍A解密密钥的序列的索 引信息((il,l),…,(iN,N》。对应于解密密钥索弓l(il,l),…,(iN,N)中的变量索弓lil,…,iN中的每 一个在每一次执行步骤S4001的处理时被识别。在步骤Sll到S16执行的-处理同根据第一实 施例的那些相同。
在如上所述的构造中,不可能在吸收者50接收每一个加密的段之前识另ij每一个存储在 播种者52中的加密的段的变量索引i。举例来说,具有这样的安排,可以防止吸收者50尝试 获取对应于某一个用于其的解密密钥已经泄漏的索引(ij)加密的段。此外,至于每一个已获 取的加密的段,可以基于散列值和洪流文件识别其中的变量索引。因此,吸t攻者50能够如 同在第一实施例中一样获取含有用来解密从密钥服务器53获取的加密的段的f卑密密钥的 密钥环。
在如上所述的第四实施例中,段信息中指示的索引不限于如图29所示的实例。举例来 说,在其中索引包括如图31所示的变量索引i的另一种安排是可接受的。在那个'瞎形中,使 用其值是不可识别的索引(例如,本实例中的"x")作为每一个变量索引i是可接受的。 另外,如图32所示,在段信息中指示的一些索引中的每一个都含有变fi索引i,同时其他索 引的每一个都不含有变量索引i的另一种安排也是可以接受的。
在如上所述的第四实施例中,另一种安排也是可接受的,在其中',当将加密的段传输 到吸收者50的播种者52将指示加密的段的变量索引与段信息区分地传输到吸收-昔50。在那个情形中,吸收者50不需要计算加密的段的散列值,这不同于如上所述的实例。因此,含 在洪流文件中的文件信息不需要包括每一个加密的段的散列值。图33是在根据本变型例的 内容分配处理的过程的流程图。在步骤S1到S8执行的处理同根据第一实施例的那些相同。 在步骤S4003,播种者52将指示作为将被传输到吸收者50的目标的加密的段的变量索引的 变量索引信息传输到吸收者50。在步骤S4004,吸收者50接收变量索引信息。然后,在步 骤S9到S16执行的处理与第一实施例的那些相同。在其中步骤S4003到S4004的处理在步骤 S9的处理执行完之后再执行的另一种安排是可接受的。
在如上所述的构造中,可以使得吸收者50识别加密的段的变量索引变得容易,还可以 防止吸收者50尝试获取对应于例如用于其的解密密钥已经;、他漏的索引(i,j)的加密的段。
在如上所述的第四实施例中,另一种安排是可接受的,在其中,当将加密的段传输到 吸收者50时,播种者52将加密的段的散列值传输到吸收者5C、。此外在那个情形中,吸收者 50不需要计算加密的段的散列值,这不同于如上所述的实例。含在洪流文件中的文件信息 包括加密的段的散列值,如同在如上所述的第四实施例中一样。图34是在根据本变型例的 内容分配处理中的过程的流程图。在步骤S1到S8执行的处理同根据第一实施例的那些相 同。在步骤S4005,播种者52将作为将被传输到吸收者50的目标的加密的段的散列值传输 到吸收者50。在步骤S4006,吸收者50接收散列值。然后,在步骤S9, S4002和S10到S16 执行的处理与根据第四实施例的那些相同。在其中步骤S4005到S4()06的处理在步骤S9的处
理执行完之后再执行的另一种安排也是可接受的。
在如上所述的构造中,代替直接地将加密的段的变量索引告知吸收者50,播种者52将 散列值告知吸收者50。因此,可以允许吸收者50识别加密的段的变量索引而不增加对吸收 者50的处理工作量。
在播种者52将加密的段的散列值传输到吸收者50的情形中,在其中密钥服务器53代替 吸收者50识别加密的段的变量索引的另一种安排是可接受的。换句话说,如果对应于步骤 S4002的处理由密钥服务器53执行是可接受的。图35是在根据本变型例的内容分配处理的 过程的流程图。在步骤S1到S8执行的处理同根据第一实施例的那些相同。在步骤S4005到 s4006的处理已经执行之后,吸收者50在步骤S10将含有散列值的请求消息传输到密钥服务 器53,作为用于请求含有被用来解密加密的段的解密密钥的密钥环的请求消J^。当由加密 段Cj获得的加密的段的散列值可表示为Hj时,请求消息含有,举例来说, ((1,1),((x,2),H2),…,((N), HN))作为索引信息。含在索引信息中的索引(l,l)指示变量索引 "1"是对于段C1被识别的。索引((x,2),H2)指示对于段C2除了散列值H2被识别之外没有变量索引被识别。索引((N), HN)指示对于段CN除了散列值HN被识别之外没有变量索引被识 别。
然后,在步骤Sll,在密钥服务器53已经接收含有如上所述的散列值的请求消息的情 形中,在执行步骤S12的处理之后,随后在步骤S4007,密钥服务器53按照与步骤S4002中 同样的方式,通过引用如图14所示的洪流文件对于散列值指示的索引识别加密的段的变量 索引。
在如上所述的构造中,不需要吸收者50本身必须识别加;密的段的变量索引,吸收者50 便能够获取被用来解密加密的段的解密密钥。
在如上所述的第四实施例中,在吸收者50计算出加密的段-的散列值之后,吸收者50执 行识别加密的段的变量索引的处理;然而,本发明不限于此实WJ。在其中密钥服务器53执 行该处理的另一种安排也是可接受的。在那个情形中,密钥服务器53预先获取如图14所示 的洪流文件。图36是在根据本变型例的内容分配处理的过程的流程'图。在步骤S1到S8执行 的处理同根据第一实施例的那些相同。在步骤S4001执行的处理与根据第四实施例的处理 相同。在步骤S9到S12执行的处理同根据第一实施例的那些相同。在步骤;S4007和此后执行 的处理与根据如上所述的第四实施例的变型例其中之一的处理相同。
此外在该构造中,不需要吸收者50必须亲自识别加密的段的变量索引,吸收者50便能 够获取被用来解密加密的段的解密密钥。
接下来,将说明根据本发明的第五实施例的内容分配系统。与第一到第;四实施例的任 何一个相同的第五实施例的部分将使用同样的标记说明或者从说明中省略。
根据第五实施例,将说明在其中吸收者50在多个不同的时间从播种者52请求加密的段 的实例。在那个情形中,对于一个加密的段,吸收者50传输段请求(以下,"部分数据请求") 以从播种者52请求构成加密的段的一部分的部分数据(以下,称"次段")。每一个次段 的数据长度可以是预设的长度或者可以是可变的长度。构成每一个加密的段的次段的数目 不受限制。每一个加密的段可以由预设数量的次段构成或者由可变数量的次段构成。每一 个次段的数据长度和构成每一个加密的段的次段的总数量可以在内容分配系统被指定作 为初始值或者可以在洪流文件中被预先指定。在下面的部分,假定含在洪流文件中的文件 信息包括每一个加密的段的数据长度,而并不必须包括散列值。
图37是根据本发明的第五实施例的吸收者50的示例性功能图表;除了如上厉1述的内容 获取单元500,密钥环请求单元501,密钥环获取单元502和内容解密单元503之外,吸收者 50还包括次段完成判断单元504和会话信息管理单元505。假定,对于每一个加2经的段,吸收者50能够请求其全部的数据或者次段。前一情形类似于如上所述的第一实施例。因此, 将在下面说明后一情形。
当将段请求传输到播种者52时,根据第五实施例的内容获取单元500判断作为将被获取的 目标的加密的段的数据是否已经被部分获取了。在内容获取单元500已经判断数据已经被 部分地获取的情形中,内容获取单元500生成部分数据请求并将生成的部分数据请求传输 至播种者52。部分数据请求指示,举例来说,集合(U)由指定作为将被获取及已经被部分获 得的目标的加密的段的指定的段索引和指定的变量索引和指定构成已经部分地获得的加 密的段的部分数据的次段的次段指定信息组成。次段g旨定信息指定已经部分地获得的加密 的段的部分数据(即,次段)的数据范围。举例来说,数据范围通过使用,用指示次段的 起始位置的一些字节等表示的位移值,用指示次段的;结束位置的一些字节等表示的位移 值,次段的数据长度,或者其中任意的组合。图38是根据第五实施例的段请求的数据结构 的实例的示意图。在图38中,部分数据请求指示由指定酌段索引和指定的变量索引,以及 用作次段指定信息的次段的起始位置和数据长度组成的纟漠合。部分数据请求指示,对应于 索引(3,4)的加密的段E(K(3,4))[C4]的数据中,该数据具有'这样的数据范围,该数据范围的 起始位置在从头部位置(即,第O字节)算起的第54677个i,节处并具有从起始位置开始为 54676字节的数据长度的数据被指定作为将被获取的次段。
当段请求传输至播种者52时,在内容获取单元500已经到断作为将被获取的目标的加 密的段的数据并未部分地获得的情形中(即,还没有获得加密的段的数据),内容获取单 元500生成如第一实施例中所述的段请求,并将生成的段请求传4俞至播种者52。
当内容获取单元500已经获取加密的段或者次段时,次段完成身j断单元504执行判断所 接收的加密的段或者用所接收的次段部分地构成的加密的段的全畜^数据是否已经被获取 的完成判断处理。举例来说,完成判断处理是基于数据长度或者由加密的段内的部分数据 的头部位置和结束位置计算而得的数据长度来执行的。在本实例中,次+安完成判断单元504 通过引用在会话信息(后面说明)中指示的所获取的数量和含在洪流文1'牛中的数据长度执 行完成判断处理。在次段完成判断单元504,对于作为判断处理的目标的加密的段,已经 判断全部的数据已经被获取的情形中,以及如果加密的段用多个次段构成,次段完成判断 单元504执行通过将所有的构成加密的段的次段放在一起来完成加密的段、的5S成处理。
相反地,在次段完成判断单元504对于作为判断处理的目标的加密的段,已经判断全 部的数据还未被获取的情形中,次段完成判断单元504引用会话信息《在后面说明),访 问已经传输构成加密的段的一个或多个次段的播种者52,并将部分数^居请求经由内容获取单元500传输至播种者52以请求构成加密的段的次段中还未被获取的次段中的一个(以下, 未获取的次段)。次段完成判断单元504尝试用这样的方式经由内容获取单元500获取未获 取的次段。举例来说,次段完成判断单元504重复地执行从播种者52获取未获取的次段的 处理直到所有的构成加密的段的次段已经被获取。
会话信息管理单元505生成被再次从先前已经传输一个或多个次段的播种者52用来请 求一个未获取的次段的会话信息并将生成的会话信息存储在其内。举例来说,会话信息指 示播种者识别信息和所获取的数量。播种者识别信息是识别先前传输一个或多个次段的播 种者52的信息。播种者识别信息例如可以是,如上所述的播种者52的IP地址和端口号,播 种者52的MAC地址,订阅者ID,或者其中任意的组合。已获取的数量指示已经获取的加密 的段的数据的数量。已获取的数量可以是,例如,由加密的段内部的数据的头部位置和已 获得的部分数据的结束位置计算的数据长度,在构成加密的段的次段中已经获取的次段的 总数据长度,或者已经获取的次段的数量。
播种者52从外部存储装置读取出在部分数据请求中已经请求的次段,并将读取的次段 传输至吸收者50。在播种者52已经接收到如图38所示的部分数据请求的情形中,播种者52 传输,具有从对应于在部分数据请求中指示的指定的段索引和指定的变量索引的加密的段 中指定的数据范围的数据。
接下来,将参照图39说明在根据第五实施例的内容分配》^统中执行的内容分配处理的 过程。在步骤S1到S4执行的处理同根据第一实施例的那些相同。在步骤S300,吸收者50执 行下载处理来下载加密的段。另一方面,播种者在步骤S301执fi:上载处理以上载加密的段。 图40是在下载处理和上载处理中的详细过程的流程图。在步骤S5到S7执行的处理同根据第 一实施例的那些相同。当将段请求传输至播种者52时,吸收者50在步骤S310判断作为将被 获取的目标的加密的段的数据是否已经被部分获取了。在吸收者5、0已经判断数据已经被部 分地获取的情形中(步骤S310:是),吸收者50引用含在会话信息中的播种者识别信息(步 骤S313),并识别先前已经传输一个或多个构成作为将被获取的目标的加密的段的次段的播 种者52。吸收者50进一步生成如图38中所示的部分数据请求作为段请:求(步骤S314),并 将生成的部分数据请求传输至播种者52 (步骤S312)。相反地,在吸'收者50已经判断作为 将被获取的目标的加密的段的数据还未被部分地获取的情形中(即,i^未获取加密的段的 数据)(步骤S310:否),吸收者50生成如第一实施例的说明中所述的段请求(步骤S311), 并将生成的段请求传输至播种者52 (步骤S312)。
另一方面,当播种者52在步骤S312己经接收到传输的段请求时,播禾巾者52从外部存储装置中读取出对应于段请求的加密的段或者次段,并将已经读取的加密的段或者次段传输 至吸收者50 (步骤S315)。当吸收者50已经接收到加密的段或者次段时(步骤S316),吸 收者50更新会话信息中的己获取数量(步骤S317)。然后,吸收者50判断段请求是否已经 完成(步骤S318)。在本实例中,在吸收者50在步骤S312已经接收到次段的情形中,吸收 者50对于用次段部分地构成的加密的段,将会话信息中指示的已获取数量同含在洪流文件 中的数据长度进行比较。在已获取的数量和数据长度匹配的情形中,吸收者50判断加密的 段的全部数据已经被获取并判断已经完成段请求(步骤S318:是)。然后吸收者50执行通 过将所有的构成加密的段的次段放在一起完成加密的段的完成处理。随后,吸收者50判断 吸收者50是否应该通过访问另一个播种者52来接收另一个加密的段(步骤S319)。在判断 处理的结果是肯定的情形中,处理回到步骤S5,在那里吸"fe者50访问另一个播种者52。相 反地,在步骤S319的判断处理的结果是否定的情形中,处i里结束。
另一方面,在步骤S318中会话信息中指示的已获取数量'和含在洪流文件的数据长度不 匹配的情形中,吸收者50判断加密的段的全部数据还未被获.取以及段请求还没有完成(步 骤S318:否)。在那个情形中,处理回到步骤S5,在那里吸收:者50引用会话信息并再次访 问先前已经传输一个或多个构成加密的段的次段的播种者52。,在此后的处理中,吸收者50 生成用于请求构成加密的段的次段当中的未获取的次段中的一^h的部分数据请求,并将生 成的部分数据请求传输至播种者52。吸收者50重复地执行从播种享f52获取未获取的次段的 处理,直到构成加密的段的所有的次段已经被获取。
在执行步骤S311的处理之后,在吸收者50在步骤S316接收加密的段的情形中,存在吸 收者50由于某种原因不能接收加密的段的全部数据的可能性。此外在那个情形中,如同在 其中吸收者50在步骤S315接收次段的实例,吸收者50在步骤S318, i虽过将会话信息中指示 的已获取数量同含在洪流文件中的数据长度进行比较来判断是否已经完成段请求。在吸收 者50已经判断还没有完成段请求的情形中,处理回到步骤S5,在那里吸收者50引用会话信 息并再次访问已经传输过加密的段的播种者52。在此后的处理中,吸收者50生成用于请求 加密的段的数据的未获取部分的部分数据请求(以与未获取的次段同摔的方式处理),并 将生产的部分数据请求传输至播种者52。此后执行的处理与如上所述的相同。另一方面, 在吸收者50在步骤S318已经判断已经在一个接收处理中完成段请求的情形中,吸收者50在 步骤S319执行如上所述的处理。
回到图39的说明,当吸收者50已经获取对于所有的分别对应于构成内容的段和构成加 密的内容的加密的段的全部数据时,吸收者50以如第一实施例中所述的同样的方式,执行
42步骤S10及其之后的处理。
在如上所述的构造中,吸收者50能够获取相对于已经由吸收者50部分地获取的加密的 段的必需的数据。因此,吸收者能够更快地完成每一个加密的段。因为吸收者50能够与其 他吸收者共用每一个加密的段,预期分配效率的水平会提高。
在如上所述的第五实施例中, 一种安排是可接受的,在其中,当播种者52传输次段时, 播种者52传输次段的一部分数据,而不是部分数据请求中请求的次段的全部数据。在其中 播种者52将识别次段的信息连同被传输的次段一起传输至吸收者50的另一种安排也是可 接受的。如果识别次段的信息是与如上所述的被用来指定次段的信息类似或者相同的信息 是可接受的。进一步,在多个次段被一次传输的情形中,即使次段将被成串安排在加密的 段内部,在其中用于识别每一个次段的信息连同次段一起被传输的安排是可接受的。在其 中显示多少个次段正在被传输的信息连同次段一起被传输的另一种安排是可接受的。
进一步,又一种安排是可接受的,在其中,在段请求已经请求加密的段的全部数据的 情形中,播种者52将指示将被传输的加密的段的全部数据的信息,而不是次段,连同加密 的段一起传输。
此外,又一种安排是可接受的,在其中,当播种者52已经从吸收者50接收请求加密的 段或者次段的段请求(以下,"新的段请求")时,播种者52根据传输还未完成的和已经 在接收到新的段请求之前先前接收到的另一个段请求中请求过的加密的段或者次段的数 据数量,拒绝或者延缓新的段请求中的请求。更具体地说,举例来说,在其中播种者52计 算其传输正在进行和还未完成、和已经在先前的段请求中请求过的加密的段或者次段的数 目,或者其传输还未完成的先前的段请求的数目的安排是可接受的。在计数值等于或者大 于阈值的情形中,播种者52拒绝新的段请求中的请求。另外,在其中播种者52延缓新的段 请求中的请求直到播种者52已经完成一些或者所有的正在进行的传输,以使响应目前处理 的先前的段请求而正在传输的加密的段或者次段的数量变得小于阈值的另一种安排是可 接受的。
进一步,又一种安排是可接受的,在其中,每次吸收者50已经获取加密的段或者次段 时,吸收者50传输消息给播种者52以将获取告知播种者52。又一种安排是可接受的,在其 中,作为用于识别加密的段或者次段的信息,消息含有由指定的段索引和指定的变量索引 以及指定次段和/或散列值的信息组成的集合(ij')。又一种安排是可接受的,在其中,当吸 收者50已经通过使用获取的次段完成加密的段时,吸收者50传输消息给播种者52以将完成 告知播种者52。又一种安排是可接受的,在其中,作为用于识别加密的段的信息,消息含
43有由指定的段索引和指定的变量索引和/或散列值组成的集合(i,j)。
在如上所述的第五实施例中,在其中部分数据请求进一步含有指示该请求是部分数据 请求的标记信息的另一种安排是可接受的。在其中一个部分数据请求请求多个次段的又一 种安排是可接受的。在那个情形中。又一种安排是可接受的,在其中,对于多个次段中的 每一个,部分数据请求指示由指定的段索引和指定的变量索引以及指定次段的信息组成的 集合(i,j)。在一个部分数据请求中请求的多个次段可以是将被成串安排在一个加密的段中的 次段或者是不会被成串安排在一个加密的段中的次段。进一步,如果次段是这样的分别 是一部分被解密成互相不同的段的互相不同的加密的段,这样也是可接受的。另一方面, 在其中播种者52将在部分数据请求中请求的多个次段的至少一个传输至吸收者50的又一
种安排是可接受的。
进一步,又一种安排是可接受的,在其中,为指定已经被部分获取的加密的段,部分 数据请求指示至少一个指定的段索引j,而不是由指定的段索引和指定的变量索引组成的集 合(ij)。在那个情形中,又一种安排是可接受的,在其中,当播种者52已经接收这样的部分 数据请求时,播种者52询问吸收者50有关指定那些已经被部分获取的加密的段的指定的变 量索引和指定次段的信息,并获取这类信息以使播种者52能够识别作为将被传输目标的次 段,并将识别出的次段传输至吸收者50。具有这样的安排,可以提高播种者52抵抗攻击的 忍耐水平。
又一种安排是可接受的,在其中,部分数据请求指示通过使用已经被部分获取的加密 的段的散列计算所计算得到的散列值,从而通过散列值指定已经被部分获取的和将作为获 取目标的加密的段。在那个情形中,播种者52预先获取含有包括每一个加密的段的散列值 在内的文件信息的洪流文件。因此,通过引用洪流文件,播种者52能够识别已经被部分地 获取的并在部分数据请求中指示的散列值指定的加密的段。
在如上所述的第五实施例中,另一种安排是可接受的,在其中每一个加密的段被预先 构造为被分成预设数量的次段,且数据编号(以下,"次段索引")被预先分配给每一个 次段。在这样的构造中,使用次段索引作为含在部分数据请求中的次段指定信息是可接受 的。在那个情形中,含在洪流文件中的文件信息被构造为指示构成加密的段的次段的总数。 进一步,另一种安排是可接受的,在其中,包括在吸收者50中的次段完成判断单元504通 过使用已经由吸收者50获取的关于加密的段次段的数目和在关于加密的段的含在洪流文 件中的文件信息中指示的次段的数目来执行完成判断处理。
在如上所述的第五实施例中,在其中洪流文件含有通过使用每一个次段所计算的散列值的另一种安排是可接受的。
在含在洪流文件中的文件信息包括通过使用加密的段的散列计算处理所计算得到的 散列值的情形中,在其中包括在吸收者50中的次段完成判断单元504按下述方法执行完成 判断处理的另一种安排是可接受的对于作为判断处理的目标的加密的段,次段完成判断 单元504计算已经被放在一起的次段的散列值,并且如果计算所得的散列值和含在洪流文 件中的加密的段的散列值匹配,次段完成判断单元504判断加密的段的全部数据已经被获 取。
在如上所述的第五实施例中,另一种安排是可接受的,在其中,当将部分数据请求传 输至播种者52时,包括在吸收者50中的内容获取单元500将用于识别吸收者50的吸收者识 别信息传输至播种者52,以使播种者52能够识别吸收者50。
在如上所述的第五实施例中,在步骤S318的判断处理的结果是否定的情形中,另一种 安排是可接受的,在其中,吸收者50将用于请求未获取的次段的部分数据请求传输至另一 个在其内存储加密的段的播种者52,而不是将部分数据请求传输至先前已经传输一个或多 个次段的播种者52。
进一步,在吸收者50不能从先前已经传输一个或多个构成加密的段的次段的播种者52
处接收部分未获取的构成加密的段的次段的情形中,另一种安排是可接受的,在其中,吸 收者50在预设的时段过去之后将部分数据请求传输至播种者52。又一种安排是可接受的, 在其中吸收者50将部分数据请求传输至另一个播种者52,或者将不同于部分数据请求的段 请求传输至播种者52或者另一个播种者52。
换句话说,在上述的说明中,在判断作为判断处理的目标的加密的段的全部数据还没 有被获取的情形中,吸收者50重复地执行从播种者52获取构成加密的段的次段当中未获取 的次段的其中一个的处理,直到所有的构成加密的段的次段已经被获取;然而,将吸收者 50构造为使其不执行该处理也是可接受的。
此外,在已经判断作为判断处理的目标的加密的段的全部数据还没有被获取的情形 中,另一种安排是可接受的,在其中,吸收者50不尝试获取未获取的次段,而丢弃已获取 的用于加密的段的次段,以使吸收者50对于通过解密加密的段所获取的段,再一遍启动处 理以获取加密的段。
在如上所述的歩骤S313,另一种安排是可接受的,在其中,播种者52判断从吸收者50 传输的段请求是否是非法的,以使播种者52能够根据判断处理结果拒绝次段的加密的段的 传输。图41是根据本变型例的播种者52的示例性功能图表。播种者52包括内容传输单元话信息管理单元528。当吸收者50已经访问播种者52时, 内容传输单元526将段信息传输至吸收者50。内容传输单元526还从吸收者50接收段请求并 根据段请求和非法请求判断单元527执行的判断处理的结果将加密的段或者次段传输至吸 收者50。
会话信息管理单元528在其内存储用来管理与加密的段或者次段的传输有关的会话的 会话信息。会话信息被与用来识别加密的段或者次段将被传输至其的吸收者50的吸收者识 别信息对应地存储。会话信息含有加密的段或者由次段部分构成的加密的段的段索引和变 量索引以及已发送数据的数量。当内容传输单元526从吸收者50接收段请求时,内容传输 单元526还接收吸收者识别信息。已获取的数量指示已经获取的加密的段的数据的数量。 已获取的数量可以是,例如,由加密的段内部的数据的头部位置和已获得的部分数据的结 束位置计算的数据长度,在构成加密的段的次段中已经获取的次段的总数据长度,或者己 经获取的次段的数量。
非法请求判断单元527判断内容传输单元526从吸收者50接收到的段请求是否是非法 的。在本实例中,数据的起始位置和数据长度被用作部分数据请求中指示的次段指定信息, 该部分段请求是段请求的一种。此外,只在如果预设的条件被满足的情况下能够被指定的 起始位置(以下,"判断位置")被预先判定作为预设值。预设的条件是,举例来说,已 经确认一个吸收者50不尝试收集比预设的数量更多的加密的段,加密的段的每一个都是通 过加密互相相同的段,或者已经确认一个吸收者50不尝试收集比预设的数量更多的同样的 加密的段,或者这两个都已经被确认。可以通过引用如上所述的会话信息判断这样的预设 的条件是否被满足。可以通过判断从吸收者50接收的吸收者识别信息是否与会话信息中指 示的吸收者识别信息相同来判断一个吸收者50 (即,同一人)是否尝试收集加密的段。可 以通过判断在从吸收者50接收的段请求中指定的段索引是否与会话信息中指示的段索引 相同来判断加密的段是否每一个都是由加密互相相同的段而获取。
在预设的条件被满足的情形中,非法请求判断单元527判断内容传输单元526从吸收者 50接收的段请求不是非法的。相反地,在不满足预设的条件的'情形中,非法请求判断单元 527通过判断在内容传输单元526已经从吸收者50接收的作为段请求的部分数据请求中所 指示的起始位置是否与判断位置相同来判断段请求是否是非法的。举例来说,加密的段的 数据的头部位置(例如,"0")被用作判断位置。在该情形中,判断在部分数据请求中 指示的起始位置是否是头部位置(即,"0")。在判断处理的结果是肯定的情形中,这 指的是吸收者50正通过传输部分数据请求来请求从加密的段的数据的头部位置开始的数
46据,这不同于在第一实施例中说明的实例,在那里吸收者50在还未获取数据的时侯传输段 请求。因此,该动作被判断为非法。
在如上所述的构造中,在非法请求判断单元527已经判断段请求是非法的情形中,内 容传输单元526拒绝正请求传输加密的段或者次段的段请求,并不会将加密的段或者次段 传输至吸收者50。在那个情形中,内容传输单元526可能或者可能不将指示用于请求加密 的段或者次段的传输的请求已经被拒绝的消息传输至吸收者50。相反地,在非法请求判断 单元527已经判断段请求不是非法的情形中,内容传输单元526将在段请求中请求的加密的 段或者次段传输至吸收者50。
另一方面,每次吸收者50将段请求传输至播种者52,吸收者50将其的吸收者识别信息 传输至播种者52。在播种者52已经判断传输的段请求是非法的或者己经出现某些失败的情 形中,吸收者50不能从播种者52接收加密的段或者次段。在那个情形中,在其中吸收者50 从图40中的步骤S315之前的任一个开始再一遍启动处理的安排是可接受的。另一种安排是 可接受的,在其中,吸收者50判断不可以从播种者52接收加密的段,举例来说,如果吸收 者尝试获取加密的段的失败次数已经超过预设的值,或者如果由于吸收者50启动用来获取 加密的段的处理已过去的时间段已经超过预设的长度。又一种安排是可接受的,在其中, 播种者52将拒绝消息传输至吸收者50以指示请求该被判断为非法或者已经出现某些失败。 对于吸收者50来说,当接收到这样的拒绝消息时,判断不可以从播种者52接收加密的段是 可接受的。在吸收者50已经判断不可以从播种者52接收加密的段的情形中,吸收者50连接 到另一个播种者52并尝试获取加密的段。
进一步,又一种安排是可接受的,在其中播种者52不是将拒绝消息传输至吸收者50, 而是延缓来自吸收者50的段请求。在那个情形中,在其中在预设的时段过去之后播种者52 将拒绝消息传输至吸收者50或者播种者52使与吸收者50的连接被终止的安排是可接受的。
只要非法请求判断单元527能够判断在其中怀疑有吸收者50的攻击意图的段请求是非 法的时侯,除如上所述的实例以外的其他任何处理是可接受的。判断位置不限于如上所述 的一个。通过判断起始位置是否在判断位置之前或者之后,而不是判断起始位置是否与判 断位置相同,来判断段请求是否是非法的也是可以接受的。
在第五实施例的一个变型例中所说明的次段索引被使用的情形中,使用次段索引的值 作为判断索引,而不使用判断位置,是可接受的。举例来说,构造位于加密的段的头部的 次段的次段索引的值以使其用作判断索引(即,预设值)是可接受的。如果判断位置和判 断索引每一个都是可变值,而不是预设值,也是可接受的。接下来,将说明根据本发明的第六实施例的内容分配系统。与第一到第五实施例的任 何一个相同的第六实施例的部分将使用同样的标记说明或者从说明中省略。
图42是根据本发明的第六实施例的内容分配系统的示意图。根据第六实施例的内容分 配系统的构造与根据第一到第五实施例的内容分配系统的构造的不同之处如下根据第六 实施例的内容分配系统进一步包括被连接到吸收者50和密钥服务器53的余量(residual)服 务器55。余量服务器55在其内存储加密的段(以下,"非循环的加密的段"),其个别地 提供作为每一个将与吸收者50对应地传输的加密的段。非循环的加密的段由加密构成内容 的段C1到CN中的段C1到CL (这里1《I^N)获得。然而,应当注意的是,非循环的加密的 段是通过用不同于用于加密那些在被加密之后被至少存储在初始做种者52A中的加密的段 的加密密钥来加密段C1至I」CL而获得的加密的段,并经由P2P网络NT发送与接收。图43是循 环加密的段和非循环的加密的段的实例的示意图。在图43中,对应于满足"l《《m和 1^N"的i和j的加密的段E(K(g))[Cj]是循环加密的段,而对应于满足"m+l《《m和 l敏"的i利的加密的段E(K(i, j))[Cj]是非循环加密的段。循环加密的段的数目和非循环 加密的段的数目不限于图43中所示的实例。含在根据第六实施例的洪流文件中的文件信息 包括指示哪些段是循环加密的段的信息,而不包括指示那些段是非循环加密的段的信息。
在如上所述的构造中,吸收者50将段请求(以下,"特殊段请求")传输至余量服务 器55以请求非循环加密的段。在该情形中,吸收者50将用于识别吸收者50的吸收者识别信 息放进特殊段请求并传输该特殊段请求。在该情形中,假设吸收者50请求的非循环加密的 段的段索引j对于每一个吸收者50被预先指定作为初始值。如果初始值是从满足l^L的值j 中随机选择的是可接受的。 一种安排是可接受的,在其中段索引j的初始值在吸收者50执行 的程序中被预先指定,或者由另一个节点通知吸收者50,或者吸收者50预先判定。当吸收 者50已经从余量服务器55接收到非循环加密的段E(K(ij))lCj]时,吸收者50将请求消息传输 至余量服务器55以请求用于解密非循环加密的段的解密密钥。
余量服务器55的硬件配置和第一实施例的说明中所描述的诸如吸收者50的每一个设 备的硬件配置基本一样。接下来,将说明当余量服务器55的CPU执行存储在存储设备或者 外部存储装置中的各种类型的程序时在如上所述的硬件配置中实现的各种类型的功能。图 44是余量服务器55的示例性功能图表。余量服务器55包括J空制单元550,包处理单元551, 网络接口单元552,验证交换处理单元553,非循环加密的段存储单元554,吸收者识别信 息存储单元556,吸收者识别信息比较单元555,非循环加密的段提供单元557,密钥存储 单元558和密钥提供单元559。控制单元550控制全部余量服务器55以及将来自吸收者识别信息比较单元555的通知 过渡给密钥提供单元559。包处理单元551将要被传输至诸如吸收者50的外部设备的各种类 型的数据封包并将包转发至网络接口单元552。包处理单元551还基于从网络接口单元552 转发的包获取数据。网络接口单元552控制与外部设备的通信,将从包处理单元551转发的 封包的数据传输至外部设备,并将从外部设接收的包转发至包处理单元551。
非循环加密的段存储单元554在其内存储非循环加密的段。吸收者识别信息存储单元 556在其内存储余量服务器55在过去将非循环加密的段传输至其的吸收者50的吸收者识别 信息。吸收者识别信息比较单元555判断吸收者识别信息存储单元556是否在其内存储从吸 收者50传输的吸收者识别信息,并根据判断处理的结果判定非循环加密的段是否应该被传 输。根据吸收者识别信息比较单元555执行的判定处理的结果,当非循环加密的段提供单 元557经由控制单元550被通知传输作为被传输目标的非循环加密的段时,非循环加密的段 提供单元557从非循环加密的段存储单元554读取非循环加密的段,并将读取的非循环加密 的段传输至吸收者50。
验证交换处理单元553经由网络接口单元552从吸收者50接收特殊段请求并与吸收者 50执行相互验证处理。在已经执行验证过程之后,验证交换处理单元553将接受消息传输 至吸收者50以指示请求已经被接受。举例来说,密钥存储单元558被设置在诸如HDD的外 部存储装置中并在其内存储被分别用来解密非循环加密的段的解密密钥。如上面说明的, 每一个解密密钥可以表示为,举例来说,K(ij)(这里满足m+l《《m'和l^L)。密钥提供 单元559接收用于请求用于解密非循环加密的段的解密密钥的请求消息,响应于请求消息 从密钥存储单元558读取解密密钥,并将读取的解密密钥经由网络接口单元552传输至吸收 者50。
接下来,将参照图45说明在根据第六实施例的内容分配系统中执行的内容分配处理的 过程。步骤S1到S7执行的处理与根据第一实施例的那些相同并从附图中省略。在步骤S8到 S9执行的处理也和第一实施例中的那些相同。在步骤S9的处理已经执行之后,当吸收者50 已经从播种者52接收到循环加密的段时,吸收者50在步骤S960判断接下来将被获取的段是 否是非循环加密的段。在吸收者50已经获取对应于段C1到CN当中除了与被预先指定用于 非循环加密的段的段索引j相同的段以外的段的循环加密的段的情形中,判断处理的结果是 肯定的。在那个情形中,在步骤S961,吸收者50将特殊段请求传输至余量服务器55,特殊 段请求含有用于识别吸收者50的吸收者识别信息并请求非循环加密的段。相反地,在步骤 S960的判断处理的结果是否定的情形中,处理回到步骤S8,并且吸收者50访问播种者52并尝试获取循环加密的段,该循环加密的段是通过将那些还没有被获取的段C1到CN当中的 段加密而获得的。
另一方面,当余量服务器55已经接收到特殊段请求时(步骤S962),余量服务器55与 吸收者50执行相互验证处理。在相互验证处理已经执行之后,余量服务器55将接受消息传 输至吸收者50以指示特殊段请求已经被接受(步骤S963)。吸收者50己经从余量服务器55 接收接受消息时(步骤S964),吸收者50等待来自余量服务器55的非循环加密的段的传输。 在步骤S965,余量服务器55对于特殊段请求执行如下所述的比较处理。
图46是根据第六实施例的余量服务器55执行的比较处理中的过程的流程图。包括在余 量服务器55中的吸收者识别信息比较单元555将含在段请求中的吸收者识别信息与存储在 吸收者识别信息存储单元556中的吸收者识别信息进行比较(步骤S9651),并且判断吸收 者识别信息存储单元556是否已经在其内存储同样的吸收者识别符(步骤S9652)。在吸收 者识别信息比较单元555已经判断吸收者识别信息存储单元556没有在其内存储同样的吸 收者识别信息的情形中,吸收者识别信息比较单元555判定^"应于预先已经被指定的段索 引j的非循环加密的段E(K(i,j))[Cj]应该被传输。然后,吸收者识别信息比较单元555经由控 制单元550通知非循环加密的段提供单元557,将非循环加密的段传输至吸收者50。此外, 吸收者识别信息比较单元555将吸收者识别信息存储进吸收者i只别信息存储单元556。非循 环加密的段提供单元557从非循环加密的段存储单元554中读取出其传输已经由吸收者识 别信息比较单元555经由控制单元550通知的非循环加密的段,并将读取的非循环加密的段 经由网络接口单元552传输至吸收者50 (步骤S9653)。在存在多4^用于吸收者50的对应于 已经被预先指定的段索引j的非循环加密的段E(K(i,j))[Cj]的情形中,换言之,在存在两个或 更多变量索引i的情形中,余量服务器55选择任意值作为变量索引i,,并且判定作为将被传 输的目标的非循环加密的段。
另一方面,在吸收者识别信息比较单元555已经在步骤S9652判断吸收者识别信息存储 单元556在其内存储同样的吸收者识别信息的情形中,换言之,在余lt服务器55在过去将 非循环加密的段传输至吸收者50的情形中,吸收者识别信息比较部件555判定非循环加密 的段不应该被传输,并经由控制单元550通知非循环加密的段提供单元55 7将非循环加密的 段传输至吸收者50是禁止的(步骤S9654)。
下面的说明基于非循环加密的段已经在步骤S9653被传输的假设。回.到图45的说明, 在那个情形中,当吸收者50已经接收到非循环加密的段时(步骤S966),'吸收者50传输请 求消息至余量服务器55,以请求用于解密非循环加密的段的解密密钥(步;潔S967)。当余量服务器55已经接收到请求消息时,余量服务器55从外部存储装置读取解密密钥,并且响 应请求消息将读取的解密密钥传输至吸收者50 (步骤S968)。吸收者50然后从余量服务器 55接收解密密钥(步骤S969)。此后的处理中的过程从附图中省略。在如图12所示的步骤 SIO,吸收者50将请求消息传输至密钥服务器53以请求含有被用来解密已经由吸收者50获 取的循环加密的段的解密密钥的密钥环。然后,按照与第一实施例同样的方式,在内容分 配系统中执行如图12所示的步骤S11到S16的处理。
在如上所述的构造中,可以将段C1到CN中的哪一个是由解密非循环加密的段所获得 的保密。因此,可以防止这样的攻击,即由解密非循环加密的段所获得的段和由加密其他 段所获得的被用来解密循环加密的段的解密密钥被公开,以致内容被非法使用。
在如上所述的第六实施例中,特殊段请求中吸收者50请求的非循环加密的段 E(K(g))[Cj]的段索引j (这里满足m+l《i^n和i^L)被预先指定;然而,段索引j并非必须 被预先指定。在那个情形中, 一种安排是可接受的,在其中特殊段请求含有指定作为将被 获取的目标的非循环加密的段的段索引,或者特殊段请求含有指示已经被获取的循环加密 的段的索引的序列的序列信息。
在特殊段请求被构造成含有序列信息的情形中,另一种安排是可接受的,在其中,余 量服务器55将由吸收者识别信息和含在特殊段请求中的序列信息组成的集合存储进吸收 者识别信息存储单元556中,以使在步骤S965通过使用由吸收者识别信息和序列信息组成 的集合执行比较处理。
进一步,如果判定将被传输至吸收者50的非循环加密的段的段索引j的主体是余量服务 器55,密钥服务器53,播种者52或者其他任何通信设备是可接受的。
此外,被传输至吸收者50的非循环加密的段的段索引j可能具有任意值,或者可能具有 根据余量服务器55接收的特殊段请求的顺序被增加的值。此外,在内容索引被分派给内容 的情形中,如果段索引j具有通过使用大量诸如内容索引,节点信息和吸收者识别信息的信 息的段的散列函数计算出的值是可接受的。判定将被传输至吸收者50的非循环加密的段的 段索引j的主体能够通过预先从吸收者50获取这样的信息段来判定段索引j。
就时机而言,另一种安排是可接受的,在其中,在特殊段请求已经被从吸收者50传输 至余量服务器55之后,判定哪个非循环加密的段将被传输至吸收者50。
对于吸收者50来说,在特殊段请求中请求多个非循环加密的段是可接受的。此外,另 一种安排是可接受的,在其中吸收者50能够获取的非循环加密的段的数目对于每个吸收者 50是不同的。又一种安排是可接受的,在其中以段索引j对于每一个吸收者50都是不同的方式指定吸 收者50获取的非循环加密的段的段索引j。换句话说,对于余量服务器55来说,以解密非循 环加密的段所获取的段对于每一个吸收者50是不同的这样的方式,将非循环加密的段分别 传输至吸收者50是可接受的。
进一步,又一种安排是可接受的,在其中由吸收者50获取的非循环加密的段的段索引 j和变量索引i组成的集合以集合对于每一个吸收者50是不同的这样的方式被指定。换句话 说,对于余量服务器55来说,以解密非循环加密的段所获取的段对于每一个吸收者50是不 同的这样的方式,将非循环加密的段分别传输至吸收者50是可接受的。
在如上所述的第六实施例中,余量服务器55任意地判定将被传输至吸收者50的非循环 加密的段E((ij))[Cj]的变量索弓ii (这里满足m+l^m'和l^L);然而,另一种安排是可接 受的,在其中,变量索引i具有固定值或者根据余量服务器55接收特殊段请求的顺序而增加 的值。此外,在内容索引被分派给内容的情形中,如果变量索引清通过使用大量诸如内容 索引,节点信息和吸收者识别信息的信息段的散列函数计算出的值是可接受的。进一步, 如果非循环加密的段的变量索引i的值在非循环加密的段的段索引j的值被判定之前或者之 后被判定是可接受的。另一种安排是可接受的,在其中,将被传输至吸收者50的非循环加密 的段的变量索引i以非循环加密的段被分配至其的吸收者50的分配数目中分散的水平变小 这样的方式被判定是可接受的。
在如上所述的第六实施例中,含在吸收者50在步骤S1获取的洪流文件中的文件信息不 包含指示哪些段是非循环加密的段的信息。因此,存在吸收者50可以为段C1到CN中的每 一个获取循环加密的段的可能性。在那个情形中, 一种安排是可接受的,在其中,当吸收 者50从播种者52请求循环加密的段时,吸收者50请求对应于除了已经被预先指定作为非循 环加密的段的段索引j的索引之外的索引的加密的段。又一种安排是可接受的,在其中,如 果吸收者50已经从播种者52接收对应于段索引j的加密的段,吸收者50删除已接收的加密的 段。
在如图45中所示的步骤S9,当播种者52将加密的段传输至吸收者50时,另一种安排是 可接受的,在其中,播种者52不将通过加密对应于已经被预先指定作为将被传输至吸收者 50的非循环加密的段的段索引的索引的段所获得的循环加密的段,传输至吸收者50。
在如上所述的第六实施例中,就时机而言,在吸收者50己经获取用于段C1到CN当中 不同于对应于已经被预先指定作为非循环加密的段的段索引j的段的循环加密的段之后,吸 收者50从余量服务器55请求非循环加密的段;然而,本发明不限于此实例。另一种安排是可接受的,在其中,在吸收者50获取分别用于段C1到CN的循环加密的段之前,或者在吸 收者50正在获取循环加密的时间内,或者在吸收者50获取循环加密的段的同时,吸收者50 请求非循环加密的段。
就时机而言,对于吸收者50来说,在吸收者50已经将请求消息传输至密钥服务器53以 请求含有被用来解密吸收者50获取的循环加密的段的解密密钥的密钥环之后,或者吸收者 50正在传输请求消息的同时,从余量服务器55请求用于解密非循环加密的段的解密密钥是 可接受的。
作为如上所述的第六实施例中,另一种安排是可接受的,在其中,吸收者50传输至余 量服务器55以请求用于解密非循环加密的段的解密密钥的,作为用于识别将对其使用解密 密钥的非循环加密的段的信息的请求消息,含有下述至少其中一种非循环加密的段的段 索引和变量索引;非循环加密的段的部分数据;部分数据的散列值;非循环加密的段的散 列值;和吸收者50的识别信息。具有这样的构造,余量服务器55从非循环加密的段存储单 元554读取用于解密通过使用含有这些的信息识别的非循环加密的段的解密密钥,并将读 取的解密密钥传输至吸收者50。
在如上所述的第六实施例中,余量服务器55传输用于解密非循环加密的段的解密密 钥;然而,另一种安排是可接受的,在其中,密钥服务器53在其内存储分别用来解密非循 环加密的段的解密密钥,从而吸收者50在用于请求用于循环加密的段的密钥环的请求消息 中请求用于解密吸收者50已经获取的非循环加密的段的解密密钥。在那个情形中,如果在 已经执行了第一实施例的说明中描述的比较处理之后,密钥服务器53被构造成响应请求消 息将解密密钥传输至吸收者50是可接受的。又一种安排是可接受的,在其中,代替密钥服 务器53,另一个通信设备在其内存储被用来解密非循环加密的段的解密密钥,以使另一个通 信设备响应来自吸收者50的请求将解密密钥传输至吸收者50。
在如上所述的第六实施例中,包括在余量服务器55中的密钥存储单元558在其内存储 用于解密非循环加密的段的解密密钥;然而,另一种安排是可接受的,在其中,余量服务 器55不包括密钥存储单元558,以及在其内存储解密密钥连同非循环加密的段的非循环加 密的段存储单元554。在步骤S9653,又一种安排是可接受的,在其中包括在余量服务器55 中的非循环加密的段提供单元557从非循环加密的段存储单元554读取出,其传输已经由吸 收者识别信息比较单元555经由控制单元550通知的非循环加密的段,并且还读取用于解密 非循环加密的段的解密密钥,以致非循环加密的段提供单元557将非循环加密的段和解密 密钥经由网络接口单元552传输至吸收者50。
53在如上所述的第六实施例中,另一种安排是可接受的,在其中余量服务器55进一步在 其内存储循环加密的段,以及吸收者50从余量服务器55不仅请求非循环加密的段还请求循 环加密的段。在那个情形中,在余量服务器55已经在步骤S9652判断吸收者识别信息存储 单元556未在其内存储同样的吸收者识别信息的情形中,余量服务器55将吸收者50已经请 求的非循环加密的段和循环加密的段中的至少一个传输至吸收者50。
在如上所述的第一到第六实施例中,另一种安排是可接受的,在其中密钥服务器53和 吸收者50在已经执行相互验证处理之后,将作为通信目标的数据加密。图28是以这样的方 式被构造的密钥服务器的示范性示意图。除如上所述的控制单元530,包处理单元531,网 络接口单元532,认证和密钥交换处理单元533,密钥存储单元534,序列信息存储单元536, 序列信息比较单元535和密钥提供单元537之外,密钥服务器53还包括加密处理单元538。 认证和密钥交换处理单元533执行处理以同吸收者50交换被用来加密作为通信目标的数据 的加密密钥。加密处理单元538通过使用认证和密钥交换处理单元533交换的加密密钥将作 为通信的目标的数据加密并将加密的数据经由网络接口^>元532传输至吸收者50。
在如上所述的第一到第六实施例中,如果追踪器51,密钥服务器53和内容创建者提供 的服务器中任何一个执行将内容分割成多段的处理和将每一段加密的处理是可接受的。还 可以假设加密的段被由追踪器51,密钥服务器53和可靠的第三方(例如,内容创建者提供 的服务器)中的任何一个给予播种者52A (即,初始播种者)。
在如上所述的第一到第六实施例中,在其中密钥服务器53本身发出并生成加密密钥和 解密密钥中的一个或者两者都有的安排是可接受的。在其中S 钥服务器53获取追踪器51或 者内容创建者提供的服务器发出或者生成的密钥的又一种安排:.是可接受的。在上述的说明
中,内容C已经被分离成的所有的段C1到CN中的每一个都用不同的加密密钥加密;然而, 本发明不限于此实例。另一个在其中两个或更多的段用互相相同的加密密钥加密的安排是 可接受的。
在上述的第一到第六实施例中,追踪器51的数目,播种者52的数目,和吸收者50的数 目不限于上述的实例。
在上述的说明中,销售服务器54被连接到P2P网络NT以致吸收者50从销售服务器54获 取洪流文件;然而,并非必须被连接到P2P网络NT。在其中吸收者5;0通过例如读取记录在 诸如CD-ROM的记录介质上的洪流文件来获取洪流文件的另一种安,非是可接受的。
进一步,在上述的说明中,吸收者50经由网络被连接到密钥服纟§"器53;然而,在其中 吸收者50经由专用线或者经由代理服务器,而不是经由网络被连接^l」密钥服务器53的另一
54种安排是可接受的。具有该安排,可以提高管理能力并可以保护位于代理服务器之后一级 的密钥服务器免受直接攻击。
将第一到第六实施例中的任何一个的所有或者部分组合是可接受的。在第二实施例与 第三实施例组合的情形中,将播种者信息,比如洪流文件构造为含有与存储在密钥服务器 53中的指定的加密的段有关的信息是个很好的想法。
在如上所述的第一到第六实施例中,在其中吸收者50执行的程序被存储在连接到诸如 因特网的网络的计算机,以致程序作为经由网络下载被提供的安排是可接受的。另一种安 排是可接受的,在其中各种类型的程序作为记录在诸如CD-ROM,软磁盘(ED),高密度 可记录磁盘(CD-R),或者数字式通用碟片(DVD)的计算机可读的记录介质上,在处 于可安装的格式或者可执行的格式的文件中被提供。在那个情形中,当吸收者50从如上所 述的记录介质读取并执行程序时,程序被装载进主存储装置(例如,RAM)以致功能构造 的说明中所述的组成元件在主存储装置中生成。相同的应用于播种者52中实施的各种类型 的程序,在密钥服务器53中实施的各种类型的程序,在追踪器51中实施的各种类型的程序 和在余量服务器55中实施的各种类型的程序。
如技术方案3所述的通信设备,其中第二接收单元对于文件信息指示的全部第一加密 的段和第二加密的段当中的至少一个,接收第一加密的段和第二加密的段中的二者之一。 [本发明的其他模式2]
如技术方案3或4所述的通信设备,其中第二接收单元包括
第三接收单元,该第三接收单元通过使用接收到的节点信息访问另一个通信设备并从 该另一个通信设备接收段信息,该段信息指示(i)存储在另一个通信设备中的第一加密的 段和用于解密第一加密的段的解密密钥之间的对应关系和(ii)存储在另一个通信设备中 的第二加密的段和用于解密第二加密的段的解密密钥之间的对应关系中的一个;以及
第四接收单元,该第四接收单元,基于文件信息,通过使用接收到的段信息,从另一 个通信设备接收第一加密的段和第二加密的段中的一个。
根据本发明的其他模式2的通信设备,其中
第一接收单元从管理服务器接收被用来访问多个另一个通信设备的节点信息,以及 在第四接收单元通过使用段信息,未能从另一个通信设备成功接收第一加密的段和第 二加密的段中的一个的情形中,第三接收单元通过使用节点信息访问另一个通信设备并从另一个通信设备接收段信息,以及
第四接收单元基于文件信息,通过使用已经从另一个通信设备接收的段信息,从另一 个通信设备接收第一加密的段和第二加密的段中的一个。
如技术方案7所述的通信设备,其中内容接收单元包括第七接收单元,该第七接收单 元从另一个通信设备接收第一加密的段和第二加密的段中任意一个,第一加密的段和第二 加密的段已经通过对不同于已经被加密以致变成已接收的播种者信息中指定的第一加密 的段和第二加密的段其中之一的段进行加密而获得。
如技术方案l所述的通信设备,其中
存在两个或更多第二加密的段,且该第二加密的段通过用第二加密密钥加密所有的段 中的每一个而生成,以及
内容接收单元从另一个通信设备接收对于每一个段的第一加密的段和第二加密的段
中的一个。
如技术方案l所述的通信设备,其中
第二加密的段通过用第二加密密钥加密多个段中的一个生成,且 内容接收单元从另一个通信设备接收对于每一个段的第一加密的段和第二加密的段
中的一个。 如技术方案5所述的通信设备,其中
获取单元获取对于每一个段的文件信息,该文件信息指示(i)通过预设的使用第一加 密的段的计算处理所计算出的计算值和用于解密第一加密的段的解密密钥之间的关系,以 及(ii)通过预设的使用第二加密的段的计算处理所计算出的计算值与用于解密第二加密 的段的解密密钥之间的关系的其中之一,
第三接收单元访问另一个通信设备并从另一个通信设备接收段信息,该段信息被用来 识别对应于存储在另一个通信设备中的第一加密的段和第二加密的段其中之一的段,
第四接收单元通过使用所接收到的段信息来接收第一加密的段和第二加密的段其中 之一,
内容接收单元进一步包括计算单元,该计算单元通过预设的使用第一加密的段和第二加密的段其中之一的计算处理来计算出计算值,且
密钥请求传输单元将请求消息传输至密钥服务器,该请求消息用于请求解密密钥,解 密密钥与计算值的对应关系在文件信息中指示。
如技术方案5所述的通信设备,其中
获取单元获取对于每一个段的文件信息,该文件信息指示(i)通过预设的使用第一加 密的段的计算处理所计算出的计算值和用于解密第一加密的段的解密密钥之间的关系以 及(ii)通过预设的使用第二加密的段的计算处理所计算出的计算值与用于解密第二加密 的段的解密密钥之间的关系的其中之一,
第三接收单元访问另 一个通信设备并从另 一个通信设备接收段信息,该段信息被用来 识别对应于存储在另一个通信设备中的第一加密的段和第二加密的段其中之一的段,
第四接收单元,基于文件信息,通过使用接收到的段信息,从另一个通信设备接收第 一加密的段和第二加密的段中的一个。
内容接收单元进一步包括计算值接收单元,该计算值接收单元从另一个通信设备接收
计算值,该计算值通过预设的使用第一加密的段和第二加密的段的其中之一的计算处理计 算而得,以及
密钥请求传输单元将请求消息传输至密钥服务器,该请求消息用于请求解密密钥,该 解密密钥与计算值的对应关系在文件信息中被指示。 [本发明的其他模式9] 如技术方案5所述的通信设备,其中
第三接收单元访问另一个通信设备并从另一个通信设备接收段信息,该段信息被用来 识别对应于存储在另一个通信设备中的第一加密的段和第二加密的段其中之一的段,
第四接收单元,基于文件信息,通过使用接收到的段信息,从另一个通信设备接收第 一加密的段和第二加密的段中的一个。
内容接收单元进一步包括计算值接收单元,该计算值接收单元从另一个通信设备接收 计算值,该计算值通过预设的使用第一加密的段和第二加密的段的其中之一的计算处理计 算而得,以及
密钥请求传输单元基于计算值将请求消息传输至密钥服务器,该请求消息用于请求识 别的解密密钥。如技术方案12所述的通信设备,进一步包括判断单元,该判断单元基于部分数据请求 中指定的数据范围判断部分数据请求是否是非法的,以及
在部分数据请求已经被判断为非法的情形中,段传输单元不会将已经在部分数据请求 中指定的数据范围内的数据传输至另一个通信设备。
如技术方案13所述的通信设备,其中
段请求传输单元将特殊段请求传输至通信服务器,该特殊段请求用于请求通过加密已 经预先分派给通信设备的段所获得的第三加密的段和加密含有识别信息的段所获得的第 三加密的段中的一个。
根据本发明的其他模式10的通信设备,其中内容接收单元从另一个通信设备接收第一 加密的段和第二加密的段的其中之一,该第一加密的段和第二加密的段对于除了已经被预 先分派给通信设备的段之外的段中的每一个段。
如技术方案13所述的通信设备,其中
段请求传输单元将特殊段请求传输至通信服务器,该特殊段请求用于请求第一加密的 段,第二加密的段和第三加密的段中的一个并含有识别信息,以及
内容接收单元从另 一个通信设备接收响应特殊段请求而已经由通信服务器传输的第 一加密的段,第二加密的段和第三加密的段中的一个。
如技术方案13所述的通信设备,进一步包括
特殊密钥请求传输单元将特殊请求消息传输至通信服务器,该特殊请求消息用于请求 将接收到的第三加密的段解密的解密密钥;以及
特殊密钥接收单元从通信服务器接收解密密钥,该解密密钥已经在特殊请求消息中被 请求。
如技术方案15所述的通信设备,进一步包括判断单元,该判断单元基于部分数据请求 中指定的数据范围判断部分数据请求是否是非法的,其中
在部分数据请求已经被判断为非法的情形中,段传输单元不会将已经在部分数据请求 中指定的数据范围内的数据传输至另一个通信设备。
58[本发明的其他模式16]
如技术方案15所述的通信设备,其中部分数据请求在第一加密的段和第二加密的段中
的一个内指定数据的起始位置,数据的结束位置和从数据的起始位置开始的数据长度中的 至少一种作为数据范围。 如技术方案15该的通信设备,其中
第一加密的段和第二加密的段中的一个被构造为被分割成预设数量的部分的数据,并
且数据编号被预先分派给数据的每一个部分,以及
部分数据请求指定被分派给数据的部分的一个或多个数据编号作为数据范围。 [本发明的其他模式18〗
如技术方案15所述的通信设备,其中判断单元通过判断部分数据请求中指定的数据范 围是否是预设值来判断部分数据请求是否是非法的。 [本发明的其他模式19] 如技术方案15所述的通信设备,其中
第一加密的段和第二加密的段中的一个被保持与段索引和变量索引的通信,该段索引 被用来识别段中的一个,该变量索引被用来识别对应于段的第一加密的段和第二加密的段 中的一个,且
请求接收单元接收部分数据请求,在该部分数据请求中,段索引和变量索引被用来指 定第一加密的段和第二加密的段中的一个,该第一加密的段和第二加密的段的部分数据在 部分数据请求中被请求。
如技术方案15所述的通信设备,其中请求接收单元接收部分数据请求,该部分数据请 求中通过预设的使用第一加密的段和第二加密的段中的一个的计算处理所计算出的计算 值被用于指定第一加密的段和第二加密的段中的一个,该第一加密的段和第二加密的段的 部分数据在部分数据请求中被请求。
如技术方案16所述的通信设备,进一步包括拒绝传输单元,在传输单元不传输第一段 请求中请求的数据的情形中,该拒绝传输单元将拒绝消息传输至另一个通信设备。 [本发明的其他模式22] 如技术方案14所述的通信设备,其中在传输单元已经接收到第一段请求但还未完成在第二段请求中请求的全部或部分数 据的传输的情形中,该第二段请求在第一段请求被接收之前已经被接收,以及其传输还未 完成的数据的量等于或者大于阈值的情形中,传输单元延缓在第一段请求中请求的数据的 传输,且
在传输单元响应第二段请求已经传输其传输还没有完成的数据的部分或者全部之后,
以及其传输还没有完成的数据的数量变成阈值之后,传输单元传输在第一段请求中请求的 部分或全部数据。
如技术方案19所述的密钥服务器,包括第二存储单元,该第二存储单元在其内存储每 一个都指示解密密钥的组合的序列信息的段,用于识别通信设备的第一识别信息,以及每 一个都指示解密密钥的组合中相应的一个已经被传输至通信设备多^次的次数值,同时保 持这些信息段彼此相对应,其中
对于已经在请求消息中请求的解密密钥,接收单元从通信设备接收用于识别通信设备 的索引信息以及第一识别信息,以及
在第二存储单元内存储指示与索引信息中指示的解密密钥的组合相同的解密密钥的 组合的序列信息的段,以及存储在第二存储单元中的与序列信息的段和第一识别信息对应 的次数值等于或者小于预设值的情形中,判定单元判定应该被传输解密密钥。
如技术方案20所述的密钥服务器,进一步包括第三存储单元,该第三存储单元内存储 通过将段中指定的段加密而获取的指定的加密的段,其中
在判定单元已经判定解密密钥应该被传输的情形中,密钥传输单元从第三存储单元读 取指定的加密的段并将读取的指定的加密的段传输至通信设备。
如本发明的其他模式24所述的密钥服务器,在判定单元已经判定解密密钥应该被传输 的情形中,密钥传输单元从第一存储单元读取在请求消息中请求的并且每一个都用于解密 加密的段的其中之一的解密密钥以及用于不同的段的第二加密的段,以及从第一存储单元 读取用于解密保持与通信设备的通信的指定的加密的段的解密密钥,该指定的加密的段的 每一个都通过加密构成部分内容的并且不同于段的指定的段获取,该指定的加密的段的每 一个都与另一个通信设备和通信设备保持通信,且密钥传输单元将读取的解密密钥传输至
通信设备。[本发明的其他模式26]
如技术方案17所述的密钥服务器,进一步包括替代识别单元,在判定单元已经判定解 密密钥将不会被传输的情形中,该替代识别单元识别不同于存储在第二存储单元中的序列 信息的段中指示的组合的解密密钥的组合,其中
在判定单元已经判定解密密钥将不会被传输的情形中,密钥传输单元传输指示已识别 的组合的替代索引信息。
如技术方案17所述的密钥服务器,进一步包括
获取单元获取用于每一个段的文件信息,该文件信息指示(i)通过预设的使用第一加 密的段的计算处理所计算出的计算值和用于解密第一加密的段的解密密钥之间的关系以 及(ii)通过预设的使用第二加密的段的计算处理所计算出的计算值与用于解密第二加密 的段的解密密钥之间的关系的其中之一,其中
接收单元从另一个通信设备接收含有计算值的请求消息,该计算值通过预设的使用第
一加密的段和第二加密的段的其中之一的计算处理计算而得,且 判定单元包括
识别单元,该识别单元识别解密密钥,该解密密钥与含在请求消息中的计算值的 对应关系在文件信息中被指示;以及
第一判定单元,该第一判定单元基于包'括己识别的解密密钥的解密密钥的组合来
判定解密密钥是否应该被传输。 [本发明的其他模式28]
如技术方案26所述的通信服务器,进一步包括
第三存储单元,该第三存储单元内存储被用来解l智第三加密的段的解密密钥;
第二接收单元,该第二接收单元从通信设备接收用'于请求解密密钥的其中之一的请求
消息;以及
第二传输单元,该第二传输单元将在请求消息中请求的解密密钥的其中一个传输至通 信设备。
内容分配系统,在该内容分配系统中,接收构成部分内3享的多个段的通信设备,至少 另一个通信设备,在其内存储被用来访问另一个通信设备的—-! 点信息的管理服务器,以及密钥服务器彼此通信,
通过用第一加密密钥加密多个段中的每一个而生成的多个第一加密的段, 通过用第二加密密钥加密多个段中的一个或多个而生成的一个或多个第二加密的段, 对于每一个段,第一加密密钥不同于第二加密密钥, 通信设备包括-
从管理服务器接收访问信息的访问信息接收单元;
内容接收单元,该内容接收单元通过使用已接收的节点信息访问该至少另一个通 信设备,并对于每一个段从另一个通信设备接收第一加密的段和第二加密的段中的一个;
第一传输单元,该第一传输单元将请求消息传输至密钥服务器,该请求消息用于 请求每一个都被用于对内容接收单元对于不同的段接收到的第一加密的段和第二加密的 段中的一个进行解密的解密密钥,该密钥服务器在其内存储解密密钥;以及
密钥接收单元,该密钥接收单元接收密钥服务器响应请求消息而已经提供的解密密 钥,以及
密钥服务器包括
接收单元,该接收单元从通信设备接收请求消息; 第一存储单元,该第一存储单元在其内存储解密密钥;
判定单元,该判定单元基于已经在请求消息中请求的解密密钥的组合判定解密密 钥是否应该被传输;以及
密钥传输单元,在判定单元已经判定解密密钥应该被传输的情形中,该密钥传输
单元从第一存储单元读取出请求消息中请求的解密密钥并将读取的解密密钥传输至通信 设备。
通信设备实施的通信方法,该通信设备包括内容接收单元,传输单元和密钥接收单元 并接收构成部分内容的多个段,其中
多个第一加密的段通过用第一加密密钥加密多个段中的每一个而生成, 一个或多个第二加密的段通过用第二加密密钥加密多个段中的一个或多个而生成, 对于每一个段,第一加密密钥不同于第二加密密钥,
内容接收单元从另一个通信设备接收用于每一个段的第一加密的段和第二加密的段 中的一个,以及
62传输单元将请求消息传输至密钥服务器,该请求消息用于请求每一个都被用于解密相 应的加密的段的解密密钥,该密钥服务器在其内存储解密密钥,以及
密钥接收单元接收已经由密钥服务器响应请求消息而提供的解密密钥。 [本发明的其他模式31]
密钥服务器实施的通信方法,该密钥服务器包括接收单元,判定单元,密钥传输单元 和存储单元,该存储单元内存储解密密钥,该密钥服务器与接收构成部分内容的多个段的 通信设备通信,其中
多个第一加密的段通过用第一加密密钥加密多个段中的每一个而生成,
一个或多个第二加密的段通过用第二加密密钥加密多个段中的一个或多个而生成,
对于每一个段,第一加密密钥不同于第二加密密钥,
通信设备从另一个通信设备接收对于每一个段的第一加密的段和第二加密的段中的 —个,
接收单元从通信设备接收请求消息,该请求消息用于请求每一个都被用于解密对于不 同的段的第一加密的段和第二加密的段的解密密钥,
判定单元,该判定单元基于已经在请求消息中请求的解密密钥的组合判定解密密钥是 否应该被传输,以及
在判定单元已经判定组合应该被传输的情形中,密钥传输单元从存储单元读取出对应 于请求消息中请求的组合的解密密钥并将读取的解密密钥传输至通信设备。 [本发明的其他模式32]
管理服务器实施的通信方法,该管理服务器包括选择单元,传输单元以及存储单元, 该管理服务器与接收构成部分内容的多个段的通信设备通信,其中
多个第一加密的段通过用第一加密密钥加密多个段中的每一个而生成, 一个或多个第二加密的段通过用第二加密密钥加密多个段中的一个或多个而生成, 对于每一个段,第一加密密钥不同于第二加密密钥,
通信设备从另一个通信设备接收对于每一个段的第一加密的段和第二加密的段中的 一个,
存储单元在其内存储被用来访问另 一个通信设备连接目的地信息, 选择单元对于至少一个段选择已经由加密该至少一个段而获取的第一加密的段和第
二加密的段中的一个,以及
传输单元从存储单元读取出被用来访问另一个通信设备的连接目的地信息,并将读取的连接目的地信息和指定已经被选择的第一加密的段和第二加密的段中的一个的播种者 信息传输至通信设备。
通信服务器实施的通信方法,该通信服务器包括第一存储单元,第二存储单元,第一 接收单元和第一传输单元,该通信服务器与接收构成部分内容的多个段的通信设备通信, 其中
多个第一加密的段通过用第一加密密钥加密多个段中的每一个而生成, 一个或多个第二加密的段通过用第二加密密钥加密多个段中的一个或多个而生成, 一个或多个第三加密的段通过用第三加密密钥加密多个段中的一个或多个而生成, 对于每一个段,第一加密密钥,第二加密密钥和第三加密密钥彼此不同, 通信设备从另一个通信设备接收对于每一个段的第一加密的段和第二加密的段中的 一个'
在第三加密的段中的一个已经被传输至通信设备的情形中,第一存储单元在其内存储 第三加密的段,第二存储单元在其内存储用于识别通信设备的识别信息,
第一接收单元从通信设备接收特殊段请求,该特殊段请求是用于请求第三加密的段中
的一个并含有用于识别通信设备的识别信息,以及
在第二存储单元未在其内存储含在特殊段请求中的识别信息的情形中,第一传输单元 从存储单元读取第三加密的段中的一个并将读取的第三加密的段传输至通信设备。
6权利要求
1. 一种接收多个构成内容的部分的段的通信设备,其特征在于,所述通信设备包括内容接收单元,所述内容接收单元从另一个通信设备接收对于每一个所述段的第一加密的段和第二加密的段的二者之一,多个第一加密的段通过用第一加密密钥加密所述段而得,所述第二加密的段通过用第二加密密钥加密至少一个所述段而得,以及用于加密同样的段的所述第一加密密钥和所述第二加密密钥彼此不同;密钥请求传输单元,所述密钥请求传输单元将用于请求用作解密所述第一加密的段和所述第二加密的段中二者之一的解密密钥的请求消息传输到密钥服务器;以及以及密钥接收单元,所述密钥接收单元响应所述请求消息从所述密钥服务器接收所述解密密钥。
2. 如权利要求1所述的通信设备,其特征在于,进一步包括获取单元,所述获取单 元获取文件信息,所述文件信息指示对于每一个所述段的所述第一加密的段和所述第二 加密的段的二者之一的全部或部分,其中所述内容接收单元基于所述文件信息从所述另一个通信设备接收所述第一加密的段 和所述第二加密的段的二者之一。
3. 如权利要求2所述的通信设备,其特征在于,所述内容接收单元包括 第一接收单元,所述第一接收单元从管理服务器接收用于访问所述另一个通信设备的节点信息,所述另一个通信设备存储所述第一加密的段和所述第二加密的段中的至少 一个,以及第二接收单元,所述第二接收单元通过使用所述节点信息访问所述另一个通信设备, 并基于所述文件信息从所述另一个通信设备接收所述第一加密的段和所述第二加密的段 的二者之一。
4. 如权利要求3所述的通信设备,其特征在于,所述获取单元进一步获取第一访问 信息,所述第一访问信息用于访问所述管理服务器,以及所述第一接收单元通过使用所获取的第一访问信息访问所述管理服务器并接收所述 节点信息。
5. 如权利要求2所述的通信设备,其特征在于,所述内容接收单元包括 第一接收单元,所述第一接收单元从所述另一个通信设备接收段信息,所述段信息指示所述第一加密的段和用于解密所述第一加密的段的所述解密密钥之间的对应关系和 所述第二加密的段和用于解密所述第二加密的段的所述解密密钥之间的对应关系的二者 之一,以及第二接收单元,所述第二接收单元基于所述文件信息通过使用所述段信息接收所述 第一加密的段和所述第二加密的段的二者之一。
6. 如权利要求l所述的通信设备,其特征在于,所述密钥请求传输单元将索引信息传输到密钥服务器,所述索引信息指示分别对应 于所述段并在所述请求消息中被请求的解密密钥的组合,以及所述密钥接收单元响应所述请求消息从所述密钥服务器接收所述解密密钥。
7. 如权利要求1所述的通信设备,其特征在于,所述内容接收单元包括 第一接收单元,所述第一接收单元从管理服务器接收播种者信息,所述播种者信息指定所述第一加密的段和所述第二加密的段的二者之一,以及第二接收单元,所述第二接收单元通过访问存储^"所述播种者信息指定的所述第一 加密的段和所述第二加密的段的二者之一的另一个通信设备来接收所述第一加密的段和 所述第二加密的段的二者之一。
8. 如权利要求l所述的通信设备,其特征在于,所述内容接收单元从所述密钥服务器,管理服务器及-其他服务器中的至少一个接收 通过加密指定的段所获取的指定的加密的段,所述指定的l殳构成所述内容的部分并且不 同于所述段,所述密钥请求传输单元将请求消息传输到所述密钥服务l'旁,所述请求消息用于请求 用作解密所述指定的加密的段的解密密钥,以及所述密钥接收单元响应所述请求消息从所述密钥服务器接收用作解密所述指定的加 密的段的所述解密密钥。
9. 如权利要求1所述的通信设备,其特征在于,与另一个通信设备和通信设备相关联的指定的加密的段通过加密指定的段而获得, 所述指定的段构成所述内容的部分并且不同于所述段,所述内容接收单元从存储有所述指定的加密的段的另一个通信设备,所述密钥服务 器,管理服务器及其他服务器中的至少一个接收与所述通信设备关联的所述指定的加密 的段,所述密钥请求传输单元将请求消息传输到所述密钥服务器,所述请求消息用于请求 用作解密所述指定的加密的段的解密密钥,以及所述密钥接收单元响应所述请求消息从所述密钥服务器接收全部或者部分用于解密 所述指定的加密的段的解密密钥。
10. 如权利要求1所述的通信设备,其特征在于,进一步包括解密单元,所述解密 单元通过对每一个所述段使用所述解密密钥解密所述第一加密的段和所述第二加密的段 的二者之一。
11. 如权利要求5所述的通信设备,其特征在于,在所述解密密钥中,用于识别每一个所述段的段索引^1用于识别对于每一个所述段的所述第一加密的段和所述第二加密的段的二者之一的变量':索引彼此关联,所述获取单元获取所述文件信息,所述文件信息指示对于每一个所述段的所述段索 引和所述变量索引,第一接收单元访问所述另一个通信设备并从所述另一个iS信设备接收所述段信息, 所述段信息指示用于识别对应于所述第一加密的段和所述第二加密的段的二者之一的段 的所述段索引,所述第二接收单元基于所述文件信息、通过使用所述段信息,从所述另一个通信设备 接收所述第一加密的段和所述第二加密的段的二者之一,所述内容接收单元进一步包括变量接收单元,所述变量接收单元从所述另一个通信 设备接收变量索引信息,所述变量索引信息指示对应于所述第一加V穷的段和所述第二加 密的段的二者之一的所述段索引的所述变量索引,以及所述密钥请求传输单元将用于请求段索引和所述变量索引所识别的所述解密密钥的 所述请求消息传输至所述密钥服务器。
12. 如权利要求1所述的通信设备,其特征在于,进一步包括存储单元,所述存储单元在其内存储对于每一个所述段的所述第一加密的段和所述 第二加密的段的二者之一;请求接收单元,所述请求接收单元从另一个通信设备接收用于请求所述第一加密的 段和所述第二加密的段的二者之一的全部或部分数据的段请求;以及段传输单元,所述段传输单元将在所述段请求中请求的全部或者部分所述数据传输到所述另一个通信设备,其中所述请求接收单元接收部分数据请求,所述部分数据请求指定所述部分数据的数据 范围作为用于请求所述部分数据的所述段请求,以及所述段传输单元将在所述部分数据请求中指定的所述数据范围内的数据传输到所述 另一个通信设备。
13. 如权利要求l所述的通信设备,其特征在于,第三加密的段通过用第三加密密钥将所述段中的至少一个加密而生成, 用于加密同样的段的所述第一加密密钥,所述第二加密密钥和所述第三加密密钥彼 此不同,所述通信设备进一步包括段请求传输单元,所述段请求传输单元将用于请求所述第 三加密的段并含有用于识别所述通信设备的特殊段请求传输到通信服务器,以及所述内容接收单元响应所述特殊段请求从所述通信服务器接收所述第三加密的段。
14. 一种接收多个构成内容的部分的段的通信设备,其特征在于,所述通信设备包括存储单元,所述存储单元在其内存储对于每一个所述段的第一加密的段和第二加密 的段的二者之一,多个第一加密的段通过用第一加密密钥加密所述段而生成,所述第二 加密的段通过用第二加密密钥加密至少一个所述段而生成,且用于加密同样的段的所述 第一加密密钥和所述第二加密密钥彼此不同;请求接收单元,所述请求接收单元从另一个通信设备接收用于请求所述第一加密的 段和所述第二加密的段的二者之一的全部数据或部分数据的段请求;以及传输单元,所述传输单元将在所述段请求中请求的所述全部数据或者数据部分数据 传输到所述另一个通信设备。
15. 如权利要求14所述的通信设备,其特征在于,所述请求接收单元接收部分数据请求,所述部分数据请求指定部分数据的数据范围 作为用于请求所述部分数据的段请求,以及所述传输单元将在所述部分数据请求指定的所述数据范围内的数据传输到所述另一 个通信设备。
16. 如权利要求14所述的通信设备,其特征在于,在接收到第一段请求时,如果在 第二段请求中请求的全部数据或部分数据的传输还未完成以及未接收的数据的量等于或者大于阈值,所述第二段请求在接收所述第一段请求之前就被接收,所述传输单元不传 输在所述第一段请求中请求的数据。
17. —种密钥服务器,所述密钥服务器与接收构成内容:的部分的多个段的通信设备 通信,所述密钥服务器包括接收单元,所述接收单元从所述通信设备接收请求消息,所述请求消息用于请求用 作解密对于每一个所述段的第一加密的段和第二加密的段的二者之一的解密密钥,多个 第一加密的段通过用第一加密密钥加密所述段生成,第二加密的段通过用第二加密密钥 将所述段中的至少一个加密生成,用于加密同样的段的所述第一加密密钥和所述第二加 密密钥彼此不同,以及所述通信设备对于每一个所述段从另一个;通信设备接收所述第一 加密的段和所述第二加密的段的二者之一;第一存储单元,所述第一存储单元在其内存储数据解密密钥;判定单元,所述判定单元基于在所述请求消息中请求的解密密:钥的组合判定是否传 输所述解密密钥;以及密钥传输单元,当所述判定单元判定传输解密密钥时,所述密钥忙 输单元从所述第 一存储单元读取在所述请求消息中请求的所述组合中的解密密钥,并将所述解密密钥传输到所述通信设备。
18. 如权利要求17所述的密钥服务器,进一步包括第二存储单元,所述第二存储单 元在其内存储指示对于每一个段传输的解密密钥的组合的序列信息,其特征在于,所述判定单元基于指示在所述请求消息中请求的所述解密密钥的所述组合的所述序列信息是否被存储在所述第二存储单元中来判定是否传输所述解密密钥。
19. 如权利要求17所述的密钥服务器,其特征在于,接收单元从所述通信设备接收指示在所述请求消息中请求的所述解密密钥的所述组 合的索引信息,以及判定单元基于所述索引信息指示的所述解密密钥的所述组合判定是否传输所述解密 密钥。
20. 如权利要求17所述的密钥服务器,其特征在于,当所述判定单元判定传输所述 解密密钥时,所述密钥传输单元从所述第一存储单元读取在所述请求消息中请求的用于 解密对于每一个所述段的所述第一加密的段和所述第二加密的段的二者之一的所述解密 密钥以及用于解密通过加密指定的段所获取的指定的加密的段的解密密钥,并将所述解 密密钥传输到所述通信设备,所述指定的段构成所述内容的部分并且不同于所述段。
21. —种管理服务器,所述管理服务器与接收构成内容的部分的多个段的通信设备 通信,其特征在于,所述管理服务器包括第一存储单元,所述第一存储单元在其内存储用于访问另一个通信设备的连接目的地信息,所述通信设备从另一个通信设备接收对于每一个所述段的所述第一加密的 段和所述第二加密的段的二者之一,多个所述第一加密的段通过用第一加密密钥加密所 述段而生成,所述第二加密的段通过用第二加密密钥加密所述段中的至少一个而生成, 用于加密同样的段的所述第一加密密钥和所述第二加密密钥彼此不同;选择单元,所述选择单元选择通过加密所述段中至少一个所获得的第一加密的 段和第二加密的段的二者之一;以及传输单元,所述传输单元从第一存储单元读取所述连接目的地信息,并将所述 连接目的地信息和指定所选择的所述第一加密的段和所述第二加密的段的二者之一的播 种者信息传输到所述通信设备。
22. 如权利要求21所述的管理服务器,其特^E在于,所述播种者信息含有,指示所 选择的第一加密的段和用于解密所述第一加密的段的所述解密密钥的对应关系的索引信 息和指示所选择的第二加密的段和解密所述第二加密的段的所述解密密钥的对应关系的索引信息二者之一。
23. 如权利要求21所述的管理服务器,其特征在于,进一步包括第二存储单元,所 述第二存储单元在其内存储指示对于所述第一加密的段和用于解密所述第一加密的段的所述解密密钥之间的对应关系和所述第二加密的段和用于解密所述第二加密的段的所述 解密密钥之间的对应关系的二者之一,所述播种者信息是否被传输到所述通信设备的信 息,其中选择单元选择所述第一加密的段和所述第二加密的段的二者之一,对于所述第一加 密的段和所述第二加密的段的二者之一的指示所述播种者信息未被传输到所述通信设备 的信息被存储在所述第二存储单元中。
24. 如权利要求21所述的管理服务器,进一步包括分派单元,所述分派单元唯一地 分派指定的加密的段到另一个通信设备和所述通信设备至少其中之一,所述指定的的段 通过加密指定的段获取,所述指定的段构成所述内容的部分并且不同于所述段。
25. 如权利要求21所述的管理服务器,其特征在于,对于对应于每一个段的所述第一加密的段和所述第二加密的段的二者之一,所述第 一存储单元在其内存储所述第一加密的段与用于解密与用于访问在其内存储有所述第一加密的段的所述另一个通信设备的所述连接目的地信息相关联的所述第一加密的段的所 述解密密钥之间的对应关系,以及所述第二加密的段与用于解密与用于访问在其内存储 所述第二加密的段的所述另一个通信设备的所述连接目的地信息相关联的所述第二加密 的段的所述解密密钥之间的对应关系的二者之一,所述选择单元选择通过加密至少一个所述段而获得的所述第一加密的段和所述第二 加密的段的二者之一,并通过引用与存储在所述第一存储单元中的所述连接目的地信息 识别在其内存储已选择的所述第一加密的段和所述第二加密的段的二者之一,所述连接 目的地信息与已选择的所述第一加密的段和所述第二加密的段二者之一相对应,以及所述传输单元将已识别的另一个通信设备的所述连接目的地信息放进所述播种者信 息中,并将所述播种者信息传输到所述通信设备。
26. —种接收多个构成内容的部分的段的通信服务器,所述通信服务器包括第一存储单元,所述第一存储单元在其内存储第三加密的段;第二存储单元,当所述第三加密的段被传输到所述通信设备时,所述第二存储单元在其内存储用于识别所述通信设备的识别信息;第一接收单元,所述第一接收单元从所述通信设备接收用于请求所述第三加密的段 并含有用于识别所述通信设备的所述识别信息的特殊段请求;以及第一传输单元,当含在所述特殊段请求中的所述识别信息未被存储在所述第二存储 单元中时,所述第一传输单元从所述第一存储单元读取第三加密的段,并将第三加密的 段传输到通信设备,其中多个第一加密的段通过用第一加密密钥加密所述段生成,第二加密的段通过用第二 加密密钥将所述段中的至少一个加密生成,第三加密的段通过用第三加密密钥将所述段 中的至少一个加密生成,用于加密同样的段的所述第一加密密钥,所述第二加密密钥和 所述第三加密密钥彼此不同,所述通信设备从其他通信设备对于每一个所述段接收所述 第一加密的段和所述第二加密的段中的任意一个。
27. 如权利要求26所述的通信服务器,其特征在于,当含在所述特殊段请求中的所述识别信息未被存储在所述第二存储单元中时,所述第一1('专输单元从所述第一存储单元 读取所述第三加密的段,并将所述第三加密的段传输到所a^通信设备以使将被解密的段 对于每一个所述通信设备是不同的。
28. 如权利要求26所述的通信服务器,其特征在于所述第一存储单元进一步在其内存储所述第一加密的段和所:述第二加密的段的至少 其中之一,所述第一接收单元从所述通信设备接收用于请求所述第一加密T的段,所述第二加密 的段,和所述第三加密的段的段请求,所述段请求含有用于识别所i悉通信设备的识别信 息,以及当含在所述特殊段请求中的所述识别信息未存储在所述第二存储4l元中时,所述第一传输单元从所述第一存储单元读取在所述特殊段请求中请求的所述第:.一加密的段,所述第二加密的段和所述第三加密的段,并将第一传输单元读取的第一加p哲的段和第二加 密的段传输到通信设备。
全文摘要
多个第一加密的段通过用第一加密密钥加密该段生成。第二加密的段通过用第二加密密钥将该段中的至少一个加密生成。用于加密同样的段的第一加密密钥和第二加密密钥彼此不同。通信设备对于每一个段从另一个通信设备接收第一加密的段或者第二加密的段,将用于请求用作对加密的段进行解密的解密密钥的请求消息传输至密钥服务器,并响应于请求消息从密钥服务器接收解密密钥。
文档编号H04L9/08GK101447866SQ20081018165
公开日2009年6月3日 申请日期2008年11月26日 优先权日2007年11月26日
发明者上林达, 伊藤聪, 佐藤英昭, 加藤拓, 外山春彦, 小池龙一, 松下达之, 松本英树, 梅泽健太郎 申请人:株式会社东芝