一种交叉认证的方法及装置与流程

文档序号:13667049阅读:327来源:国知局
一种交叉认证的方法及装置与流程

本发明实施例涉及网络安全技术领域,尤其涉及一种交叉认证的方法及装置。



背景技术:

传统的认证方法是依靠有认证能力的双端,一般为客户端和中心端,客户端采用私钥加密,中心端采用与之对应的公钥进行认证的方式进行的。而这种认证方法仅限于双端具有认证能力,然而双端无相互认证能力的情况下,无法实现双向认证。



技术实现要素:

本发明实施例提供一种交叉认证的方法及装置,可以实现无认证能力的实体间实现双向认证的效果。

第一方面,本发明实施例提供了一种交叉认证的方法,该方法包括:

第一客户端建立请求事件,第二客户端建立响应事件;

所述第一客户端与所述第二客户端分别对所述请求事件与所述响应事件进行交叉加密,所述第一客户端得到交叉加密后的响应事件作为第一认证信息,所述第二客户端得到交叉加密后的请求事件作为第二认证信息;

所述第一客户端与所述第二客户端分别将所述第一认证信息与所述第二认证信息发送至认证服务器,用于进行信息认证。

进一步的,在第一客户端建立请求事件,第二客户端建立响应事件之前,还包括:

第一客户端与第二客户端建立通讯通道。

进一步的,所述第一客户端与所述第二客户端分别对所述请求事件与所述响应事件进行交叉加密,所述第一客户端得到交叉加密后的响应事件作为第一认证信息,所述第二客户端得到交叉加密后的请求事件作为第二认证信息,包括:

所述第一客户端对所述请求事件加密,发送给所述第二客户端;所述第二客户端对所述响应事件加密,发送给所述第一客户端;

所述第二客户端接收到所述请求事件后,对所述请求事件再加密;所述第一客户端接收到所述响应事件后,对所述响应事件再加密;

所述第一客户端将再加密的响应事件确定为第一认证信息,所述第二客户端将再加密的请求事件确定为第二认证信息。

进一步的,所述第一客户端与所述第二客户端分别将所述第一认证信息与所述第二认证信息发送至认证服务器,用于进行信息认证,包括:

所述第一客户端与所述第二客户端分别将所述第一认证信息与所述第二认证信息发送至认证服务器;

所述认证服务器对所述请求事件的加密算法和再加密算法进行验证;以及对所述响应事件的加密算法和再加密算法进行验证;

若认证服务器验证成功,则将验证成功的信息分别下发至所述第一客户端和所述第二客户端。

进一步的,在将验证成功的信息分别下发至所述第一客户端和所述第二客户端之后,还包括:

所述认证服务器对所述第一认证信息采用与所述第一客户端相对应的公钥进行加密,并返回给所述第一客户端;且

所述认证服务器对所述第二认证信息采用与所述第二客户端相对应的公钥进行加密,并返回给所述第二客户端;

所述第一客户端对所述第一认证信息的加密公钥进行校验,若验证合格,则将所述第一认证信息返回给所述第二客户端;且

所述第二客户端对所述第二认证信息的加密公钥进行校验,若验证合格,则将所述第二认证信息返回给所述第一客户端。

第二方面,本发明实施例还提供了一种交叉认证的装置,该装置包括:

请求事件建立模块,配置于第一客户端,用于建立请求事件;响应事件建立模块,配置于第二客户端,用于第二客户端建立响应事件;

交叉加密模块,分别配置于所述第一客户端与所述第二客户端,用于所述第一客户端与所述第二客户端分别对所述请求事件与所述响应事件进行交叉加密,所述第一客户端得到交叉加密后的响应事件作为第一认证信息,所述第二客户端得到交叉加密后的请求事件作为第二认证信息;

信息认证模块,分别配置于所述第一客户端与所述第二客户端,用于分别将所述第一认证信息与所述第二认证信息发送至认证服务器,用于进行信息认证。

进一步的,所述装置还包括:

通讯通道建立模块,分别配置于所述第一客户端与所述第二客户端,用于第一客户端与第二客户端建立通讯通道。

进一步的,所述交叉加密模块包括:

请求事件加密及发送单元,配置于所述第一客户端,用于对所述请求事件加密,发送给所述第二客户端;响应事件加密及发送单元,配置于所述第二客户端,用于对所述响应事件加密,发送给所述第一客户端;

