对等网络通讯系统和方法与流程

文档序号:11960105阅读:334来源:国知局
对等网络通讯系统和方法与流程

本申请涉及网络通讯技术领域,具体涉及一种对等网络通讯系统和方法。



背景技术:

目前90%即时通讯软件(Instant Messaging,简称IM)的通信方式都是集中式的,其登录方式都需要用户进行身份验证,例如需要通过手机号码登录、用户名和密码登录等。目前的身份验证方式比较单一,都需要由集中式服务器进行验证。以下列举两种目前最为常用的登录方式。

一、集中式登录方式

以MSN Messenger为例,用户微机上的程序统称为MSN Messenger客户端,所述客户端通过Internet连接到一个MSN Messenger服务器。即,所述客户端通过所述服务器与其他客户端交互信息。用户的客户端与服务器进行会话,然后由服务器来处理这些会话信息并通知其他用户的客户端。

图1为MSN Messenger客户端登录的通讯示意图。如图1所示,所述服务器具体包括:

派遣服务器(Dispatch Server,简称DS服务器)。DS服务器是客户端最初连接的服务器,负责给客户端分配合适的通知服务器。域名是messenger.hotmail.com,标准服务端口是1863。完成派遣任务后,切断TCP连接。

通知服务器(Notification Server,简称NS服务器)。NS服务器的目的主要是保留用户的在线信息,还有其他用户所关心的重要人员的信息。包括登录、改变状态、获取用户列表、修改用户信息、发起聊天、接受呼叫、邮件通知、退出等。通知服务器同样也提供其他通知服务,例如Hotmail的新邮件提示和创建或加入会话等。服务端口由派遣服务器指定,通常也是1863。

接线服务器(Switchboard Server,简称SS服务器)。SS服务器用于保存各用户的即时会话信息,换句话说,每个MSN中的用户对应连接到一个共享交换板的会话中。因此,这里也可以看作客户端之间聊天使用的中转服务器。

通过以上MSN登录的通讯过程可知,集中式登录方式需要通过集中式服务器来完成,同时登录需要用户名和密码进行验证。

二、开放授权登录方式

开放授权(Open Authorization,简称OAuth)是为用户资源的授权定义了一个安全、开放及简单的标准,第三方无需知道用户的账号及密码,就可获取到用户的授权信息。

图2为一种开放授权登录方式的示意图。如图2所示,目前现有技术中最常用的开放授权登录方式包括以下步骤(以QQ授权为例):

用户访问第三方网站,该网站提供使用QQ登录的登录方式;

用户点击QQ登录后,第三方网站服务器将会连接授权方(QQ)服务器并进行请求;

用户在跳转出的页面中给予授权方(QQ)服务器授权第三方网站对用户信息访问的权限;

授权方(QQ)服务器向第三方网站服务器提供经过授权的用户信息。

上述登录方式同样需要集中式的授权方服务器和第三方服务器,且登录需要通过授权方服务器的验证。



技术实现要素:

鉴于现有技术中的上述缺陷或不足,期望提供一种无需集中式服务器,同时无需用户进行注册和登录操作即可保障通讯安全性的对等网络通讯系统和方法。

第一方面,本发明提供一种通讯客户端,所述通讯客户端包括:

通道搭建发起单元,用于生成第一公私钥对,通过若干所述转发节点向第二通讯客户端发送临时通道身份信息以建立临时通道,通过所述临时通道与第二通讯客户端的通道搭建响应单元交换公钥,生成并发送正式通道身份信息和对应于正式通道的第三公私钥对以建立正式通道;其中,所述第一公私钥对包括第一公钥和第一私钥;

通道搭建响应单元,用于生成第二公私钥对,接收第一通讯客户端通过若干转发节点发送的临时通道身份信息以建立临时通道,通过所述临时通道与所述第一通讯客户端的通道搭建发起单元交换公钥,并接收正式通道身份信息和对应于正式通道的第三公私钥对以建立正式通道;其中,所述第二公私钥对包括第二公钥和第二私钥;

通讯单元,用于向各所述转发节点发送第三公钥,以供各所述转发节点验证所转发的消息;接收通过所述正式通道发送的消息,用所述通道搭建发起单元持有的第一私钥或所述通道搭建响应单元持有的第二私钥解密所述消息;以及,用所述通道搭建发起单元交换得到的第二公钥或所述通道搭建响应单元交换得到的第一公钥对待发送消息进行加密,并用第三私钥对所述待发送消息进行签名,通过所述正式通道发送所述待发送消息。

