密钥协商方法及装置与流程

文档序号:20047241发布日期:2020-03-03 03:57阅读:269来源:国知局
密钥协商方法及装置与流程

本申请涉及信息安全技术领域,尤其涉及一种密钥协商方法及装置。



背景技术:

通常,ssl(securesocketslayer,安全套接层)作为一种为网络通信提供安全及数据完整性的安全协议,常被用于终端设备在与相关服务器通信时,对通信双方身份的确认,以及为了避免数据的泄漏对通信数据的加密等。

然而,上述使用ssl协议进行安全服务的方式中,由于ssl内存占用率大,多数终端设备无法运行ssl,且ssl在进行服务的过程中,需借助第三方ca公司,操作过于复杂。以及只能对服务器进行身份认证,无法对终端设备进行身份认证,安全性低。



技术实现要素:

本申请的目的旨在至少在一定程度上解决上述的技术问题之一。

为此,本申请的第一个目的在于提出一种密钥协商方法,该方法可以完成终端设备和云端服务器的双向身份认证,并建立可靠性的安全连接,降低了成本,其提高了数据传输的安全性且效率高。

本申请的第二个目的在于提出另一种密钥协商方法。

本申请的第三个目的在于提出一种密钥协商装置。

本申请的第四个目的在于提出另一种密钥协商装置。

为了实现上述目的,本申请第一方面实施例提出了一种密钥协商方法,包括以下步骤:生成第一随机数,应用云端服务器的第一公钥对所述第一随机数和终端设备的标识信息进行加密生成第一密文;向所述云端服务器发送密钥协商请求,其中,所述密钥协商请求包括:所述第一密文和所述终端设备的第二公钥,以便所述云端服务器应用所述第一私钥解密所述第一密文后,根据所述标识信息和所述第二公钥验证所述终端设备的合法性;接收所述云端服务器验证所述终端设备合法后,应用所述第二公钥对会话密钥加密后发送的包括第二密文的密钥协商响应,其中,所述会话密钥包括所述第一随机数;应用所述第二私钥对所述第二密文进行解密,如果获得所述第一随机数,则应用所述会话密钥对预先与所述云端服务器协商的第一字符串进行加密,向所述云端服务器发送包括所述第三密文的密钥确认响应,以供所述云端服务器应用所述会话密钥对所述第三密文进行解密处理,并根据解密结果中是否包含所述第一字符串确定密钥协商是否成功。

本申请实施例的密钥协商方法,通过终端设备将加密的第一密文发送至云端服务器,以通过云端服务器对其进行解密并根据标识信息和第二公钥验证终端设备的合法性,并对解密得到数据进行再一次的加密,同时发送给终端设备,然后在终端设备接收到该第二密文之后对其进行解密,以验证身份。由此,可以完成终端设备和云端服务器的双向身份认证,并建立可靠性的安全连接,降低了成本,其提高了数据传输的安全性且效率高。

另外,本申请实施例的密钥协商方法,,还具有如下附加的技术特征:

在本申请的一个实施例中,所述标识信息为所述终端设备的mac地址;所述密钥协商请求中还包括:所述第一密文的哈希值,以便所述云端服务器应用所述第一私钥解密所述第一密文后,根据所述mac地址、所述哈希值和所述第二公钥验证所述终端设备的合法性。

在本申请的一个实施例中,所述应用所述会话密钥对预先与所述云端服务器协商的第一字符串进行加密,包括:按照预设周期通过随机数发生器生成预设长度的随机数;将所述随机数与所述第一字符串进行拼接处理生成第二字符串;应用所述会话密钥对所述第二字符串进行加密,向所述云端服务器发送包括所述第三密文的密钥确认响应,以供所述云端服务器应用所述会话密钥对所述第三密文进行解密处理,并根据解密结果中是否包含所述第一字符串确定密钥协商是否成功。