请求事件再加密单元,配置于所述第二客户端,用于接收到所述请求事件后,对所述请求事件再加密;响应事件再加密单元,配置于所述第一客户端,用于接收到所述响应事件后,对所述响应事件再加密;

第一认证信息确定单元,配置于所述第一客户端,用于将再加密的响应事件确定为第一认证信息,第二认证信息确定单元,配置于所述第二客户端,用于将再加密的请求事件确定为第二认证信息。

进一步的,所述信息认证模块包括:

认证信息发送单元,分别配置于所述第一客户端与所述第二客户端,用于分别将所述第一认证信息与所述第二认证信息发送至认证服务器;

验证单元,配置于所述认证服务器,用于对所述请求事件的加密算法和再加密算法进行验证;以及对所述响应事件的加密算法和再加密算法进行验证;

验证成功信息下发单元,配置于所述认证服务器,用于若认证服务器验证成功,则将验证成功的信息分别下发至所述第一客户端和所述第二客户端。

进一步的,所述信息认证模块包括:

公钥加密单元,配置于所述认证服务器,用于对所述第一认证信息采用与所述第一客户端相对应的公钥进行加密,并返回给所述第一客户端;且

对所述第二认证信息采用与所述第二客户端相对应的公钥进行加密,并返回给所述第二客户端;

认证信息校验单元,分别配置于所述第一客户端与所述第二客户端,用于对所述第一认证信息的加密公钥进行校验,若验证合格,则将所述第一认证信息返回给所述第二客户端;且

对所述第二认证信息的加密公钥进行校验,若验证合格,则将所述第二认证信息返回给所述第一客户端。

本发明实施例通过在第一客户端建立请求事件,第二客户端建立响应事件之后,所述第一客户端与所述第二客户端分别对所述请求事件与所述响应事件进行交叉加密,所述第一客户端得到交叉加密后的响应事件作为第一认证信息,所述第二客户端得到交叉加密后的请求事件作为第二认证信息;所述第一客户端与所述第二客户端分别将所述第一认证信息与所述第二认证信息发送至认证服务器,用于进行信息认证,解决了现有技术中,无法在双端无相互认证能力的情况下实现双向认证的问题,可以实现无认证能力的实体间实现双向认证的效果。

附图说明

图1是本发明实施例一提供的交叉认证的方法的流程图;

图2是本发明实施例二提供的交叉认证的方法的流程图;

图3是本发明实施例三提供的交叉认证的方法的流程图;

图4是本发明实施例四提供的交叉认证的方法的流程图;

图5是本发明实施例五提供的交叉认证的装置的结构示意图。

具体实施方式

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

在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。

实施例一

图1是本发明实施例一提供的交叉认证的方法的流程图,本实施例可适用于两端相互认证的情况,该方法可以由本发明实施例所提供的交叉认证的装置来执行,该装置可以由软件和/或硬件的方式来实现,并可集成于多个终端中。

如图1所示,所述交叉认证的方法包括:

s110、第一客户端建立请求事件,第二客户端建立响应事件。

其中,请求事件和响应事件可以是用于进行身份认证的一串代码。请求事件可以是身份认证请求信息,响应事件可以是对该身份认证请求事件的响应信息。两者可以有相互对应关系,相互对应关系可以是根据请求事件和响应事件的建立时间以及内容上进行确定。其中,第一客户端和第二客户端不作具体限定,如第一客户端可以是智能手机等,第二客户端可以是智能家居中的门或者其他家居等,当智能手机发起身份认证请求事件时,由门的控制系统发出响应事件。

s120、所述第一客户端与所述第二客户端分别对所述请求事件与所述响应事件进行交叉加密,所述第一客户端得到交叉加密后的响应事件作为第一认证信息,所述第二客户端得到交叉加密后的请求事件作为第二认证信息。

其中,加密方式可以是对称加密方式,也可以是非对称加密方式。交叉加密可以是第一客户端对请求事件加密后发送给第二客户端,第二客户端对响应事件加密后发送给第一客户端,再由第一客户端对响应事件进行加密,由第二客户端对请求事件进行加密,这样就实现了交叉加密的效果。经过交叉加密后,第一客户端得到的是经过第二客户端和第一客户端加密的响应事件,第二客户端得到的是经过第一客户端和第二客户端加密的请求事件,这样把第一客户端得到的交叉加密后的响应事件作为第一认证信息,并把第二客户端得到的交叉加密后的请求事件作为第二认证信息。在本实施例中,可以由第一客户端与第二客户端通过一定的途径实现请求事件与响应事件的传输,比如,通过固定的传输服务器,路由器或者其他网络节点等。

在本实施例中,可选的,在第一客户端建立请求事件,第二客户端建立响应事件之前,还包括:第一客户端与第二客户端建立通讯通道。其中通讯通道包括直接的通讯通道,比如将第一客户端和第二客户端以蓝牙的形式进行连接,再利用蓝牙连接形成通讯通道进行信息的交互,就可以实现在两端没有相互认证能力的情况下,为交叉加密提供了信息传输基础,可以提高信息认证的效率和安全性。

s130、所述第一客户端与所述第二客户端分别将所述第一认证信息与所述第二认证信息发送至认证服务器,用于进行信息认证。

其中,认证服务器可以是指定的服务器,也可以是具有与第一客户端的私钥和第二客户端的私钥相对应的公钥的服务器。在服务器接收到第一认证信息与第二认证信息后,可以分别对第一认证信息与第二认证信息进行认证,如,因为响应事件经过第二客户端加密后发给第一客户端,再由第一客户端再次进行加密形成第一认证信息,认证服务器可以通过与第一客户端的私钥对应的公钥对第一认证信息进行第一层的解密,并通过与第二客户端的私钥对应的公钥对第一认证信息进行第二层的解密,得到响应事件。相应的,因为请求事件经过第一客户端加密后发给第二客户端,再由第二客户端再次进行加密形成第二认证信息,认证服务器可以通过与第二客户端的私钥对应的公钥对第二认证信息进行第一层的解密,并通过与第一客户端的私钥对应的公钥对第二认证信息进行第二层的解密,得到请求事件。

在上述过程中,可以根据服务器是否能够正常进行解密来得到校验结果,还可以通过对请求事件和响应事件本身的内容进行校验来确定认证信息是否对应,如果服务器不能够正常进行解密或者对请求事件和响应事件本身的内容校验发现不匹配时,都可以确定认证不通过。只有服务器能够正常进行解密或者对请求事件和响应事件本身的内容校验匹配时,才能确定为校验合格。在认证服务器校验合格之后,可以分别向第一客户端发送认证请求通过信息和向第二客户端发送认证完成信息,这样,就实现了无认证能力的客户端之间的相互认证。

本实施例的技术方案,通过在第一客户端建立请求事件,第二客户端建立响应事件之后,所述第一客户端与所述第二客户端分别对所述请求事件与所述响应事件进行交叉加密,所述第一客户端得到交叉加密后的响应事件作为第一认证信息,所述第二客户端得到交叉加密后的请求事件作为第二认证信息;所述第一客户端与所述第二客户端分别将所述第一认证信息与所述第二认证信息发送至认证服务器,用于进行信息认证,解决了现有技术中,无法在双端无相互认证能力的情况下实现双向认证的问题,可以实现无认证能力的实体间实现双向认证的效果。

实施例二

图2是本发明实施例二提供的交叉认证的方法的流程图。本实施例在上述实施例的基础上,对所述第一客户端与所述第二客户端分别对所述请求事件与所述响应事件进行交叉加密,所述第一客户端得到交叉加密后的响应事件作为第一认证信息,所述第二客户端得到交叉加密后的请求事件作为第二认证信息进行了进一步的优化。

如图2所示,所述交叉认证的方法包括:

s210、第一客户端建立请求事件,第二客户端建立响应事件。

s220、所述第一客户端对所述请求事件加密,发送给所述第二客户端;所述第二客户端对所述响应事件加密,发送给所述第一客户端。

其中,所述第一客户端可以利用私钥对所述请求事件加密,并发送给第二客户端。所述第二客户端可以利用私钥对所述响应事件加密,发送给所述第一客户端。

s230、所述第二客户端接收到所述请求事件后,对所述请求事件再加密;所述第一客户端接收到所述响应事件后,对所述响应事件再加密。

第二客户端接收到经过第一客户端加密后的请求事件后,对所述加密后的请求事件利用第二客户端的私钥进行再加密。第一客户端接收到经过第二客户端加密后的响应事件后,对所述加密后的响应事件利用第一客户端的私钥进行再加密。

s240、所述第一客户端将再加密的响应事件确定为第一认证信息,所述第二客户端将再加密的请求事件确定为第二认证信息。

进行交叉加密后,便可以在第一客户端和第二客户端分别确定第一认证信息和第二认证信息。

s250、所述第一客户端与所述第二客户端分别将所述第一认证信息与所述第二认证信息发送至认证服务器,用于进行信息认证。

本实施例在上述实施例的基础上,提供了第一客户端和第二客户端进行交叉加密的具体方式,这样设置的好处是可以提高数据传输过程中的安全性,并能够实现相互认证。

实施例三

图3是本发明实施例三提供的交叉认证的方法的流程图。本实施例在上述各实施例的基础上,对所述第一客户端与所述第二客户端分别将所述第一认证信息与所述第二认证信息发送至认证服务器,用于进行信息认证进行了进一步的优化。

如图3所示,所述交叉认证的方法包括:

s310、第一客户端建立请求事件,第二客户端建立响应事件。

s320、所述第一客户端与所述第二客户端分别对所述请求事件与所述响应事件进行交叉加密,所述第一客户端得到交叉加密后的响应事件作为第一认证信息,所述第二客户端得到交叉加密后的请求事件作为第二认证信息。

s330、所述第一客户端与所述第二客户端分别将所述第一认证信息与所述第二认证信息发送至认证服务器。

s340、所述认证服务器对所述请求事件的加密算法和再加密算法进行验证;以及对所述响应事件的加密算法和再加密算法进行验证。

其中,认证服务器可以分别利用与第二客户端的私钥对应的公钥对所述请求事件的再加密算法进行验证,以及利用与第一客户端的私钥对应的公钥对所述请求事件的加密算法进行验证。其中,验证成功的情况可以包括对请求事件和响应事件正常解密的情况,验证失败的情况可以包括不能够对其中的一次加密算法进行解密,具体可以是不存在与第一客户端和第二客户端的私钥相对应的公钥,以及加密后无法正常进行解密操作,还可以是解密之后请求事件与响应事件不对应的情况等。

s350、若认证服务器验证成功,则将验证成功的信息分别下发至所述第一客户端和所述第二客户端。

本实施例在上述各实施例的基础上,提供了一种认证服务器对交叉加密后的请求事件和响应事件进行认证的方法,这样设置的好处是可以对交叉加密的信息进行认证,如果认证成功,则说明两个客户端之间实现了双向的认证。

实施例四

图4是本发明实施例四提供的交叉认证的方法的流程图。本实施例在上述各实施例的基础上,对所述交叉签名的方法进行了进一步的优化。

如图4所示,所述交叉认证的方法包括:

s410、第一客户端建立请求事件,第二客户端建立响应事件。

s420、所述第一客户端与所述第二客户端分别对所述请求事件与所述响应事件进行交叉加密,所述第一客户端得到交叉加密后的响应事件作为第一认证信息,所述第二客户端得到交叉加密后的请求事件作为第二认证信息。

s430、所述第一客户端与所述第二客户端分别将所述第一认证信息与所述第二认证信息发送至认证服务器,用于进行信息认证。

s440、所述认证服务器对所述第一认证信息采用与所述第一客户端相对应的公钥进行加密,并返回给所述第一客户端;且所述认证服务器对所述第二认证信息采用与所述第二客户端相对应的公钥进行加密,并返回给所述第二客户端。

其中,认证服务器可以通过与第一客户端对应的公钥对第一认证信息进行加密,然后返回给第一客户端,由于第一客户端可以用自身的私钥对该加密信息进行解密。相应的,认证服务器也可以对第二认证信息做相应的处理。

s450、所述第一客户端对所述第一认证信息的加密公钥进行校验,若验证合格,则将所述第一认证信息返回给所述第二客户端;且所述第二客户端对所述第二认证信息的加密公钥进行校验,若验证合格,则将所述第二认证信息返回给所述第一客户端。