第二方面,本发明提供一种对等网络,包括若干转发节点,所述转发节点包括:

转发单元,用于转发通讯客户端发送的信息以建立临时通道及正式通道,向所述通讯客户端获取第三公钥,用所述第三公钥验证所述通讯客户端通过所述正式通道发送的消息:验证合法则进行转发;

其中,所述通过所述正式通道发送的消息由所述通讯客户端用第三私钥进行签名,所述第三公钥和所述第三私钥组成的第三公私钥对对应于所述正式通道。

第三方面,本发明提供一种对等网络通讯系统,所述系统包括若干个上述通讯客户端和上述对等网络。

第四方面,本发明提供一种对等网络通讯方法,所述方法包括:

生成第一公私钥对;

通过若干所述转发节点向第二通讯客户端发送临时通道身份信息以建立临时通道;

通过所述临时通道与第二通讯客户端的通道搭建响应单元交换公钥,生成并发送正式通道身份信息和对应于正式通道的第三公私钥对以建立正式通道;

向各所述转发节点发送第三公钥,以供各所述转发节点验证所转发的消息;

用交换得到的第二公钥对待发送消息进行加密,并用第三私钥对所述待发送消息进行签名,通过所述正式通道发送所述待发送消息;

接收通过所述正式通道发送的消息,用第一私钥解密所述消息。

其中,所述第一公私钥对包括第一公钥和第一私钥。

第五方面,本发明提供一种对等网络通讯方法,所述方法包括:

生成第二公私钥对;

接收第一通讯客户端通过若干转发节点发送的临时通道身份信息以建立临时通道;

通过所述临时通道与所述第一通讯客户端的通道搭建发起单元交换公钥,并接收正式通道身份信息和对应于正式通道的第三公私钥对以建立正式通道;

向各所述转发节点发送第三公钥,以供各所述转发节点验证所转发的消息;

用交换得到的第一公钥对待发送消息进行加密,并用第三私钥对所述待发送消息进行签名,通过所述正式通道发送所述待发送消息;

接收通过所述正式通道发送的消息,用第二私钥解密所述消息。

其中,所述第二公私钥对包括第二公钥和第二私钥。

第六方面,本发明提供一种对等网络通讯方法,所述方法包括:

转发第一通讯客户端发送的信息以建立临时通道;

分别转发第一通讯客户端和第二通讯客户端发送的信息以建立正式通道;

向所述第一通讯客户端或所述第二通讯客户端获取第三公钥;

用所述第三公钥验证所述第一通讯客户端或所述第二通讯客户端通过所述正式通道发送的消息:验证合法则进行转发。

其中,所述通过所述正式通道发送的消息由所述第一通讯客户端或所述第二通讯客户端用第三私钥进行签名,所述第三公钥和所述第三私钥组成的第三公私钥对对应于所述正式通道。

本发明诸多实施例提供的对等网络通讯系统和方法通过建立临时通道以交互建立正式通道的信息,同时在临时通道中交换双方通讯客户端的公钥,以及对应于正式通道的第三公私钥对,同时向对等网络中的转发节点提供第三公钥,从而在正式通道中发送通过交换的公钥加密,同时通过第三私钥签名的信息:一方面,转发节点可利用第三公钥进行验证,若验证通过才进行转发,从而保障了通道的合法性;另一方面,接收信息的通讯客户端可利用自身的私钥对信息进行解密,从而保障了信息的安全性;最终实现了无需集中式服务器,同时无需用户进行注册和登录操作即可进行安全通讯;

本发明一些实施例提供的对等网络通讯系统和方法进一步通过发送对应于临时通道身份码的二维码建立临时通道,提高了通讯的安全性。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:

图1为MSN Messenger客户端登录的通讯示意图。

图2为一种开放授权登录方式的示意图。

图3为本发明一实施例中通讯客户端的结构示意图。

图4为本发明一实施例中一种对等网络通讯方法的流程图。

图5为本发明一实施例中另一种对等网络通讯方法的流程图。

图6为图4所示方法中步骤S12的流程图。

图7为图5所示方法中步骤S22的流程图。

图8为图4所示方法中步骤S13的流程图。

图9为图5所示方法中步骤S23的流程图。

图10为本发明一实施例中生成正式通道的过程的示意图。

图11为图4所示方法中步骤S14的流程图。

图12为图5所示方法中步骤S24的流程图。

图13为本发明一实施例中对等网络的结构示意图。

图14为本发明一实施例中一种对等网络通讯方法的流程图。

图15为图14所示方法中步骤S31的流程图。

图16为图14所示方法中步骤S32的流程图。

图17为本发明一实施例中对等网络通讯系统的结构示意图。

具体实施方式

下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

图3为本发明一实施例中通讯客户端的结构示意图。

如图3所示,在本实施例中,本发明提供的通讯客户端10包括通道搭建发起单元11、通道搭建响应单元12和通讯单元13。

在本实施例中,各通讯客户端10通过对等网络的若干转发节点进行相互通讯。

通道搭建发起单元11用于生成第一公私钥对,通过若干所述转发节点向第二通讯客户端10发送临时通道身份信息以建立临时通道,通过所述临时通道与第二通讯客户端10的通道搭建响应单元12交换公钥,生成并发送正式通道身份信息和对应于正式通道的第三公私钥对以建立正式通道。其中,所述第一公私钥对包括第一公钥和第一私钥。

通道搭建响应单元12用于生成第二公私钥对,接收第一通讯客户端10通过若干转发节点发送的临时通道身份信息以建立临时通道,通过所述临时通道与第一通讯客户端10的通道搭建发起单元11交换公钥,并接收正式通道身份信息和对应于正式通道的第三公私钥对以建立正式通道。其中,所述第二公私钥对包括第二公钥和第二私钥。

通讯单元13用于向各所述转发节点发送第三公钥,以供各所述转发节点验证所转发的消息;接收通过所述正式通道发送的消息,用通道搭建发起单元11持有的第一私钥或通道搭建响应单元12持有的第二私钥解密所述消息;以及,用通道搭建发起单元11交换得到的第二公钥或通道搭建响应单元12交换得到的第一公钥对待发送消息进行加密,并用第三私钥对所述待发送消息进行签名,通过所述正式通道发送所述待发送消息。

图4为本发明一实施例中一种对等网络通讯方法的流程图。图4所示的对等网络通讯方法可对应应用于上述通讯客户端10的通道搭建发起单元11和通讯单元13中。

如图4所示,在本实施例中,本发明提供的对等网络通讯方法包括:

S11:生成第一公私钥对;

S12:通过若干所述转发节点向第二通讯客户端发送临时通道身份信息以建立临时通道;

S13:通过所述临时通道与第二通讯客户端的通道搭建响应单元交换公钥,生成并发送正式通道身份信息和对应于正式通道的第三公私钥对以建立正式通道;

S14:向各所述转发节点发送第三公钥,以供各所述转发节点验证所转发的消息;

S15:用交换得到的第二公钥对待发送消息进行加密,并用第三私钥对所述待发送消息进行签名,通过所述正式通道发送所述待发送消息;

S16:接收通过所述正式通道发送的消息,用第一私钥解密所述消息。

其中,所述第一公私钥对包括第一公钥和第一私钥。

图5为本发明一实施例中另一种对等网络通讯方法的流程图。图5所示的方法可对应应用于上述通讯客户端10的通道搭建响应单元12和通讯单元13中。

如图5所示,在本实施例中,本发明提供的另一种对等网络通讯方法包括:

S21:生成第二公私钥对;

S22:接收第一通讯客户端通过若干转发节点发送的临时通道身份信息以建立临时通道;

S23:通过所述临时通道与所述第一通讯客户端的通道搭建发起单元交换公钥,并接收正式通道身份信息和对应于正式通道的第三公私钥对以建立正式通道;

S24:向各所述转发节点发送第三公钥,以供各所述转发节点验证所转发的消息;

S25:用交换得到的第一公钥对待发送消息进行加密,并用第三私钥对所述待发送消息进行签名,通过所述正式通道发送所述待发送消息;

S26:接收通过所述正式通道发送的消息,用第二私钥解密所述消息。

其中,所述第二公私钥对包括第二公钥和第二私钥。

具体地,在本实施例中,第一通讯客户端和第二通讯客户端分别在各自初始化时生成第一公私钥对和第二公私钥对。步骤S11中,第一通讯客户端的通道搭建发起单元11获取第一通讯客户端初始化生成的第一公私钥对;步骤S12中,第二通讯客户端的通道搭建响应单元12获取第二通讯客户端初始化生成的第二公私钥对。

在一优选实施例中,通道搭建发起单元11和通道搭建响应单元12可分别自行初始化生成第一公私钥对和第二公私钥对,并分别在步骤S11和S12中获取初始化生成的公私钥对。

在另一优选实施例中,通道搭建发起单元11和通道搭建响应单元12可以在每次搭建临时通道和正式通道前生成不同的公私钥对,即在每次执行步骤S11/S12时生成第一公私钥对/第二公私钥对。