为了实现上述目的,本申请第二方面实施例提出了另一种密钥协商方法,包括以下步骤:接收终端设备发送的密钥协商请求,其中,所述密钥协商请求包括:第一密文和终端设备的第二公钥;应用云端服务器的第一私钥解密所述第一密文获取第一随机数和终端设备的标识信息,根据所述标识信息和所述第二公钥查询预存的许可数据库验证所述终端设备的合法性;如果所述许可数据库包括所述标识信息和所述第二公钥,则应用所述第二公钥对会话密钥加密,向所述终端设备发送包括第二密文的密钥协商响应,其中,所述会话密钥包括所述第一随机数;接收所述终端设备应用所述第二私钥解密所述第二密文获取所述第一随机数后发送的包括第三密文的密钥确认响应,应用所述会话密钥解密所述第三密文获取解密结果;检测所述解密结果中是否包含与所述终端设备预先协商的第一字符串确定密钥协商是否成功。

本申请实施例的密钥协商方法,接收终端设备发送的加密的第一密文,以并对其进行解密再根据标识信息和第二公钥验证终端设备的合法性,并对解密得到数据进行再一次的加密,同时发送给终端设备,然后在终端设备接收到该第二密文之后对其进行解密,以验证身份。由此,可以完成终端设备和云端服务器的双向身份认证,并建立可靠性的安全连接,降低了成本,其提高了数据传输的安全性且效率高。

另外,本申请实施例的密钥协商方法,还具有如下附加的技术特征:

在本申请的一个实施例中,所述应用所述第二公钥对会话密钥加密,包括:生成第二随机数,将所述第二随机数与所述第一随机数进行拼接生成会话密钥;应用所述第二公钥对所述会话密钥加密。

为了实现上述目的,本申请第三方面实施例提出了一种密钥协商装置,包括:加密模块,用于生成第一随机数,应用云端服务器的第一公钥对所述第一随机数和终端设备的标识信息进行加密生成第一密文;发送模块,用于向所述云端服务器发送密钥协商请求,其中,所述密钥协商请求包括:所述第一密文和所述终端设备的第二公钥,以便所述云端服务器应用所述第一私钥解密所述第一密文后,根据所述标识信息和所述第二公钥验证所述终端设备的合法性;响应模块,用于接收所述云端服务器验证所述终端设备合法后,应用所述第二公钥对会话密钥加密后发送的包括第二密文的密钥协商响应,其中,所述会话密钥包括所述第一随机数;解密模块,用于应用所述第二私钥对所述第二密文进行解密,在获得所述第一随机数时,应用所述会话密钥对预先与所述云端服务器协商的第一字符串进行加密,向所述云端服务器发送包括所述第三密文的密钥确认响应,以供所述云端服务器应用所述会话密钥对所述第三密文进行解密处理,并根据解密结果中是否包含所述第一字符串确定密钥协商是否成功。

本申请实施例的密钥协商装置,通过终端设备将加密的第一密文发送至云端服务器,以通过云端服务器对其进行解密并根据标识信息和第二公钥验证终端设备的合法性,并对解密得到数据进行再一次的加密,同时发送给终端设备,然后在终端设备接收到该第二密文之后对其进行解密,以验证身份。由此,可以完成终端设备和云端服务器的双向身份认证,并建立可靠性的安全连接,降低了成本,其提高了数据传输的安全性且效率高。

另外,本申请实施例的密钥协商装置,还具有如下附加的技术特征:

在本申请的一个实施例中,所述标识信息为所述终端设备的mac地址;所述密钥协商请求中还包括:所述第一密文的哈希值,以便所述云端服务器应用所述第一私钥解密所述第一密文后,根据所述mac地址、所述哈希值和所述第二公钥验证所述终端设备的合法性。

在本申请的一个实施例中,所述解密模块用于:按照预设周期通过随机数发生器生成预设长度的随机数;将所述随机数与所述第一字符串进行拼接处理生成第二字符串;应用所述会话密钥对所述第二字符串进行加密,向所述云端服务器发送包括所述第三密文的密钥确认响应,以供所述云端服务器应用所述会话密钥对所述第三密文进行解密处理,并根据解密结果中是否包含所述第一字符串确定密钥协商是否成功。

为了实现上述目的,本申请第四方面实施例提出了另一种密钥协商装置,其特征在于,包括:接收模块,用于接收终端设备发送的密钥协商请求,其中,所述密钥协商请求包括:第一密文和终端设备的第二公钥;查询模块,用于应用云端服务器的第一私钥解密所述第一密文获取第一随机数和终端设备的标识信息,根据所述标识信息和所述第二公钥查询预存的许可数据库验证所述终端设备的合法性;第一处理模块,用于在所述许可数据库包括所述标识信息和所述第二公钥时,应用所述第二公钥对会话密钥加密,向所述终端设备发送包括第二密文的密钥协商响应,其中,所述会话密钥包括所述第一随机数;第二处理模块,用于接收所述终端设备应用所述第二私钥解密所述第二密文获取所述第一随机数后发送的包括第三密文的密钥确认响应,应用所述会话密钥解密所述第三密文获取解密结果;检测模块,用于检测所述解密结果中是否包含与所述终端设备预先协商的第一字符串确定密钥协商是否成功。

本申请实施例的密钥协商装置,本申请实施例的密钥协商方法,接收终端设备发送的加密的第一密文,以并对其进行解密再根据标识信息和第二公钥验证终端设备的合法性,并对解密得到数据进行再一次的加密,同时发送给终端设备,然后在终端设备接收到该第二密文之后对其进行解密,以验证身份。由此,可以完成终端设备和云端服务器的双向身份认证,并建立可靠性的安全连接,降低了成本,其提高了数据传输的安全性且效率高。

另外,本申请实施例的密钥协商装置,还具有如下附加的技术特征:

在本申请的一个实施例中,所述第一处理模块用于:生成第二随机数,将所述第二随机数与所述第一随机数进行拼接生成会话密钥;应用所述第二公钥对所述会话密钥加密。

本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。

附图说明

本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1是根据本申请一个实施例的密钥协商方法的流程图;

图2是根据本申请另一个实施例的密钥协商方法的流程;

图3是根据本申请一个实施例的密钥协商方法的示意图;

图4是根据本申请一个实施例的密钥协商装置的结构示意图;

图5是根据本申请另一个实施例的密钥协商装置的结构示意图。

具体实施方式

下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。

下面参考附图描述本申请实施例的密钥协商方法及装置。

通常,ssl在为网络通信提供安全服务时,在设备端使用ca证书,通过设备的公私钥配对加解密,完成对服务器的认证。

举例而言,终端设备发送一个连接请求至服务器,服务器将自己的ca证书,以及与ca证书相关的信息发送至终端设备,终端设备检查服务器发送的ca证书是否是由自己信赖的ca中心签发的。

如果是,则继续执行ssl协议,终端设备比较ca证书的信息,比如域名、公钥等信息,与服务器先前发送的相关信息是否一致,只有在信息一致时,认证服务器身份合法。

进而,在服务器合法时,服务器从终端设备发送过来的密码方案中,选择一种加密程度最高的密码方案,用终端设备的公钥加过密后通知终端设备,终端设备针对该密码方案,选择一个通话密钥,进而使用服务器的公钥加过密后发送给服务器。

从而,服务器接收到终端设备发送过来的信息,通过自己的私钥解密获得通话密钥,进而服务器、浏览器根据密码对称方案进行信息交互。

由此,可以看出在使用ssl协议进行通信时,只能对服务器进行身份认证,无法对终端设备进行身份认证,且ssl相对太过庞大,多数终端设备无法运行ssl,可行性低,并且由于ssl需要借助第三方ca公司,操作过于复杂。以及只能对服务器进行身份认证,无法对终端设备进行身份认证,安全性低。

为了解决上述问题,本申请提出了一种密钥协商方法,可以完成终端设备和云端服务器的双向身份认证,并建立可靠性的安全连接,降低了成本,其提高了数据传输的安全性且效率高。具体如下:

图1是根据本申请一个实施例的密钥协商方法的流程图。

如图1所示,该密钥协商方法包括:

步骤110,生成第一随机数,应用云端服务器的第一公钥对第一随机数和终端设备的标识信息进行加密生成第一密文。

具体地,可以通过随机数发生器生成预设长度的第一随机数。其中,预设长度可以根据需要进行设置,例如5个字符串、10个字符串等。其中,随机数可以是字母、数字和特殊符号等中的一种或者多种。

进一步地,终端设备可以获取自身的标识信息,并可使用预先存储的云端服务器的第一公钥对得到的第一随机数和标识信息进行加密操作,以生成第一密文。

其中,标识信息可以是mac(mediaaccesscontrol,媒体访问控制)地址,也可以是imei(internationalmobileequipmentidentity,国际移动设备身份码),还可以是其他的设备标识信息,可以根据实际应用需要进行选择设置。

其中,第一公钥是与云端服务器预先约定设置的可以对明文进行加密的密钥。

举例而言,云端服务器可预先使用非对称算法生成一对永久的第一私钥和第一公钥对,并存储在云端服务器上,同时云端服务器会将第一公钥发送给终端设备上。从而在终端设备向云端服务器发起建立连接请求时,云端服务器能够根第一私钥验证终端设备的身份,以保证非法终端设备与云端服务器建立连接,进一步提高数据传输的安全性。

步骤120,向云端服务器发送密钥协商请求,其中,密钥协商请求包括:第一密文和终端设备的第二公钥,以便云端服务器应用第一公钥解密第一密文后,根据标识信息和第二公钥验证终端设备的合法性。

具体地,终端设备在向云端服务器发送包括第一密文和终端设备的第二公钥的密钥协商请求后,云端服务器可以应用第一私钥解密第一密文后,得到第一随机数和标识信息。

其中,当标识信息是终端设备的mac地址时,通过同时查询许可数据库,以确认许可服务器是否已经生成mac和第二公钥,从而根据mac和第二公钥验证终端设备的合法性。

或者是,密钥协商请求中还包括第一密文的哈希值,以便云端服务器应用第一公钥解密第一密文后,根据mac地址、哈希值和第二公钥验证终端设备的合法性。

需要说明的是,如果应用第一私钥解密第一密文成功,进行后续验证,如果应用第一公钥解密第一密文失败,云端服务器可以将该终端设备作为非法终端设备,不再进行后续验证。

步骤130,接收云端服务器验证终端设备合法后,应用第二公钥对会话密钥加密后发送的包括第二密文的密钥协商响应,其中,会话密钥包括第一随机数。

具体地,在对第一密文解密成功,并得到第一密文的明文信息之后,云端服务器使用接收到的第二公钥对该包括第一随机数的会话秘钥进行加密操作得到第二密文,然后将第二密文发送给终端设备。

为了进一步提高数据传输的安全性,可以在对第一密文解密成功,并得到第一密文的明文信息之后,云端服务器还可生成一个第二随机数,将第一随机数和第二随机数进行拼接,得到拼接数据,并使用接收到的第二公钥对该拼接数据进行加密操作得到第二密文,然后将第二密文发送给终端设备。也就是说,第二密文还包括云端服务器生成的第二随机数。

需要说明的是,在会话密钥中必须包含第一随机数,另外为了进一步提高安全性加入第二随机数或者别的数据可以根据需要选择设置。

步骤140,应用第二公钥对第二密文进行解密,如果获得第一随机数,则应用会话密钥对预先与云端服务器协商的第一字符串进行加密,向云端服务器发送包括第三密文的密钥确认响应,以供云端服务器应用会话密钥对第三密文进行解密处理,并根据解密结果中是否包含第一字符串确定密钥协商是否成功。

具体地,当终端设备接收到第二密文后,使用终端设备的第二私钥对其进行解密操作,在解密成功后,可根据生成的第一随机数与解密得到的明文信息进行比对,如果比对结果中包含有第一随机数,则终端设备确认云端服务器通过身份验证。

进一步地,当确定云端服务器通过身份认证之后,应用会话密钥对预先与云端服务器协商的第一字符串进行加密,向云端服务器发送包括第三密文的密钥确认响应,以供云端服务器应用会话密钥对第三密文进行解密处理,并根据解密结果中是否包含第一字符串确定密钥协商是否成功。

其中,应用会话密钥对预先与云端服务器协商的第一字符串进行加密可以理解为首先按照预设周期通过随机数发生器生成预设长度的随机数。

进一步地,将随机数与第一字符串进行拼接处理生成第二字符串。

进一步地,应用会话密钥对第二字符串进行加密,向云端服务器发送包括第三密文的密钥确认响应,以供云端服务器应用会话密钥对第三密文进行解密处理,并根据解密结果中是否包含第一字符串确定密钥协商是否成功。

其中,预设周期可以根据需要进行设置,例如10分钟、20分钟等。

其中,预设长度可以根据需要进行设置,例如5个字符串、10个字符串等。

其中,随机数可以是字母、数字和特殊符号等中的一种或者多种。

需要说明的是,拼接处理可以理解为“随机数+第一字符串”、也可以理解为“第一字符串+随机数”、还可以理解为随机数任意插入第一字符串的各个字符之间等。

具体地,可以通过例如md5加密算法、des加密算法和rsa加密算法等,应用与云端服务器预先协商的会话密钥对第二字符串进行加密得到的结果作为第三密文。

进一步,将第三密文发送给云端服务器,云端服务器会利用相应的解密

算法,应用与终端设备预先协商的会话密钥对第三密文进行解密处理。

进一步地,判断解密结果中是否包含第一字符串以确定终端设备与服务器协商是否成功。

本申请实施例的密钥协商方法,通过终端设备将加密的第一密文发送至云端服务器,以通过云端服务器对其进行解密并根据标识信息和第二公钥验证终端设备的合法性,并对解密得到数据进行再一次的加密,同时发送给终端设备,然后在终端设备接收到该第二密文之后对其进行解密,以验证身份。由此,可以完成终端设备和云端服务器的双向身份认证,并建立可靠性的安全连接,降低了成本,其提高了数据传输的安全性且效率高。

图2是根据本申请另一个实施例的密钥协商方法的流程图。

如图2所示,该密钥协商方法包括:

步骤210,接收终端设备发送的密钥协商请求,其中,密钥协商请求包括:第一密文和终端设备的第二公钥。

步骤220,应用云端服务器的第一私钥解密第一密文获取第一随机数和终端设备的标识信息,根据标识信息和第二公钥查询预存的许可数据库验证终端设备的合法性。

具体地,云端服务器接收终端设备发送的密钥协商请求后,云端服务器可以应用第一私钥解密第一密文后,得到第一随机数和终端设备的标识信息。

需要说明的是,标识信息的具体说明请参见步骤110,此处不再详述。

其中,可以通过同时查询许可数据库,以确认许可服务器是否已经生成mac和第二公钥,从而根据mac和第二公钥验证终端设备的合法性。

需要说明的是,如果应用第一私钥解密第一密文成功,进行后续验证,如果应用第一公钥解密第一密文失败,云端服务器可以将该终端设备作为非法终端设备,不再进行后续验证。

步骤230,如果许可数据库包括标识信息和第二公钥,则应用第二公钥对会话密钥加密,向终端设备发送包括第二密文的密钥协商响应,其中,会话密钥包括第一随机数。

步骤240,接收终端设备应用第二私钥解密第二密文获取第一随机数后发送的包括第三密文的密钥确认响应,应用会话密钥解密第三密文获取解密结果。

具体地,许可数据库包括标识信息和第二公钥,使用接收到的第二公钥对该包括第一随机数的会话秘钥进行加密操作得到第二密文,然后将第二密文发送给终端设备。

