CN102065135A - 点对点数据获取方法、***及服务器 - Google Patents
点对点数据获取方法、***及服务器 Download PDFInfo
- Publication number
- CN102065135A CN102065135A CN2010105908700A CN201010590870A CN102065135A CN 102065135 A CN102065135 A CN 102065135A CN 2010105908700 A CN2010105908700 A CN 2010105908700A CN 201010590870 A CN201010590870 A CN 201010590870A CN 102065135 A CN102065135 A CN 102065135A
- Authority
- CN
- China
- Prior art keywords
- key
- node
- data
- server
- content
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 239000012634 fragment Substances 0.000 claims abstract description 67
- 230000005540 biological transmission Effects 0.000 claims abstract description 33
- 238000012545 processing Methods 0.000 claims abstract description 5
- 230000015572 biosynthetic process Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 description 16
- 238000013481 data capture Methods 0.000 description 13
- 230000003993 interaction Effects 0.000 description 5
- 210000001503 joint Anatomy 0.000 description 5
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000008676 import Effects 0.000 description 2
- 238000012797 qualification Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000003292 glue Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
Images
Landscapes
- Storage Device Security (AREA)
Abstract
本发明提供一种点对点数据获取方法、***及服务器,方法包括:源节点根据服务器下发的初始密钥,加密第一数据片断形成第一密文片断,并发送给请求节点;服务器至少向请求节点和源节点发送一次第一密钥更新消息,第一密钥更新消息包括第一更新密钥;源节点根据第一更新密钥加密第二数据片断,并在第二数据片断中添加密钥更新标识,形成第二密文片断,并发送给请求节点;请求节点接收第二密文片断,采用密钥更新标识对应的第一更新密钥解密第二密文片断,以获取内容数据。本发明技术方案,不仅可以保证传输数据的安全性,还可以保证数据传输效率,且对节点处理能力要求较低,易于实施。
Description
技术领域
本发明涉及网络通信技术,尤其涉及一种点对点数据获取方法、***及服务器。
背景技术
现有点对点(Peer to Peer;简称为:P2P)下载是请求节点向服务器请求节点列表,在得到节点列表后向节点列表中的源节点请求数据下载,从连接建立成功的源节点下载数据;同时,该请求节点也会作为源节点向其他节点提供数据。在数据交换过程中,如果非授权节点得到源节点的地址,直接向源节点请求数据下载,则该非授权节点也会得到合法的数据内容,即这种数据交换过程存在安全问题。
针对上述问题,现有技术采用非对称密钥对交互过程中的数据进行加密,以保证数据安全。常见的有一次一密的加密方式和采用一个非对称密钥对多个数据块同时加密的方式。采用这种非对称密钥的加密方式,请求节点收到加密数据后,需要向服务器请求解密数据块(即解密密钥),在收到服务器的解密数据块后对加密数据进行解密,获取数据。该方式在数据传输过程中存在大量请求节点向服务器请求解密数据块的交互过程,降低了数据传输的效率。
另外,现有技术中还有采用对称密钥对交互过程中的数据进行加密,以保证数据安全的方式。目前在采用对称密钥的方法中,对称密钥包含在种子文件中,密钥由种子服务器预先导入到P2P网络中;在传输过程中,文件被分为片断,每个片断采用预先导入的密钥进行加密,请求节点采用预先导入的密钥进行解密,以获取数据。与非对称密钥方式相比,该方式无需请求节点与种子服务器进行交互,提高了传输效率,但是,对于某一固定文件来说,密钥是不变的,如果有授权请求节点散布了该密钥或被非法用户破解了该密钥,则该文件的分发将不受控,因此,在该加密方式下文件同样存在安全隐患。为了进一步提高数据传输的安全性,现有技术又提出一种新的对称密钥方法,即对同一片断用不同的密钥来加密,源节点将用不同密钥加密的片断分别发送给不同的请求节点,这样就要求源节点记录每个请求节点和每个片断对应密钥的关系并把该对应关系发送给请求节点,这样请求节点在收到加密片断后可以采用正确的密钥来解密片断获取数据。由于在P2P网络中,每个节点既是请求节点又是源节点,因此,每个节点都要存储大量片断、密钥和请求节点的对应关系,当P2P网络中节点数量较多时,这种方式会降低节点的处理能力,且对节点的要求较高。
由上述分析可见:现有P2P数据加密方式在安全性问题和其他传输性能问题(例如传输效率问题或节点处理能力问题)上无法做到较好的平衡,因此,在保证P2P***传输性能的同时保证数据传输的安全性的问题有待进一步解决。
发明内容
本发明提供一种点对点数据获取方法、***及服务器,用以在保证P2P***传输性能的同时,保证数据传输的安全性。
本发明提供一种点对点数据获取方法,包括:
源节点根据服务器下发的初始密钥,加密内容数据的第一数据片断形成第一密文片断,并将所述第一密文片断发送给请求节点;
所述服务器至少向所述请求节点和所述源节点发送一次第一密钥更新消息,所述第一密钥更新消息包括第一更新密钥;
所述源节点根据所述第一更新密钥加密所述内容数据的第二数据片断,并在所述第二数据片断中添加密钥更新标识,形成第二密文片断,并向所述请求节点发送所述第二密文片断;
所述请求节点接收所述第二密文片断,采用所述密钥更新标识对应的第一更新密钥解密所述第二密文片断,以获取所述内容数据。
本发明提供一种服务器,包括:
第一发送模块,用于向源节点和请求节点发送初始密钥,以使所述源节点根据所述初始密钥加密内容数据的第一数据片断形成第一密文片断,并使所述请求节点根据所述初始密钥解密所述第一密文片断;
第二发送模块,用于在所述第一发送模块发送所述初始密钥后,至少向所述请求节点和所述源节点发送一次第一密钥更新消息,所述第一密钥更新消息包括第一更新密钥,以使所述源节点根据所述第一更新密钥加密所述内容数据的第二数据片断形成第二密文片断,并使所述请求节点根据所述第一更新密钥解密所述第二密文片断,以获取所述内容数据。
本发明提供一种点对点数据获取***,包括本发明提供的任一服务器,还包括:源节点和请求节点;
所述请求节点,用于接收所述服务器发送的第一密钥更新消息,所述第一密钥更新消息包括第一更新密钥;并用于接收所述源节点发送的第一密文片断和第二密文片断,并根据所述第一更新密钥解密所述第二密文片断,以获取内容数据;
所述源节点,用于接收所述服务器发送的所述初始密钥和所述第一密钥更新消息,根据所述初始密钥加密所述内容数据的第一数据片断形成所述第一密文片断和根据所述第一更新密钥加密所述内容数据的第二数据片断,并在所述第二数据片断中添加密钥更新标识形成所述第二密文片断,并将所述第一密文片断和所述第二密文片断发送给所述请求节点。
本发明提供的点对点数据获取方法、***及服务器,在请求节点向源节点请求获取内容数据的过程中,由服务器至少向源节点和请求节点发送一次携带更新密钥的密钥更新消息,由源节点根据更新密钥对接收密钥更新消息之后的数据片断进行加密并携带密钥更新标识,而请求节点根据密钥更新标识采用相应的更新密钥解密加密后的数据片断,最终获取内容数据。在本发明技术方案中,同一内容数据的不同数据片断可采用不同的密钥进行加密,保证了数据传输的安全性;而不同密钥是由服务器主动向请求节点和源节点下发的,请求节点无需与服务器进行密钥交互保证了数据传输效率;另外,在本发明技术方案中源节点通过在发送的密文片断中添加密钥更新标识,使请求节点识别相应密钥对密文片断进行解密,各节点无需存储不同密钥、数据片断以及其他节点之间的对应关系,对节点的处理能力要求较低,易于实施。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一提供的P2P数据获取方法的流程图;
图2为本发明实施例二提供的P2P数据获取方法的流程图;
图3为本发明实施例提供的服务器向请求节点和源节点发送第一密钥更新消息的方法流程图;
图4为本发明实施例三提供的P2P数据获取方法的流程图;
图5为本发明实施例提供的服务器的一种结构示意图;
图6为本发明实施例提供的服务器的又一种结构示意图;
图7为本发明实施例提供的服务器的另一种结构示意图;
图8为本发明实施例提供的P2P数据获取***的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例一提供的P2P数据获取方法的流程图。如图1所示,本实施例的方法包括:
步骤11、源节点根据服务器下发的初始密钥,加密内容数据的第一数据片断形成第一密文片断,并将第一密文片断发送给请求节点;
其中,内容数据是请求节点请求获取的信息。在P2P数据传输过程中,由源节点将内容数据划分为多个数据片断进行传输。在请求节点与源节点建立连接之前,服务器向源节点和请求节点下发加密数据片断用的密钥(即初始密钥),在本实施例中采用对称密钥方式来加密数据片断,因此,请求节点和源节点的密钥相同。其中,第一数据片断是指源节点采用初始密钥所加密的数据片断,其可以包括一个数据片断也可以包括多个数据片断。
步骤12、服务器至少向请求节点和源节点发送一次第一密钥更新消息,所述第一密钥更新消息包括第一更新密钥;
该步骤具体在请求节点向源节点请求获取内容数据的过程中实施,即在源节点根据初始密钥加密第一数据片断形成第一密文片断并发送给请求节点之后实施。其中,第一密钥更新消息是指服务器在请求节点向源节点请求获取内容数据的过程中下发的密钥更新消息,主要用于使源节点对同一内容数据的不同数据片断采用不同密钥加密,提高数据片断传输的安全性。具体的,服务器根据一定的策略通过密钥更新消息向请求节点和源节点发送更新密钥;其中服务器所依据的策略可以是定时策略,即每隔一定实现就下发一次密钥更新消息;也可以是次数策略,即针对每个内容数据设定下发密钥更新消息的总次数,但不限定每次发送的时间;还可以是针对不同内容数据而特殊设定的下发策略,对此本实施例不做限定。
步骤13、源节点根据第一更新密钥加密内容数据的第二数据片断,并在第二数据片断中添加密钥更新标识,形成第二密文片断,并向请求节点发送第二密文片断;
其中,当源节点接收到服务器下发的密钥更新消息后,解析获取其中的更新密钥;根据预先约定的规则,源节点或者需要用更新密钥对后续数据片断进行加密,此时,源节点采用更新密钥对接收密钥更新消息时刻之后要发送的数据片断进行加密,同时在数据片断中添加密钥更新标识,形成密文片断,并将密文片断发送给请求节点。其中,密钥更新标识用于使请求节点获知从哪个密文片断开始,需要采用更新密钥对密文片断进行解密,来获取数据片断;且在服务器下发多次密钥更新消息的情况下,该密钥更新标识还用于使请求节点获知使用哪个更新密钥对相应密文片断进行解密,即该密钥更新标识同时标识采用更新密钥开始加密的数据片断、采用更新密钥解密的密文片断以及所采用的更新密钥之间的映射关系。
其中,第二数据片断是指采用更新密钥加密的数据片断,其可以包括一个数据片断也可以包括多个数据片断;另外,对于服务器下发多次密钥更新消息的情况,当下一次密钥更新消息到来时,当前密钥更新消息中的更新密钥可视为初始密钥,因此,采用下一次密钥更新消息中的更新密钥加密的数据片断也是第二数据片断,即两次密钥更新消息之间的数据片断均属于第二数据片断,根据第二数据片断形成的密文片断即为第二密文片断。
步骤14、请求节点接收第二密文片断,采用密钥更新标识对应的第一更新密钥解密第二密文片断,以获取内容数据。
请求节点接收到第二密文片断之后,根据第二密文片断中携带的密钥更新标识获取相应的更新密钥进行解密,获取第二数据片断;同时,对于第一密文片断,请求节点会采用初始密钥进行解密,获取第一数据片断,并最终获取整个内容数据。
其中,在本实施例中,请求节点可以在每接收到一个密文片断(包括第一密文片断和第二密文片断)时,就采用相应的密钥进行解密获取数据片断,并最终获取整个内容数据;请求节点也可以在接收到所有密文片断之后,对携带密钥更新标识的密文片断根据密钥更新标识采用相应的更新密钥进行解密,对未携带密钥更新标识的密文片断采用初始密钥进行解密,并最终获取整个内容数据。
本实施例的P2P数据获取方法,在请求节点向源节点请求获取内容数据的过程中,由服务器至少向源节点和请求节点发送一次携带更新密钥的密钥更新消息,由源节点根据更新密钥对接收密钥更新消息之后的数据片断进行加密并携带密钥更新标识,而请求节点根据密钥更新标识采用相应的更新密钥解密加密后的数据片断,最终获取内容数据。在本实施例中,同一内容数据的不同数据片断可采用不同的密钥进行加密,保证了数据传输的安全性;而不同密钥是由服务器主动向请求节点和源节点下发的,请求节点无需与服务器进行密钥交互保证了数据传输效率;另外,在本实施例中,源节点通过在发送的密文片断中添加密钥更新标识,使请求节点识别相应密钥对密文片断进行解密,各节点无需存储不同密钥、数据片断以及其他节点之间的对应关系,对节点的处理能力要求较低,易于实施。
其中,在上述实施例中,为了进一步提高数据传输的安全性,服务器可以提高向请求节点和源节点发送密钥更新消息的频率,最佳可以达到每个数据片断均采用不同的密钥来加密。
图2为本发明实施例二提供的P2P数据获取方法的流程图。本实施例基于实施例一实现,如图2所示,本实施例的方法包括:
步骤21、请求节点向服务器发送节点列表请求,所述节点列表请求包括内容数据信息;
当请求节点有需要获取的内容数据时,首先向服务器发送节点列表请求,以获取可提供服务的、有资源的节点信息。其中,内容数据信息可以为内容数据的名称、链接地址数据或部分内容等。其中,内容数据可以是一部电影、一首音乐、一篇文章等,相应的内容数据信息可以为影片名、歌曲名、文章名称,还可以是影片导演、歌手名字、作者姓名等。服务器根据内容数据信息为请求节点获取能为请求节点提供服务的节点列表。
步骤22、服务器向请求节点返回节点列表,所述节点列表中包括内容数据信息对应的源节点信息;
当服务器获取到可为请求节点提供服务器的源节点时,通过节点列表的形式向请求节点返回各源节点的信息;其中,源节点的信息可以是源节点的统一资源定位符(Uniform/Universal Resource Locator;简称为:URL)地址或源节点的网际协议(Internet Protocol;简称为:IP)地址等。
步骤23、服务器向请求节点和源节点发送初始密钥;
当服务器向请求节点返回节点列表之后,向请求节点和源节点下发初始密钥,以使源节点根据初始密钥加密第一数据片断,并使请求节点根据初始密钥解密接收到的第一密文片断。
步骤24、请求节点根据节点列表向源节点发送内容数据获取请求;
其中,请求节点可能同时与多个源节点建立连接,分别获取不同数据片断。
步骤25、源节点根据服务器下发的初始密钥,加密内容数据的第一数据片断形成第一密文片断,并将第一密文片断发送给请求节点;
步骤26、服务器至少向请求节点和源节点发送一次第一密钥更新消息,所述第一密钥更新消息包括第一更新密钥;
步骤27、源节点根据第一更新密钥加密内容数据的第二数据片段,并在第二数据片段中添加密钥更新标识,形成第二密文片段,并向请求节点发送第二密文片段;
步骤28、请求节点接收第二密文片断,采用密钥更新标识对应的第一更新密钥解密第二密文片断,以获取内容数据。
其中步骤25-步骤28可参见实施例一的描述,在此不再赘述。另外,请求节点可以根据数据片断中的序号,监测内容数据的获取状况;当监测到内容数据的获取结束后,向服务器发送通告消息,以告知服务器该内容数据的获取完成。服务器根据该通告消息可以停止向请求节点和源节点发送密钥更新消息,同时还可以将分配给该内容数据的初始密钥或更新密钥等收回。上述操作为一种可选操作,本实施例以请求节点获取内容数据为重点。
本实施例的P2P数据获取方法,请求节点向服务器请求节点列表,服务器在向请求节点返回节点列表后,向请求节点和源节点发送初始密钥;请求节点根据节点列表向源节点发送内容数据获取请求,源节点根据初始密钥加密数据片断并发送给请求节点,在之后服务器通过发送多次密钥更新消息使源节点和请求节点采用更新密钥对后续数据片断进行加密和解密处理,实现对同一内容数据的不同数据片断采用不同密钥加密后传输,提高了数据传输的安全性;同时,不同密钥是由服务器主动向请求节点和源节点下发的,请求节点无需与服务器进行密钥交互保证了数据传输效率;另外,在本实施例中,源节点通过在发送的密文片断中添加密钥更新标识,使请求节点识别相应密钥对密文片断进行解密,各节点无需存储不同密钥、数据片断以及其他节点之间的对应关系,对节点的处理能力要求较低,易于实施。
图3为本发明实施例提供的服务器向请求节点和源节点发送第一密钥更新消息的方法流程图。本实施例基于上述实施例实现,如图3所示,本实施例发送第一更新消息的方法包括:
步骤31、服务器根据内容数据信息,判断密钥池中是否有可用密钥;如判断结果为有,则执行步骤32,反之,执行步骤33。
其中,在服务器上预先设有密钥池,主要用于存储密钥并对密钥进行管理,其中密钥包括初始密钥和各种更新密钥。可用密钥主要是指未被使用的密钥。密钥池中的密钥在其生存周期之内可被循环使用。
步骤32、服务器从密钥池中选择一个可用密钥作为第一更新密钥,并执行步骤34;
步骤33、服务器根据内容数据信息,生成第一更新密钥,并将第一更新密钥存储到密钥池中,并执行步骤34;
当密钥池中没有可用密钥时,服务器可为当前内容数据生成一个新密钥,作为其第一更新密钥。其中,服务器可以根据预设规则生成密钥,具体可参见现有技术,在本实施例中并不做限定。
步骤34、服务器根据第一更新密钥,生成第一密钥更新消息,并执行步骤35;
其中,服务器可以将第一更新密钥作为数据内容,并封装请求节点、源节点的地址信息后生成第一密钥更新消息,但并不限于此。
步骤35、服务器将第一密钥更新消息发送给请求节点和源节点。
本实施例提供的发送第一密钥更新消息的方法,服务器通过密钥池对其密钥进行管理,首先从可用密钥中选择第一更新密钥,若不存在时根据密钥生成规则生成新的密钥作为第一更新密钥,并将第一更新密钥封装为第一密钥更新消息,下发给请求节点和源节点,该方式简单易于实现,且资源消耗较少。
另外,在本实施例中,服务器也可以不执行判断密钥池中是否存在可用密钥的操作,而直接根据内容数据信息生成第一更新密钥,并将第一更新密钥存储到密钥池中,该方式更加简单和便于实施,只是对密钥池的容量相对要求较高。
基于上述实施例,为了便于对密钥进行管理以及提高密钥的保密性,服务器为每个密钥设置一个生存周期,当生存周期结束时,该密钥将被删除。图4为本发明实施例三提供的P2P数据获取方法的流程图。本实施例基于上述实施例实现,如图4所示,本实施例的方法还包括:
步骤41、服务器查询密钥池;
具体的,服务器可以周期性查询密钥池,也可以实时查询密钥池,其中为减轻服务器的负担,优选周期性轮循密钥池中的各个密钥。其中,服务器可以在每个密钥生成时为其设定一计时器,记录每个密钥的存在时间。
步骤42、服务器删除密钥池中存在时间大于预设生存周期的密钥;
服务器通过判断计时器记录的存在时间大于预设生存周期时,将该密钥删除,通过这种方式可以提高密钥的保密性。
步骤43、服务器根据被删除的密钥,生成第二更新密钥,以更新密钥池。
服务器为被删除的密钥生成新的密钥,即第二更新密钥,来替代被删除的密钥,并将第二更新密钥存储到密钥池中,通过该方式可以保证密钥池中存在一定数量的密钥,以便于向有获取数据内容请求的节点提供密钥(例如初始密钥或更新密钥)。
其中,被删除的密钥可能是可用密钥,即未被使用的密钥,也可能是正在被使用的密钥。为了保证正在使用该被删除的密钥的节点能够正常通信,本实施例提供一种实施方式,即服务器通过第二密钥更新消息将第二更新密钥发送给正在使用被删除的密钥的源节点和请求节点,同时达到更新上述请求节点和源节点的密钥的目的。其中,第二更新密钥是在服务器更新其密钥池中的密钥时,为保证被删除的密钥不影响P2P***的运行而生成的用来替代被删除的密钥的。
本实施例的P2P数据获取方法,通过预设生存周期,由服务器对其密钥池中的密钥进行更新,提高了密钥的保密性,进而提高了基于密钥池中的密钥进行传输的数据的安全性。
在此需要说明,服务器根据预设生存周期更新密钥的方案,可以与上述各实施例相结合,且并不限定其先后顺序,即服务器根据预设生存周期更新密钥的方案可与其他实施例的方案并行实施。
图5为本发明实施例提供的服务器的一种结构示意图。如图5所示,本实施例的服务器包括:第一发送模块51和第二发送模块52。
其中,第一发送模块51,与源节点和请求节点连接,用于向源节点和请求节点发送初始密钥,以使源节点根据初始密钥加密内容数据的第一数据片断形成第一密文片断,并使请求节点根据初始密钥解密第一密文片断;第二发送模块52,与第一发送模块51、源节点和请求节点连接,用于在第一发送模块51发送初始密钥后,至少向请求节点和源节点发送一次第一密钥更新消息,所述第一密钥更新消息包括第一更新密钥,以使源节点根据第一更新密钥加密内容数据的第二数据片断形成第二密文片断,并使请求节点根据第一更新密钥解密第二密文片断,以获取内容数据。
本实施例的服务器,可用于执行本发明方式实施例提供的P2P数据获取方法的流程,具体通过第一发送模块和第二发送模块,在请求节点向源节点请求获取内容数据的过程中至少发送一次密钥更新消息,以使源节点根据密钥更新消息中的更新密钥对接收密钥更新消息之后的数据片断进行加密,以及使请求节点根据更新密钥解密后续密文片断,实现了对同一内容数据的不同数据片断采用不同的密钥进行加密,提高了数据传输的安全性;同时,不同密钥(主要指更新密钥)由服务器通过其第二发送模块主动向请求节点和源节点发送,请求节点无需与服务器进行密钥交互保证了数据传输效率。
图6为本发明实施例提供的服务器的又一种结构示意图。本实施例基于上述实施例实现,如图6所示,本实施例的服务器还包括:接收模块61和返回模块62。
其中,接收模块61,与请求节点连接,用于接收请求节点发送的节点列表请求,所述节点列表请求包括内容数据信息;返回模块62,与接收模块61和请求节点连接,用于根据内容数据信息获取源节点信息,并向请求节点返回节点列表,所述节点列表包括内容数据信息对应的源节点信息。
上述各功能模块,可用于执行本发明上述实施例提供的P2P数据获取方法的流程,其具体工作原理不再赘述。
进一步,第二发送模块52包括:处理单元、生成单元和发送单元。其中,处理单元,用于根据内容数据信息,从密钥池中选择第一更新密钥,或者根据内容数据信息,生成第一更新密钥,并存储到密钥池中;生成单元,用于根据第一更新密钥,生成第一密钥更新消息;发送单元,用于将第一密钥更新消息发送给请求节点和源节点。
本实施例第二发送模块的各功能单元可用于执行本发明上述方法实施例提供的发送第一密钥更新消息的流程,其具体工作原理请参见方法实施例的描述,在此不再赘述。
图7为本发明实施例提供的服务器的另一种结构示意图。本实施例可基于上述实施例实现,如图7所示,本实施例的服务器还包括:查询模块71、删除模块72和生成模块73。
其中,查询模块71,与密钥池连接,用于查询密钥池;删除模块72,与密钥池连接,用于删除密钥池中存在时间大于预设生存周期的密钥;生成模块73,与密钥池和删除模块72连接,用于根据被删除的密钥,生成第二更新密钥,以更新密钥池。
其中,上述功能模块可用于执行本发明方法实施例提供的P2P数据获取方法的流程,主要用于对密钥池进行更新,其具体工作原理详见方法实施例的描述,在此不再赘述。通过上述模块,本实施例的服务器可以对密钥池中的密钥进行更新,将存在一定时间的密钥删除,提高了密钥的保密性,进而提高了基于密钥池中的密钥进行数据传输时的安全性。
图8为本发明实施例提供的P2P数据获取***的结构示意图。如图8所示,本实施例的***包括:源节点81、请求节点82和服务器83。其中,源节点81分别与服务器83和请求节点82连接,请求节点82也与服务器83连接。
其中,本实施例中的服务器83采用本发明上述实施例提供的服务器,其结构可参见图5-图7所示,其工作原理可参见上述方法实施例的描述,在此不再赘述。基于此,本实施例***的主要工作原理如下:
请求节点82向服务器83发送的节点列表请求,所述节点列表请求包括内容数据信息;服务器83根据内容数据信息获取可为请求节点82提供服务的源节点信息,并向请求节点82返回节点列表,所述节点列表包括所述内容数据信息对应的源节点信息;请求节点82接收服务器83返回的节点列表。
服务器83在向请求节点82返回节点列表之后,向源节点81和请求节点82发送初始密钥;源节点81和请求节点82接收服务器83发送的初始密钥;源节点81根据初始密钥加密内容数据的第一数据片断形成所述第一密文片断,并发送给请求节点82;请求节点82接收源节点81发送的第一密文片断,并根据初始密钥解密第一密文片断。
服务器83在发送初始密钥之后,向源节点81和请求节点82发送第一密钥更新消息,所述第一密钥更新消息包括第一更新密钥;源节点81和请求节点82接收服务器83发送的第一密钥更新消息;源节点81根据第一更新密钥加密内容数据的第二数据片断,并在第二数据片断中添加密钥更新标识形成第二密文片断,并将第二密文片断发送给请求节点82;请求节点82接收源节点81发送的第二密文片断,并根据第一更新密钥解密第二密文片断,以获取内容数据。
本实施例提供的P2P数据获取***,可用于执行本发明上述实施例提供的P2P数据获取方法的流程,具体在请求节点向源节点请求获取内容数据的过程中,由服务器至少向源节点和请求节点发送一次携带更新密钥的密钥更新消息,由源节点根据更新密钥对接收密钥更新消息之后的数据片断进行加密并携带密钥更新标识,而请求节点根据密钥更新标识采用相应的更新密钥解密加密后的数据片断,最终获取内容数据。在本实施例中,同一内容数据的不同数据片断可采用不同的密钥进行加密,保证了数据传输的安全性;而不同密钥是由服务器主动向请求节点和源节点下发的,请求节点无需与服务器进行密钥交互保证了数据传输效率;另外,在本实施例中源节点通过在发送的密文片断中添加密钥更新标识,使请求节点识别相应密钥对密文片断进行解密,各节点无需存储不同密钥、数据片断以及其他节点之间的对应关系,对节点的处理能力要求较低,易于实施。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种点对点数据获取方法,其特征在于,包括:
源节点根据服务器下发的初始密钥,加密内容数据的第一数据片断形成第一密文片断,并将所述第一密文片断发送给请求节点;
所述服务器至少向所述请求节点和所述源节点发送一次第一密钥更新消息,所述第一密钥更新消息包括第一更新密钥;
所述源节点根据所述第一更新密钥加密所述内容数据的第二数据片断,并在所述第二数据片断中添加密钥更新标识,形成第二密文片断,并向所述请求节点发送所述第二密文片断;
所述请求节点接收所述第二密文片断,采用所述密钥更新标识对应的第一更新密钥解密所述第二密文片断,以获取所述内容数据。
2.根据权利要求1所述的点对点数据获取方法,其特征在于,在源节点根据服务器下发的初始密钥,加密内容数据的第一数据片断形成第一密文片断之前还包括:
所述请求节点向所述服务器发送节点列表请求,所述节点列表请求包括内容数据信息;
所述服务器向所述请求节点返回节点列表,所述节点列表中包括所述内容数据信息对应的源节点信息;
所述服务器向所述请求节点和所述源节点发送所述初始密钥。
3.根据权利要求2所述的点对点数据获取方法,其特征在于,所述服务器至少向所述请求节点和所述源节点发送一次第一密钥更新消息包括:
所述服务器根据所述内容数据信息,从密钥池中选择所述第一更新密钥,或者根据所述内容数据信息,生成所述第一更新密钥,并将所述第一更新密钥存储到所述密钥池中;
所述服务器根据所述第一更新密钥,生成所述第一密钥更新消息;
所述服务器将所述第一密钥更新消息发送给所述请求节点和所述源节点。
4.根据权利要求3所述的点对点数据获取方法,其特征在于,还包括:
所述服务器查询所述密钥池;
所述服务器删除所述密钥池中存在时间大于预设生存周期的密钥;
所述服务器根据被删除的密钥,生成第二更新密钥,以更新所述密钥池。
5.一种服务器,其特征在于,包括:
第一发送模块,用于向源节点和请求节点发送初始密钥,以使所述源节点根据所述初始密钥加密内容数据的第一数据片断形成第一密文片断,并使所述请求节点根据所述初始密钥解密所述第一密文片断;
第二发送模块,用于在所述第一发送模块发送所述初始密钥后,至少向所述请求节点和所述源节点发送一次第一密钥更新消息,所述第一密钥更新消息包括第一更新密钥,以使所述源节点根据所述第一更新密钥加密所述内容数据的第二数据片断形成第二密文片断,并使所述请求节点根据所述第一更新密钥解密所述第二密文片断,以获取所述内容数据。
6.根据权利要求5所述的服务器,其特征在于,还包括:
接收模块,用于接收所述请求节点发送的节点列表请求,所述节点列表请求包括内容数据信息;
返回模块,用于向所述请求节点返回节点列表,所述节点列表包括所述内容数据信息对应的源节点信息。
7.根据权利要求6所述的服务器,其特征在于,所述第二发送模块包括:
处理单元,用于根据所述内容数据信息,从密钥池中选择所述第一更新密钥,或者根据所述内容数据信息,生成所述第一更新密钥,并存储到所述密钥池中;
生成单元,用于根据所述第一更新密钥,生成所述第一密钥更新消息;
发送单元,用于将所述第一密钥更新消息发送给所述请求节点和所述源节点。
8.根据权利要求7所述的服务器,其特征在于,还包括:
查询模块,用于查询所述密钥池;
删除模块,用于删除所述密钥池中存在时间大于预设生存周期的密钥;
生成模块,用于根据被删除的密钥,生成第二更新密钥,以更新所述密钥池。
9.一种包括如权利要求5-8任一项所述的服务器的点对点数据获取***,其特征在于,还包括:源节点和请求节点;
所述请求节点,用于接收所述服务器发送的第一密钥更新消息,所述第一密钥更新消息包括第一更新密钥;并用于接收所述源节点发送的第一密文片断和第二密文片断,并根据所述第一更新密钥解密所述第二密文片断,以获取内容数据;
所述源节点,用于接收所述服务器发送的所述初始密钥和所述第一密钥更新消息,根据所述初始密钥加密所述内容数据的第一数据片断形成所述第一密文片断和根据所述第一更新密钥加密所述内容数据的第二数据片断,并在所述第二数据片断中添加密钥更新标识形成所述第二密文片断,并将所述第一密文片断和所述第二密文片断发送给所述请求节点。
10.根据权利要求9所述的点对点数据获取***,其特征在于,所述请求节点还用于向所述服务器发送节点列表请求,所述节点列表请求包括内容数据信息,并接收所述服务器返回的节点列表,所述节点列表包括所述内容数据信息对应的源节点信息;以及用于接收所述服务器发送的所述初始密钥,并根据所述初始密钥解密所述第一密文片断,以获取所述内容数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010590870 CN102065135B (zh) | 2010-12-15 | 2010-12-15 | 点对点数据获取方法、***及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010590870 CN102065135B (zh) | 2010-12-15 | 2010-12-15 | 点对点数据获取方法、***及服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102065135A true CN102065135A (zh) | 2011-05-18 |
CN102065135B CN102065135B (zh) | 2013-02-13 |
Family
ID=44000234
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201010590870 Active CN102065135B (zh) | 2010-12-15 | 2010-12-15 | 点对点数据获取方法、***及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102065135B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104935433A (zh) * | 2015-03-13 | 2015-09-23 | 天地融科技股份有限公司 | 一种通讯过程中密钥跳变的方法、通讯装置和通讯*** |
CN109246695A (zh) * | 2018-10-24 | 2019-01-18 | 深圳市鼎晟开元科技有限公司 | 数据传输方法、装置及计算机可读存储介质 |
CN110912941A (zh) * | 2019-12-27 | 2020-03-24 | 北京四达时代软件技术股份有限公司 | 组播数据的传输处理方法及装置 |
WO2022003449A1 (en) * | 2020-07-02 | 2022-01-06 | International Business Machines Corporation | Secure secret recovery |
WO2022144643A1 (en) * | 2020-12-30 | 2022-07-07 | International Business Machines Corporation | Secure memory sharing |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1256599A (zh) * | 1998-11-09 | 2000-06-14 | 朗迅科技公司 | 采用密钥更新的有效鉴证 |
CN1650570A (zh) * | 2002-04-30 | 2005-08-03 | 国际商业机器公司 | 加密通信***、其密钥分发服务器、终端设备和密钥共亨方法 |
-
2010
- 2010-12-15 CN CN 201010590870 patent/CN102065135B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1256599A (zh) * | 1998-11-09 | 2000-06-14 | 朗迅科技公司 | 采用密钥更新的有效鉴证 |
CN1650570A (zh) * | 2002-04-30 | 2005-08-03 | 国际商业机器公司 | 加密通信***、其密钥分发服务器、终端设备和密钥共亨方法 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104935433A (zh) * | 2015-03-13 | 2015-09-23 | 天地融科技股份有限公司 | 一种通讯过程中密钥跳变的方法、通讯装置和通讯*** |
CN104935433B (zh) * | 2015-03-13 | 2018-11-16 | 天地融科技股份有限公司 | 一种通讯过程中密钥跳变的方法、通讯装置和通讯*** |
CN109246695A (zh) * | 2018-10-24 | 2019-01-18 | 深圳市鼎晟开元科技有限公司 | 数据传输方法、装置及计算机可读存储介质 |
CN110912941A (zh) * | 2019-12-27 | 2020-03-24 | 北京四达时代软件技术股份有限公司 | 组播数据的传输处理方法及装置 |
WO2022003449A1 (en) * | 2020-07-02 | 2022-01-06 | International Business Machines Corporation | Secure secret recovery |
GB2611966A (en) * | 2020-07-02 | 2023-04-19 | Ibm | Secure secret recovery |
US12052346B2 (en) | 2020-07-02 | 2024-07-30 | International Business Machines Corporation | Secure secret recovery |
WO2022144643A1 (en) * | 2020-12-30 | 2022-07-07 | International Business Machines Corporation | Secure memory sharing |
GB2616811A (en) * | 2020-12-30 | 2023-09-20 | Ibm | Secure memory sharing |
Also Published As
Publication number | Publication date |
---|---|
CN102065135B (zh) | 2013-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108259169B (zh) | 一种基于区块链云存储的文件安全分享方法及*** | |
EP3453135B1 (en) | System and method for encryption and decryption based on quantum key distribution | |
CN108418796B (zh) | 云数据多副本完整性验证及关联删除的方法、云存储*** | |
JP5894155B2 (ja) | 無線通信システム内の分散ストレージに基づくファイル送信の方法 | |
JP3657396B2 (ja) | 鍵管理システム、鍵管理装置、情報暗号化装置、情報復号化装置、およびプログラムを記憶した記憶媒体 | |
US20180351734A1 (en) | Cloud storage method and system | |
CN109768987A (zh) | 一种基于区块链的数据文件安全隐私存储和分享方法 | |
CN105681031B (zh) | 一种存储加密网关密钥管理***及方法 | |
US20120170740A1 (en) | Content protection apparatus and content encryption and decryption apparatus using white-box encryption table | |
CN106411504B (zh) | 数据加密***、方法及装置 | |
JP2009010470A (ja) | 端末装置、グループ管理サーバ、ネットワーク通信システム、並びに暗号化鍵生成方法 | |
CN102065135B (zh) | 点对点数据获取方法、***及服务器 | |
CN103427998A (zh) | 一种面向互联网数据分发的身份验证和数据加密方法 | |
CN109151507B (zh) | 视频播放***及方法 | |
CN103220295A (zh) | 一种文档加密及解密的方法、装置和*** | |
CN101305542B (zh) | 一种数字证书与密钥下载方法 | |
JP2011525076A (ja) | 移動体ブロードキャストシステムにおける暗号化キー分配方法、暗号化キーの分配を受ける方法及びこのためのシステム | |
CN109586908A (zh) | 一种安全报文传输方法及其*** | |
US10116442B2 (en) | Data storage apparatus, data updating system, data processing method, and computer readable medium | |
WO2016040381A1 (en) | Process for secure document exchange | |
CN103973440A (zh) | 基于cpk的文件云安全管理方法及*** | |
Engelmann et al. | A content-delivery protocol, exploiting the privacy benefits of coded caching | |
CN101345624A (zh) | 一种文件访问***及其文件访问方法 | |
CN104901968A (zh) | 一种安全云存储***中的密钥管理分发方法 | |
WO2013075673A1 (zh) | 数字版权管理的方法、***和服务器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |