基于对等网络分布式哈希表的visit协议系统和通信方法_3

文档序号:8945742阅读:来源:国知局
包中对应所述访问请求的回复响应,并处理所述回复响应。
[0128]图9为图8所示visit协议通信方法的优选实施例中步骤S15的流程图。
[0129]如图9所示,在一优选实施例中,步骤S152之后还包括:
[0130]S153:扩展协议请求模块50将所述请求包标识为完成状态,请求模块20不再接收对应所述请求包的回复响应包。
[0131]图10为根据本发明实施例的另一种基于对等网络分布式哈希表的visit协议通信方法的示例性流程图。
[0132]如图10所示,在本实施例中,所述对等网络包括若干网络节点,所述网络节点包括分布式哈希表DHT模块、与所述DHT模块连接的请求模块和/或服务模块,其中包括服务模块、作为服务端的网络节点一侧的visit协议通信方法包括:
[0133]S21:服务模块30接收请求模块20发送的包含至少一个访问请求的请求包;
[0134]S23:服务模块30向请求模块20发送权限验证请求包;
[0135]S25:服务模块30接收请求模块20发送的权限验证响应包,进行权限验证;
[0136]S27:所述权限验证通过后,服务模块30处理所述访问请求,构造回复响应包并发送至请求模块20。
[0137]所述回复响应包包含对应所述访问请求的回复响应。
[0138]具体地,在步骤S27中,服务模块30向请求模块20发送回复响应包的同时还可向请求模块20发送推送响应包,和/或,向其它网络节点中的请求模块20发送推送响应包。
[0139]优选地,服务模块30接收的请求包申明了请求模块20生成的公私钥对中私钥的权限。
[0140]优选地,所述对等网络的每个网络节点的DHT模块10具有对应请求模块20的键值key_id,所述键值key_id由请求模块20根据所述公私钥对中的公钥生成。
[0141]图11为图10所示visit协议通信方法的一种优选实施例的流程图。
[0142]如图11所示,在一优选实施例中,在步骤S23之前还包括:
[0143]S22:服务模块30向请求模块20发送公钥请求,接收请求模块20推送的所述公私钥对中的公钥。具体地,所述公钥请求用于请求所述公钥。
[0144]图12为图10所示visit协议通信方法中步骤S23的流程图。
[0145]如图12所示,在本实施例中,步骤S23包括:
[0146]S231:服务模块30用所述公钥对随机串加密得到所述权限验证信息;
[0147]S233:服务模块30向请求模块20发送包含所述权限验证信息的权限验证请求包。
[0148]图13为图10所示visit协议通信方法中步骤S25的流程图。
[0149]如图13所示,在本实施例中,步骤S25包括:
[0150]S251:服务模块30接收请求模块20发送的包含权限证明信息的权限验证响应包;其中,所述权限证明信息为通过所述私钥解密所述权限验证信息后计算得到的所述随机串的哈希值;
[0151]S253:服务模块30计算出所述随机串的哈希值,与所述权限证明信息进行对比验证。
[0152]图14为图10所示visit协议通信方法中步骤S27的流程图。
[0153]如图14所示,在本实施例中,步骤S27包括:
[0154]S271:所述权限验证通过后,服务模块30标记请求模块20权限;
[0155]S273:服务模块30处理所述访问请求,构造回复响应包并发送至请求模块20。
[0156]优选地,步骤S273还包括:服务模块30向请求模块20发送所述回复响应包的同时向请求模块20或其它请求模块发送推送响应包。
[0157]图15为图14所示visit协议通信方法的优选实施例的步骤S27的流程图。
[0158]如图15所示,在一优选实施例中,步骤S273之后还包括:
[0159]S275:服务模块30发送推送响应包至请求模块20。
[0160]图16为图14所示visit协议通信方法的步骤S273的流程图。
[0161]如图16所示,在本实施例中,步骤S273包括:
[0162]S2731:服务模块30建立回复响应包;
[0163]S2733:服务模块30或扩展协议服务模块60分别处理对应的所述访问请求,并在所述回复响应包中添加回复响应;
[0164]S2735:服务模块30向请求模块20发送所述回复响应包。
[0165]具体地,所述回复响应包包括以下字段:
[0166]对应请求包编号request_package_id,响应内容data。
[0167]所述响应内容data包括以下字段:回复响应列表replys,推送响应列表pushs。
[0168]所述回复响应包括以下字段:对应访问请求编号request_index,响应内容data。
[0169]本发明的上述部分实施例提供的基于对等网络分布式哈希表的visit协议通信方法将RAS公私钥对和DHT寻址相结合,从而在DHT访问中加入可以用于区分不同类型节点的权限认证,提高了安全性,并使一些高安全性的解决方案成为可能。
[0170]图17为根据本发明实施例的一次带有公私钥对的visit协议交互流程示意图。
[0171]如图17所示,一次典型的交互流程可包括:
[0172]作为请求端的第一网络节点的第一请求模块生成公私钥对;
[0173]第一请求模块向作为服务端的第二网络节点的第一服务模块发送申明私钥权限的请求包;
[0174]第一服务模块收到所述请求包后检查是否拥有公钥,如没有则向第一请求模块发送公钥请求;
[0175]第一请求模块收到所述公钥请求,向第一服务模块推送公钥;
[0176]第一服务模块收到公钥后检查第一请求模块是否具有私钥权限,没有则向第一请求模块推送包含用所述公钥加密的权限验证信息的权限验证请求包;
[0177]第一请求模块收到权限验证请求包后,利用私钥解密权限验证信息,计算出权限证明信息,向第一服务模块发送权限验证响应包;
[0178]第一服务模块验证响应是否正确;
[0179]验证通过后,第一服务模块标记第一请求模块拥有私钥权限;
[0180]第一服务模块和各扩展协议服务模块分别处理对应的访问请求,第一服务模块构造并向第一请求模块发送回复响应包;
[0181]第一服务模块在发送回复响应包的同时向第一请求模块发送推送响应包;和/或,第一服务模块在发送回复响应包的同时向其它网络节点的请求模块发送推送响应包;和/或,第一服务模块在发送回复响应包之后向第一请求模块发送推送响应包。
[0182]本发明的上述部分实施例用支持访问协议的应用方式取代了传统的只支持数据协议的应用方式,扩展了应用范围;
[0183]本发明的上述部分实施例支持多请求封包,在较为复杂的DHT应用中该特性能节约很多额外的网络开销;
[0184]本发明的上述部分实施例还支持服务端推送协议,传统DHT应用方式中缺少支持服务端主动触发推送的设计。
[0185]综上所述,本发明支持扩展协议和权限认证,具有灵活度高、稳定性强、安全性高、应用范围广等优点。
[0186]最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
【主权项】
1.一种基于对等网络分布式哈希表的visit协议系统,包括若干网络节点,其特征在于,所述网络节点包括分布式哈希表DHT模块、与所述DHT模块连接的请求模块和/或服务丰吴块; 所述请求模块用于发起访问请求,向所述服务模块发送包含至少一个访问请求的请求包,接收所述服务模块发送的权限验证请求包,向所述服务模块发送权限验证响应包,接收所述服务模块发送的回复响应包; 所述服务模块用于接收所述请求包,向所述请求模块发送所述权限验证请求包,接收所述权限验证响应包并验证权限,验证通过后处理所述访问请求,构造回复响应包并发送至所述请求模块;所述回复响应包包含对应所述访问请求的回复响应。2.根据权利要求1所述的visit协议系统,其特征在于,所述服务模块利用所述请求模块所生成的公私钥对对所述请求包进行权限认证;所述请求模块根据所述公私钥对中的公钥生成所述visit协议系统中每个网络节点的DHT模块对应于所述请求模块的键值。3.根据权利要求2所述的visit协议系统,其特征在于,所述键值为所述公钥的散列值。4.根据权利要求2所述的visit协议系统,其特征在于,所述请求模块还用于在所述请求包中申明所述公私钥对中私钥的权限,在接收公钥请求后向所述服务模块推送所述公私钥对中的公钥; 所述服务模块还用于在收到私钥权限申明后检查是否拥有公钥,如没有则向所述请求模块推送公钥请求。5.根据权利要求4所述的visit协议系统,其特征在于,所述权限验证请求包中包含有利用所述公钥加密的权限验证信息; 所述权限验证响应包中包含有利用所述私钥对所述权限验证信息进行解密后计算得到的权限证明信息。6.根据权利要求5所述的visit协议系统,其特征在于,所述权限验证信息为所述服务模块利用所述公钥加密的随机串; 所述权限证明信息为所述请求模块利用所述私钥对所述权限验证信息进行解密后,计算得到的所述随机串的哈希值。7.根据权利要求2所述的visit协议系统,其特征在于, 所述请求模块利用DHT算法,通过指定的键值和分支系数η查找到η个网络节点,将所述请求包分别发送至所述η个网络节点的服务模块;或,所述请求模块利用DHT算法,通过指定的键值查找到对应的网络节点
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1