其中,为了进一步提高数据传输的安全性,可以生成第二随机数,将第二随机数与第一随机数进行拼接生成会话密钥,应用第二公钥对所述会话密钥加密。

进一步地,云端服务器向终端设备发送包括第二密文的密钥协商响应。由此,接收终端设备应用第二私钥解密第二密文获取第一随机数后发送的包括第三密文的密钥确认响应,应用会话密钥解密第三密文获取解密结果。

步骤250,检测解密结果中是否包含与终端设备预先协商的第一字符串确定密钥协商是否成功。

具体地,将第三密文发送给云端服务器,云端服务器会利用相应的解密

算法,应用与终端设备预先协商的会话密钥对第三密文进行解密处理。

进一步地,判断解密结果中是否包含第一字符串以确定终端设备与服务器协商是否成功。

需要说明的是,在检测获知解密结果中包含第一字符串时应用与终端设备协商的密钥信息对交互信息进行加密或解密处理。即在密钥协商结束以后,可以利用与终端设备协商的密钥信息对交互信息进行处理,可以是加密、解密等一种或者多种。

本申请实施例的密钥协商方法,接收终端设备发送的加密的第一密文,以并对其进行解密再根据标识信息和第二公钥验证终端设备的合法性,并对解密得到数据进行再一次的加密,同时发送给终端设备,然后在终端设备接收到该第二密文之后对其进行解密,以验证身份。由此,可以完成终端设备和云端服务器的双向身份认证,并建立可靠性的安全连接,降低了成本,其提高了数据传输的安全性且效率高。

为了本领域人员更加清楚上述实施过程,结合例子说明如下:

图3是根据本申请一个实施例的密钥协商方法的示意图。

如图3所示,智能终端可通过无线连接(wifi、蓝牙、zigbee等)的方式向云端服务器发送密钥协商请求时,其中,该密钥协商请求包括第一密文和第二公钥。

其中,该第一密文为使用云端服务器第一公钥对第一随机数r1和终端设备的mac地址进行加密得到的。在云端服务器接收到该密钥协商请求之后,可对该密钥协商请求进行解密操作以获得相应的明文信息,即第一随机数r1、终端设备的mac地址和终端设备的第二公钥。

另外,云端服务器还可以生成一个第二随机数r2,然后通过使用第二公钥对获得的第一随机数r1和第二随机数r2进行加密,得到第二密文,并发送至终端设备。

进一步地,终端设备在接收到第二密文之后,可使用第二私钥对第二密文进行解密,并在解密成功后,向云端服务器发送加密的认证通过信息,其中发送的认证通过信息可以是根据第一随机数r1和第二随机数r2对预先设置的确认信息(如图3中的“ok”等)进行加密生成的。

进一步地,云端服务器接收到该认证通过信息之后会对该信息进行解密,以获得预先设置的字符信息,进而根据认证通过信息建立安全的通信连接。

本申请实施例的密钥协商方法,通过终端设备将加密的第一密文发送至云端服务器,以通过云端服务器对其进行解密并根据标识信息和第二公钥验证终端设备的合法性,并对解密得到数据进行再一次的加密,同时发送给终端设备,然后在终端设备接收到该第二密文之后对其进行解密,以验证身份。由此,可以完成终端设备和云端服务器的双向身份认证,并建立可靠性的安全连接,降低了成本,其提高了数据传输的安全性且效率高。

为实现上述目的,本申请还提出一种密钥协商装置。

图4是根据本申请一个实施例的密钥协商装置的结构示意图。

如图4所示,该密钥协商装置可包括:加密模块41、发送模块42、响应模块43和解密模块44。

其中,加密模块41用于生成第一随机数,应用云端服务器的第一公钥对第一随机数和终端设备的标识信息进行加密生成第一密文。

发送模块42用于向云端服务器发送密钥协商请求,其中,密钥协商请求包括:第一密文和终端设备的第二公钥,以便云端服务器应用第一私钥解密第一密文后,根据标识信息和第二公钥验证终端设备的合法性。