所述第一客户端对所述第一认证信息的加密公钥进行校验的过程,可以是第一客户端对第一认证信息解密的过程,由于加密公钥是与第一客户端的私钥相对应的,所以第一客户端对于第一认证信息的解密也相当于是对该认证信息的再一次认证。相应的,第二客户端也做同样的处理。这里第一客户端利用私钥对认证服务器的公钥加密后的第一认证信息进行解密后,返回给第二客户端,第二客户端利用私钥对第二认证信息进行解密后,返回给第一客户端,这样就完成了客户端之间的再一次认证,提高了相互认证的安全性。

本实施例在上述各实施例的基础上,提供了一种客户端在得到认证服务器的加密信息后,再次进行认证的过程,这样设置的好处是可以双向认证的安全级别。

实施例五

图5是本发明实施例五提供的交叉认证的装置的结构示意图。如图5所示,所述交叉认证的装置,包括:

请求事件建立模块510,配置于第一客户端,用于建立请求事件;响应事件建立模块520,配置于第二客户端,用于第二客户端建立响应事件;

交叉加密模块530,分别配置于所述第一客户端与所述第二客户端,用于所述第一客户端与所述第二客户端分别对所述请求事件与所述响应事件进行交叉加密,所述第一客户端得到交叉加密后的响应事件作为第一认证信息,所述第二客户端得到交叉加密后的请求事件作为第二认证信息;

信息认证模块540,分别配置于所述第一客户端与所述第二客户端,用于分别将所述第一认证信息与所述第二认证信息发送至认证服务器,用于进行信息认证。

本发明实施例通过在第一客户端建立请求事件,第二客户端建立响应事件之后,所述第一客户端与所述第二客户端分别对所述请求事件与所述响应事件进行交叉加密,所述第一客户端得到交叉加密后的响应事件作为第一认证信息,所述第二客户端得到交叉加密后的请求事件作为第二认证信息;所述第一客户端与所述第二客户端分别将所述第一认证信息与所述第二认证信息发送至认证服务器,用于进行信息认证,解决了现有技术中,无法在双端无相互认证能力的情况下实现双向认证的问题,可以实现无认证能力的实体间实现双向认证的效果。

在上述各实施例的基础上,可选的,所述装置还包括:

通讯通道建立模块,分别配置于所述第一客户端与所述第二客户端,用于第一客户端与第二客户端建立通讯通道。

在上述各实施例的基础上,可选的,所述交叉加密模块530包括:

请求事件加密及发送单元,配置于所述第一客户端,用于对所述请求事件加密,发送给所述第二客户端;响应事件加密及发送单元,配置于所述第二客户端,用于对所述响应事件加密,发送给所述第一客户端;

请求事件再加密单元,配置于所述第二客户端,用于接收到所述请求事件后,对所述请求事件再加密;响应事件再加密单元,配置于所述第一客户端,用于接收到所述响应事件后,对所述响应事件再加密;

第一认证信息确定单元,配置于所述第一客户端,用于将再加密的响应事件确定为第一认证信息,第二认证信息确定单元,配置于所述第二客户端,用于将再加密的请求事件确定为第二认证信息。

在上述各实施例的基础上,可选的,所述信息认证模块540包括:

认证信息发送单元,分别配置于所述第一客户端与所述第二客户端,用于分别将所述第一认证信息与所述第二认证信息发送至认证服务器;

验证单元,配置于所述认证服务器,用于对所述请求事件的加密算法和再加密算法进行验证;以及对所述响应事件的加密算法和再加密算法进行验证;

验证成功信息下发单元,配置于所述认证服务器,用于若认证服务器验证成功,则将验证成功的信息分别下发至所述第一客户端和所述第二客户端。

在上述各实施例的基础上,可选的,所述信息认证模块540包括:

公钥加密单元,配置于所述认证服务器,用于对所述第一认证信息采用与所述第一客户端相对应的公钥进行加密,并返回给所述第一客户端;且

对所述第二认证信息采用与所述第二客户端相对应的公钥进行加密,并返回给所述第二客户端;

认证信息校验单元,分别配置于所述第一客户端与所述第二客户端,用于对所述第一认证信息的加密公钥进行校验,若验证合格,则将所述第一认证信息返回给所述第二客户端;且

对所述第二认证信息的加密公钥进行校验,若验证合格,则将所述第二认证信息返回给所述第一客户端。

上述产品可执行本发明任意实施例所提供的方法,具备执行方法相应的功能模块和有益效果。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

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