在步骤S12中,第一通讯客户端的通道搭建发起单元11通过若干所述转发节点向第二通讯客户端的通道搭建响应单元12发送临时通道身份信息;对应地,在步骤S22中,第二通讯客户端的通道搭建响应单元12接收所述临时通道身份信息以获取临时通道身份码temp_channel_id,从而建立临时通道。

在步骤S13和步骤S23中,第一通讯客户端的通道搭建发起单元11和第二通讯客户端的通道搭建响应单元12通过临时通道交换各自所持有的公钥;第一通讯客户端的通道搭建发起单元11还生成正式通道身份信息和对应于正式通道的第三公私钥对并通过临时通道发送至第二通讯客户端的通道搭建响应单元12;第二通讯客户端的通道搭建响应单元12根据正式通道身份信息获取正式通道身份码channel_id,从而建立正式通道。

步骤S14和步骤S24中,第一通讯客户端的通道搭建发起单元11和第二通讯客户端的通道搭建响应单元12分别监听正式通道,并为各转发节点提供第三公钥。

步骤S15和步骤S25中,第一通讯客户端的通道搭建发起单元11和第二通讯客户端的通道搭建响应单元12分别用步骤S13和S23中交换得到的第二公钥和第一公钥对待发送信息进行加密,并用第三私钥对待发送信息进行签名,再通过正式通道进行发送。

当转发节点接收到上述通过正式通道发送的信息时,转发节点用上述步骤S14或S24中获得的第三公钥对接收的信息进行验证:若验证通过则进行转发,验证失败则不进行转发,以保证通道的合法性。

在步骤S16和S26中,第一通讯客户端的通道搭建发起单元11和第二通讯客户端的通道搭建响应单元12分别用各自持有的第一私钥和第二私钥对接收的信息进行解密。

上述实施例提供的通讯客户端和对等网络通讯方法通过建立临时通道以交互建立正式通道的信息,同时在临时通道中交换双方通讯客户端的公钥,以及对应于正式通道的第三公私钥对,同时向对等网络中的转发节点提供第三公钥,从而在正式通道中发送通过交换的公钥加密,同时通过第三私钥签名的信息:一方面,转发节点可利用第三公钥进行验证,若验证通过才进行转发,从而保障了通道的合法性;另一方面,接收信息的通讯客户端可利用自身的私钥对信息进行解密,从而保障了信息的安全性;最终实现了无需集中式服务器,同时无需用户进行注册和登录操作即可进行安全通讯。

图6为图4所示方法中步骤S12的流程图。

如图6所示,在一优选实施例中,步骤S12包括:

S121:生成临时通道身份码和对应的二维码;

S122:通过若干所述转发节点向第二通讯客户端发送所述二维码,以供所述第二通讯客户端通过扫描所述二维码获取所述临时通道身份码,从而建立临时通道。

图7为图5所示方法中步骤S22的流程图。

如图7所示,与图6所示步骤S12相对应地,在一优选实施例中,所述临时通道身份信息为二维码,步骤S22包括:

S221:扫描接收的二维码以获取临时通道身份码,从而建立临时通道。

图8为图4所示方法中步骤S13的流程图。

如图8所示,在一优选实施例中,步骤S13包括:

S131:监听所述临时通道,接收第二通讯客户端的通道搭建响应单元通过若干所述转发节点返回的第二公钥;

S132:生成正式通道身份信息和对应于正式通道的第三公私钥对;

S133:通过所述临时通道向第二通讯客户端的通道搭建响应单元发送所述正式通道身份信息、第三公私钥对和第一公钥。

图9为图5所示方法中步骤S23的流程图。

如图9所示,与图8所示步骤S13相对应地,在一优选实施例中,步骤S23包括:

S231:通过所述临时通道向所述第一通讯客户端的通道搭建发起单元发送第二公钥;

S232:监听所述临时通道,接收所述第一通讯客户端的通道搭建发起单元发送的正式通道身份信息、第三公私钥对和第一公钥。

图10为本发明一实施例中生成正式通道的过程的示意图。

具体地,如图6-10所示,在步骤S12和步骤S22中,第一通讯客户端的通道搭建发起单元11采用二维码的形式发送临时通道身份码;在步骤S131和步骤S232中,第二通讯客户端的通道搭建响应单元12通过临时通道返回第二公钥;在步骤S132中,第一通讯客户端的通道搭建发起单元11生成正式通道身份信息和对应于正式通道的第三公私钥对;在步骤S133和步骤S232中,第一通讯客户端的通道搭建发起单元11用接收的第二公钥对所述正式通道身份信息、第三公私钥对和第一公钥进行加密,再通过临时通道进行发送,第二通讯客户端的通道搭建响应单元12接收上述各项加密信息后用自身持有的第二私钥进行解密。