响应模块43用于接收云端服务器验证终端设备合法后,应用第二公钥对会话密钥加密后发送的包括第二密文的密钥协商响应,其中,会话密钥包括第一随机数。

解密模块44用于应用第二私钥对第二密文进行解密,在获得第一随机数时,应用会话密钥对预先与云端服务器协商的第一字符串进行加密,向云端服务器发送包括第三密文的密钥确认响应,以供云端服务器应用会话密钥对第三密文进行解密处理,并根据解密结果中是否包含第一字符串确定密钥协商是否成功。

其中,在本申请的一个实施例中,标识信息为终端设备的mac地址,密钥协商请求中还包括:第一密文的哈希值,以便云端服务器应用第一私钥解密第一密文后,根据mac地址、哈希值和第二公钥验证终端设备的合法性。

其中,在本申请的一个实施例中,解密模块44用于按照预设周期通过随机数发生器生成预设长度的随机数,将随机数与第一字符串进行拼接处理生成第二字符串,应用会话密钥对第二字符串进行加密,向云端服务器发送包括第三密文的密钥确认响应,以供云端服务器应用会话密钥对第三密文进行解密处理,并根据解密结果中是否包含第一字符串确定密钥协商是否成功。

本发明实施例提供的密钥协商装置与上述第一方面实施例提供的密钥协商方法相对应,因此在前述密钥协商方法的实施方式也适用于本实施例提供的密钥协商装置,在本实施例中不再详细描述。

本申请实施例的密钥协商装置,通过终端设备将加密的第一密文发送至云端服务器,以通过云端服务器对其进行解密并根据标识信息和第二公钥验证终端设备的合法性,并对解密得到数据进行再一次的加密,同时发送给终端设备,然后在终端设备接收到该第二密文之后对其进行解密,以验证身份。由此,可以完成终端设备和云端服务器的双向身份认证,并建立可靠性的安全连接,降低了成本,其提高了数据传输的安全性且效率高。

图5是根据本申请另一个实施例的密钥协商装置的结构示意图。

如图5所示,该密钥协商装置可包括:接收模块51、查询模块52、第一处理模块53、第二处理模块54和检测模块55。

接收模块51用于接收终端设备发送的密钥协商请求,其中,密钥协商请求包括:第一密文和终端设备的第二公钥。

查询模块52用于应用云端服务器的第一私钥解密第一密文获取第一随机数和终端设备的标识信息,根据标识信息和第二公钥查询预存的许可数据库验证终端设备的合法性。

第一处理模块53用于在许可数据库包括标识信息和第二公钥时,应用第二公钥对会话密钥加密,向终端设备发送包括第二密文的密钥协商响应,其中,会话密钥包括第一随机数。

第二处理模块54用于接收终端设备应用第二私钥解密第二密文获取第一随机数后发送的包括第三密文的密钥确认响应,应用会话密钥解密第三密文获取解密结果。

检测模块55用于检测解密结果中是否包含与终端设备预先协商的第一字符串确定密钥协商是否成功。

其中,在本申请的一个实施例中,第一处理模块53用于生成第二随机数,将第二随机数与第一随机数进行拼接生成会话密钥;应用第二公钥对会话密钥加密。

本发明实施例提供的密钥协商装置与上述第二方面实施例提供的密钥协商方法相对应,因此在前述密钥协商方法的实施方式也适用于本实施例提供的密钥协商装置,在本实施例中不再详细描述。

本申请实施例的密钥协商装置,接收终端设备发送的加密的第一密文,以并对其进行解密再根据标识信息和第二公钥验证终端设备的合法性,并对解密得到数据进行再一次的加密,同时发送给终端设备,然后在终端设备接收到该第二密文之后对其进行解密,以验证身份。由此,可以完成终端设备和云端服务器的双向身份认证,并建立可靠性的安全连接,降低了成本,其提高了数据传输的安全性且效率高。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。

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