上述实施例进一步通过发送对应于临时通道身份码的二维码建立临时通道,并通过临时通道发送的第二公钥加密正式通道身份信息、第三公私钥对和第一公钥,提高了通讯的安全性。

图11为图4所示方法中步骤S14的流程图。图12为图5所示方法中步骤S24的流程图。

如图11和图12所示,在步骤S14和步骤S24中,第一通讯客户端的通道搭建发起单元11和第二通讯客户端的通道搭建响应单元12分别执行了以下步骤:

监听所述正式通道;

接收各所述转发节点发送的第三公钥请求;

向各所述转发节点返回第三公钥,以供各所述转发节点验证所转发的消息。

图13为本发明一实施例中对等网络的结构示意图。

如图13所示,在本实施例中,本发明提供的对等网络20包括若干转发节点21。

转发节点21包括:转发单元,用于转发通讯客户端10发送的信息以建立临时通道及正式通道,向通讯客户端10获取第三公钥,用所述第三公钥验证通讯客户端10通过所述正式通道发送的消息:验证合法则进行转发。

其中,所述通过所述正式通道发送的消息由通讯客户端10用第三私钥进行签名,所述第三公钥和所述第三私钥组成的第三公私钥对对应于所述正式通道。

图14为本发明一实施例中一种对等网络通讯方法的流程图。图14所示的对等网络通讯方法可对应应用于图13所示的转发节点21中。

如图14所示,在本实施例中,本发明提供的对等网络通讯方法包括:

S31:转发第一通讯客户端发送的信息以建立临时通道;

S32:分别转发第一通讯客户端和第二通讯客户端发送的信息以建立正式通道;

S33:向所述第一通讯客户端或所述第二通讯客户端获取第三公钥;

S34:用所述第三公钥验证所述第一通讯客户端或所述第二通讯客户端通过所述正式通道发送的消息:验证合法则进行转发。

其中,所述通过所述正式通道发送的消息由所述第一通讯客户端或所述第二通讯客户端用第三私钥进行签名,所述第三公钥和所述第三私钥组成的第三公私钥对对应于所述正式通道。

上述实施例提供的对等网络和对等网络通讯方法实现了无需集中式服务器,同时无需用户进行注册和登录操作即可进行安全通讯。

在一优选实施例中,所述转发通讯客户端发送的信息以建立临时通道包括:转发第一通讯客户端发送的二维码,以供第二通讯客户端通过扫描所述二维码获取对应的临时通道身份码,从而建立临时通道。

图15为图14所示方法中步骤S31的流程图。图15所示的方法可对应应用于上述优选实施例的对等网络中。

如图15所示,在一优选实施例中,步骤S31包括:

S311:转发第一通讯客户端发送的二维码,以供第二通讯客户端通过扫描所述二维码获取对应的临时通道身份码,从而建立临时通道。

在一优选实施例中,所述转发通讯客户端发送的信息以建立正式通道包括:转发第二通讯客户端返回的第二公钥;转发第一通讯客户端发送的正式通道身份信息、第三公私钥对和第一公钥。

图16为图14所示方法中步骤S32的流程图。图16所示的方法可对应应用于上述优选实施例的对等网络中。

如图16所示,在一优选实施例中,步骤S32包括:

S321:转发第二通讯客户端返回的第二公钥;

S322:转发第一通讯客户端发送的正式通道身份信息、第三公私钥对和第一公钥。

图17为本发明一实施例中对等网络通讯系统的结构示意图。

如图17所示,在本实施例中,本发明提供的对等网络通讯系统包括上述任一实施例所述的对等网络和若干个上述任一实施例所述的通讯客户端。

上述实施例提供的对等网络通讯系统实现了无需集中式服务器,同时无需用户进行注册和登录操作即可进行安全通讯。

附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这根据所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以通过执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以通过专用硬件与计算机指令的组合来实现。

描述于本申请实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,例如,通讯单元可以是设置在计算机或移动智能设备中的软件程序,也可以是单独进行通讯的硬件芯片。其中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定,例如,通道搭建发起单元和通道搭建响应单元还可以被描述为“用于添加通讯好友的好友添加单元”。

作为另一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中所述装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,所述程序被一个或者一个以上的处理器用来执行描述于本申请的公式输入方法。

以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1