买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】密钥协商方法、云服务器、设备、存储介质以及系统_美的集团股份有限公司_201811302374.3 

申请/专利权人:美的集团股份有限公司

申请日:2018-11-02

公开(公告)日:2020-11-06

公开(公告)号:CN109120649B

主分类号:H04L29/06(20060101)

分类号:H04L29/06(20060101);H04L9/32(20060101);H04L9/08(20060101);H04L29/08(20060101)

优先权:

专利状态码:有效-授权

法律状态:2020.11.06#授权;2019.01.25#实质审查的生效;2019.01.01#公开

摘要:本发明公开了一种密钥协商方法,包括以下步骤:云服务器在接收到设备发送的随机数请求时,则生成第一随机数,并将所述第一随机数返回至所述设备;所述云服务器在接收到所述密钥协商请求报文时,根据所述密钥协商请求报文获取所述设备公钥以及所述签名数据;通过所述设备公钥对所述签名数据进行解密得到第二随机数;在所述第二随机数与所述第一随机数一致时,则所述云服务器与所述设备进行密钥协商。本发明还公开了一种云服务器、设备、计算机可读存储介质以及密钥协商系统。本发明在云服务器与设备进行密钥协商时,首先确定设备的合法性,从而加强了密钥协商过程的安全性。

主权项:1.一种密钥协商方法,其特征在于,所述密钥协商方法包括以下步骤:云服务器在接收到设备发送的随机数请求时,则生成第一随机数,并将所述第一随机数返回至所述设备,其中,所述设备在接收到所述第一随机数时,利用设备私钥对所述第一随机数进行加密得到签名数据,并根据所述签名数据以及设备公钥生成密钥协商请求报文并发送至所述云服务器;所述云服务器在接收到所述密钥协商请求报文时,根据所述密钥协商请求报文获取所述设备公钥以及所述签名数据;通过所述设备公钥对所述签名数据进行解密得到第二随机数;在所述第二随机数与所述第一随机数一致时,所述云服务器根据所述密钥协商请求报文获取第一密文数据,并通过云服务器私钥解密所述第一密文数据,得到并保存第三随机数,其中,所述设备在接收到所述第一随机数后,生成所述第三随机数,通过云服务器公钥加密所述第三随机数得到所述第一密文数据,并根据所述第一密文数据、所述设备公钥以及所述签名数据生成所述密钥协商请求报文发送至所述云服务器;所述云服务器生成第四随机数,并利用所述设备公钥对所述第四随机数进行加密得到第二密文数据;将所述第二密文数据返回至所述设备,以供所述设备在接收到所述第二密文数据时,利用所述设备私钥解密所述第二密文数据得到并保存所述第四随机数;根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥。

全文数据:密钥协商方法、云服务器、设备、存储介质以及系统技术领域本发明涉及信息安全技术领域,尤其涉及一种密钥协商方法、云服务器、设备、计算机可读存储介质以及密钥协商系统。背景技术智能设备广泛应用于生活中,比如用户通过终端向智能设备发送指令,以实现对智能设备的控制。但是,在云服务器与设备进行密钥协商的过程中,一般不对设备的合法性进行校验,这存在一定的风险。上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。发明内容本发明的主要目的在于提供一种密钥协商方法、云服务器、设备、计算机可读存储介质以及密钥协商系统,旨在云服务器与设备进行密钥协商时,首先确定设备的合法性,从而加强了密钥协商过程的安全性。为实现上述目的,本发明提供一种密钥协商方法,所述密钥协商方法包括以下步骤:云服务器在接收到设备发送的随机数请求时,则生成第一随机数,并将所述第一随机数返回至所述设备,其中,所述设备在接收到所述第一随机数时,利用设备私钥对所述第一随机数进行加密得到签名数据,并根据所述签名数据以及设备公钥生成密钥协商请求报文并发送至所述云服务器;所述云服务器在接收到所述密钥协商请求报文时,根据所述密钥协商请求报文获取所述设备公钥以及所述签名数据;通过所述设备公钥对所述签名数据进行解密得到第二随机数;在所述第二随机数与所述第一随机数一致时,则所述云服务器与所述设备进行密钥协商。优选地,所述根据所述密钥协商请求报文获取所述设备公钥的步骤包括:所述云服务器从所述密钥协商请求报文中提取设备公钥证书以及根公钥索引;根据所述根公钥索引从所述设备公钥证书中提取所述设备公钥。优选地,所述根据所述根公钥索引从所述设备公钥证书中提取所述设备公钥的步骤之前,还包括:对所述设备公钥证书中的预设信息进行哈希运算,得到第二哈希值,所述预设信息包括证书格式、证书序列号、哈希算法标识、设备公钥算法标识以及所述设备公钥中的至少一个;在所述第二哈希值与所述设备公钥证书中的第一哈希值一致时,则执行所述根据所述根公钥索引从所述设备公钥证书中提取所述设备公钥的步骤。优选地,所述对所述设备公钥证书中的预设信息进行哈希运算的步骤之前,还包括:利用预设服务器公钥解密所述设备公钥证书中的签名结果,得到第三哈希值,其中,所述签名结果为所述云服务器利用预设服务器私钥对所述第一哈希值进行加密得到;在所述第三哈希值与所述第一哈希值一致时,执行所述对所述设备公钥证书中的预设信息进行哈希运算的步骤。优选地,所述云服务器与所述设备进行密钥协商的步骤包括:所述云服务器根据所述密钥协商请求报文获取第一密文数据,并通过云服务器私钥解密所述第一密文数据,得到并保存第三随机数,其中,所述设备在接收到所述第一随机数后,生成所述第三随机数,通过云服务器公钥加密所述第三随机数得到所述第一密文数据,并根据所述第一密文数据、所述设备公钥以及所述签名数据生成所述密钥协商请求报文发送至所述云服务器;所述云服务器生成第四随机数,并利用所述设备公钥对所述第四随机数进行加密得到第二密文数据;将所述第二密文数据返回至所述设备,以供所述设备在接收到所述第二密文数据时,利用所述设备私钥解密所述第二密文数据得到并保存所述第四随机数;根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥。优选地,所述利用所述设备公钥对所述第四随机数进行加密得到第二密文数据的步骤之后,还包括:根据预设算法对所述第四随机数加密生成第一密钥校验值;将所述第二密文数据以及所述第一密钥校验值返回至所述设备,以供所述设备在接收到所述第二密文数据以及所述第一密钥校验值时,利用所述设备私钥解密所述第二密文数据得到所述第四随机数,并根据所述预设算法对所述第四随机数加密生成第二密钥校验值,在所述第二密钥校验值与所述第一密钥校验值一致时,则保存所述第四随机数;根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥。优选地,所述根据预设算法对所述第四随机数加密生成第一密钥校验值的步骤包括:根据所述第四随机数以及所述第三随机数对预定字节进行加密,得到加密结果;将所述加密结果的预设字节作为所述第一密钥校验值。优选地,所述将所述第二密文数据以及所述第一密钥校验值返回至所述设备的步骤之后,还包括:所述云服务器在接收到所述设备返回的密钥协商确认信息时,利用所述会话密钥解密所述密钥协商确认信息得到解密结果;在所述解密结果中包含预设字段时,则发送密钥协商确认报文至所述设备。优选地,所述根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥的步骤包括:将所述第四随机数与所述第三随机数进行拼接,得到拼接结果;将所述拼接结果作为所述云服务器与所述设备之间的会话密钥。优选地,所述通过所述设备公钥对所述签名数据进行解密得到第二随机数的步骤之后,还包括:在所述第二随机数与所述第一随机数不一致时,则断开所述云服务器与所述设备之间的连接。为实现上述目的,本发明还提供一种密钥协商方法,所述密钥协商方法包括以下步骤:设备向云服务器发起随机数请求,并在接收到所述云服务器返回的第一随机数时,利用设备私钥对所述第一随机数进行加密得到签名数据;将所述签名数据以及设备公钥生成密钥协商请求报文发送至所述云服务器,其中,所述云服务器在接收到所述密钥协商请求报文时,根据所述密钥协商请求报文获取所述设备公钥以及所述签名数据,通过所述设备公钥对所述签名数据进行解密得到第二随机数,并在所述第二随机数与所述第一随机数一致时,则所述云服务器与所述设备进行密钥协商。优选地,所述利用设备私钥对所述第一随机数进行加密得到签名数据的步骤之后,还包括:所述设备生成第三随机数,通过云服务器公钥加密所述第三随机数得到第一密文数据,并根据所述第一密文数据、所述设备公钥以及所述签名数据生成所述密钥协商请求报文发送至所述云服务器,以供所述云服务器根据所述密钥协商请求报文获取第一密文数据,并通过云服务器私钥解密所述第一密文数据,得到并保存第三随机数;所述设备在接收到所述第二密文数据时,利用所述设备私钥解密所述第二密文数据得到并保存第四随机数,并根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥,其中,所述云服务器在得到并保存所述第三随机数时,生成所述第四随机数,并利用所述设备公钥对所述第四随机数进行加密得到第二密文数据,将所述第二密文数据返回至所述设备。优选地,所述根据所述第一密文数据、所述设备公钥以及所述签名数据生成所述密钥协商请求报文发送至所述云服务器的步骤之后,还包括:所述设备在接收到所述第二密文数据以及第一密钥校验值时,利用所述设备私钥解密所述第二密文数据得到所述第四随机数,并根据预设算法对所述第四随机数加密生成第二密钥校验值,在所述第二密钥校验值与所述第一密钥校验值一致时,则保存所述第四随机数,并根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥,其中,所述云服务器根据所述预设算法对所述第四随机数加密生成所述第一密钥校验值,并将所述第二密文数据以及所述第一密钥校验值返回至所述设备。优选地,所述根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥的步骤之后,还包括:所述设备利用所述会话密钥对预设字段进行加密,得到密钥协商确认信息;将所述密钥协商确认信息发送至所述云服务器,以供所述云服务器在接收到所述密钥协商确认信息时,利用所述会话密钥解密所述密钥协商确认信息得到解密结果,在所述解密结果中包含所述预设字段时,则发送密钥协商确认报文至所述设备。优选地,所述根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥的步骤包括:将所述第四随机数与所述第三随机数进行拼接,得到拼接结果;将所述拼接结果作为所述云服务器与所述设备之间的会话密钥。为实现上述目的,本发明还提供一种云服务器,所述云服务器包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的密钥协商程序,所述密钥协商程序被所述处理器执行时实现上述密钥协商方法的步骤。为实现上述目的,本发明还提供一种设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的密钥协商程序,所述密钥协商程序被所述处理器执行时实现上述密钥协商方法的步骤。为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有密钥协商程序,所述密钥协商程序被处理器执行时实现上述密钥协商方法的步骤。为实现上述目的,本发明还提供一种密钥协商系统,所述密钥协商系统包括上述云服务器,以及上述设备。本发明提供的密钥协商方法、云服务器、设备、计算机可读存储介质以及密钥协商系统,云服务器在接收到设备发送的随机数请求时,则生成第一随机数,并将第一随机数返回至设备,并在接收到设备发送的密钥协商请求报文时,根据密钥协商请求报文获取设备公钥以及签名数据,通过设备公钥对签名数据进行解密得到第二随机数,并在第二随机数与第一随机数一致时,则云服务器与设备进行密钥协商。本发明在云服务器与设备进行密钥协商时,首先确定设备的合法性,从而加强了密钥协商过程的安全性。附图说明图1为本发明实施例方案涉及的终端的硬件运行环境示意图;图2为本发明密钥协商方法第一实施例的流程示意图;图3为本发明密钥协商方法第二实施例的流程示意图;图4为本发明密钥协商方法第三实施例的流程示意图;图5为本发明密钥协商方法第四实施例的流程示意图;图6为本发明密钥协商方法第五实施例的流程示意图;图7为本发明密钥协商方法第六实施例的流程示意图;图8为本发明密钥协商方法第七实施例的流程示意图;图9为本发明密钥协商方法第八实施例的流程示意图;图10为本发明密钥协商方法第九实施例的流程示意图;图11为本发明密钥协商方法第十实施例的流程示意图;图12为本发明密钥协商方法第十一实施例的流程示意图;图13为本发明密钥协商方法第十二实施例的流程示意图;图14为本发明密钥协商方法第十三实施例的流程示意图;图15为本发明密钥协商方法第十四实施例的流程示意图;图16为本发明密钥协商方法第十五实施例的流程示意图;图17为本发明密钥协商方法第十六实施例的流程示意图。本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。本发明提供一种密钥协商方法,增加了抓包获取身份认证信息的难度,从而加强了密钥协商过程的安全性。如图1所示,图1是本发明实施例方案涉及的终端的硬件运行环境示意图。本发明实施例终端可以是服务器,也可以是设备,比如空调器、空气调节器、电饭煲、智能门锁等。如图1所示,该服务器可以包括:处理器1001,例如CPU,存储器1002,通信总线1003。其中,通信总线1003用于实现该服务器中各组成部件之间的连接通信。存储器1002可以是高速RAM存储器,也可以是稳定的存储器non-volatilememory,例如磁盘存储器。存储器1002可选的还可以是独立于前述处理器1001的存储装置。如图1所示,作为一种计算机存储介质的存储器1002中可以包括密钥协商程序。在图1所示的服务器中,处理器1001可以用于调用存储器1002中存储的密钥协商程序,并执行以下操作:云服务器在接收到设备发送的随机数请求时,则生成第一随机数,并将所述第一随机数返回至所述设备,其中,所述设备在接收到所述第一随机数时,利用设备私钥对所述第一随机数进行加密得到签名数据,并根据所述签名数据以及设备公钥生成密钥协商请求报文并发送至所述云服务器;所述云服务器在接收到所述密钥协商请求报文时,根据所述密钥协商请求报文获取所述设备公钥以及所述签名数据;通过所述设备公钥对所述签名数据进行解密得到第二随机数;在所述第二随机数与所述第一随机数一致时,则所述云服务器与所述设备进行密钥协商。进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:所述云服务器从所述密钥协商请求报文中提取设备公钥证书以及根公钥索引;根据所述根公钥索引从所述设备公钥证书中提取所述设备公钥。进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:对所述设备公钥证书中的预设信息进行哈希运算,得到第二哈希值,所述预设信息包括证书格式、证书序列号、哈希算法标识、设备公钥算法标识以及所述设备公钥中的至少一个;在所述第二哈希值与所述设备公钥证书中的第一哈希值一致时,则执行所述根据所述根公钥索引从所述设备公钥证书中提取所述设备公钥的步骤。进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:利用预设服务器公钥解密所述设备公钥证书中的签名结果,得到第三哈希值,其中,所述签名结果为所述云服务器利用预设服务器私钥对所述第一哈希值进行加密得到;在所述第三哈希值与所述第一哈希值一致时,执行所述对所述设备公钥证书中的预设信息进行哈希运算的步骤。进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:所述云服务器根据所述密钥协商请求报文获取第一密文数据,并通过云服务器私钥解密所述第一密文数据,得到并保存第三随机数,其中,所述设备在接收到所述第一随机数后,生成所述第三随机数,通过云服务器公钥加密所述第三随机数得到所述第一密文数据,并根据所述第一密文数据、所述设备公钥以及所述签名数据生成所述密钥协商请求报文发送至所述云服务器;所述云服务器生成第四随机数,并利用所述设备公钥对所述第四随机数进行加密得到第二密文数据;将所述第二密文数据返回至所述设备,以供所述设备在接收到所述第二密文数据时,利用所述设备私钥解密所述第二密文数据得到并保存所述第四随机数;根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥。进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:根据预设算法对所述第四随机数加密生成第一密钥校验值;将所述第二密文数据以及所述第一密钥校验值返回至所述设备,以供所述设备在接收到所述第二密文数据以及所述第一密钥校验值时,利用所述设备私钥解密所述第二密文数据得到所述第四随机数,并根据所述预设算法对所述第四随机数加密生成第二密钥校验值,在所述第二密钥校验值与所述第一密钥校验值一致时,则保存所述第四随机数;根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥。进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:根据所述第四随机数以及所述第三随机数对预定字节进行加密,得到加密结果;将所述加密结果的预设字节作为所述第一密钥校验值。进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:所述云服务器在接收到所述设备返回的密钥协商确认信息时,利用所述会话密钥解密所述密钥协商确认信息得到解密结果;在所述解密结果中包含预设字段时,则发送密钥协商确认报文至所述设备。进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:将所述第四随机数与所述第三随机数进行拼接,得到拼接结果;将所述拼接结果作为所述云服务器与所述设备之间的会话密钥。进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:在所述第二随机数与所述第一随机数不一致时,则断开所述云服务器与所述设备之间的连接。进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:设备向云服务器发起随机数请求,并在接收到所述云服务器返回的第一随机数时,利用设备私钥对所述第一随机数进行加密得到签名数据;将所述签名数据以及设备公钥生成密钥协商请求报文发送至所述云服务器,其中,所述云服务器在接收到所述密钥协商请求报文时,根据所述密钥协商请求报文获取所述设备公钥以及所述签名数据,通过所述设备公钥对所述签名数据进行解密得到第二随机数,并在所述第二随机数与所述第一随机数一致时,则所述云服务器与所述设备进行密钥协商。进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:所述设备生成第三随机数,通过云服务器公钥加密所述第三随机数得到第一密文数据,并根据所述第一密文数据、所述设备公钥以及所述签名数据生成所述密钥协商请求报文发送至所述云服务器,以供所述云服务器根据所述密钥协商请求报文获取第一密文数据,并通过云服务器私钥解密所述第一密文数据,得到并保存第三随机数;所述设备在接收到所述第二密文数据时,利用所述设备私钥解密所述第二密文数据得到并保存第四随机数,并根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥,其中,所述云服务器在得到并保存所述第三随机数时,生成所述第四随机数,并利用所述设备公钥对所述第四随机数进行加密得到第二密文数据,将所述第二密文数据返回至所述设备。进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:所述设备在接收到所述第二密文数据以及第一密钥校验值时,利用所述设备私钥解密所述第二密文数据得到所述第四随机数,并根据预设算法对所述第四随机数加密生成第二密钥校验值,在所述第二密钥校验值与所述第一密钥校验值一致时,则保存所述第四随机数,并根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥,其中,所述云服务器根据所述预设算法对所述第四随机数加密生成所述第一密钥校验值,并将所述第二密文数据以及所述第一密钥校验值返回至所述设备。进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:所述设备利用所述会话密钥对预设字段进行加密,得到密钥协商确认信息;将所述密钥协商确认信息发送至所述云服务器,以供所述云服务器在接收到所述密钥协商确认信息时,利用所述会话密钥解密所述密钥协商确认信息得到解密结果,在所述解密结果中包含所述预设字段时,则发送密钥协商确认报文至所述设备。进一步地,处理器1001可以调用存储器1002中存储的密钥协商程序,还执行以下操作:将所述第四随机数与所述第三随机数进行拼接,得到拼接结果;将所述拼接结果作为所述云服务器与所述设备之间的会话密钥。参照图2,在第一实施例中,所述密钥协商方法包括:步骤S10、云服务器在接收到设备发送的随机数请求时,则生成第一随机数,并将所述第一随机数返回至所述设备,其中,所述设备在接收到所述第一随机数时,利用设备私钥对所述第一随机数进行加密得到签名数据,并根据所述签名数据以及设备公钥生成密钥协商请求报文并发送至所述云服务器;本实施例中,执行主体为云服务器。设备可以是空调器、洗衣机、智能门锁等多种智能设备,其可以通过云服务器与移动终端中的APP进行通信,即用户可以通过APP发送指令,以控制智能设备。在云服务器与设备进行安全传输之前,需要进行密钥协商。在云服务器与设备进行密钥协商之前,云服务器对设备的合法性进行验签。首先,设备向云服务器发起随机数申请,表示将进行密钥协商,其中,随机数申请报文中包括随机数有效期标识,该有效期标识表示随机数的生命周期。云服务器在接收到随机数申请报文时,生成第一随机数,并将第一随机数返回至设备。其中,随机数返回报文中包括返回状态码、随机数有效期标识以及第一随机数。设备在接收到云服务器发送的随机数返回报文时,获取第一随机数,并利用设备私钥对第一随机数进行签名,生成签名数据。根据签名数据以及设备公钥生成密钥协商请求报文,并将密钥协商请求报文发送至云服务器。步骤S11、所述云服务器在接收到所述密钥协商请求报文时,根据所述密钥协商请求报文获取所述设备公钥以及所述签名数据;需要说明的是,设备公钥可以是设备生成,也可以从设备公钥证书中提取,其中,设备公钥证书可以通过解密预设服务器得到。云服务器对设备公钥证书中的签名结果进行验签,在验签通过时,通过根公钥索引来提取设备公钥证书中的公钥。该种方式增加了证书的随机性,其中,预设服务器可以是License服务器。具体地,密钥协商请求报文中可以包括设备公钥、签名数据、第一密文数据以及会话密钥有效期标识等,也可以包括根公钥索引、设备公钥证书、签名数据、第一密文数据以及会话密钥有效期标识等。其中,设备在获取到第一随机数后,生成第三随机数,并通过云服务器公钥加密第三随机数得到第一密文数据,设备将第一密文数据发送至云服务器,以保证第三随机数的安全传输。步骤S12、通过所述设备公钥对所述签名数据进行解密得到第二随机数;步骤S13、在所述第二随机数与所述第一随机数一致时,则所述云服务器与所述设备进行密钥协商。本实施例中,设备在接收到云服务器发送的随机数返回报文时,获取第一随机数,并利用设备私钥对第一随机数进行签名生成签名数据,故云服务器可利用设备公钥对签名数据进行解密。云服务器解密签名数据得到第二随机数,并将第二随机数与第一随机数进行比较,在第二随机数与第一随机数一致时,则判定设备合法,云服务器与设备进行密钥协商。需要说明的是,判定设备是否合法的方法不限于以上所述,可根据实际情况进行设置。比如设备对第一随机数进行哈希运算加密得到第四哈希值,并通过第一预设密钥对第四哈希值进行签名得到哈希密文,将哈希密文以及第四哈希值返回至云服务器,云服务器通过第二预设密钥对哈希密文进行解密运算得到第五哈希值,在第五哈希值与第四哈希值一致时,则判定设备合法,云服务器与设备进行密钥协商。其中,哈希算法可以是SHA256算法或者MD5算法。其中,第一预设密钥可以是设备私钥,第二预设密钥可以是设备公钥。在第一实施例中,云服务器在接收到设备发送的随机数请求时,则生成第一随机数,将第一随机数返回至设备,并在接收到设备发送的密钥协商请求报文时,根据密钥协商请求报文得到第二随机数,并在第二随机数与第一随机数一致时,则云服务器与设备进行密钥协商。这样,在云服务器与设备进行密钥协商时,首先确定设备的合法性,从而加强了密钥协商过程的安全性。在第二实施例中,如图3所示,在上述图2所示的实施例基础上,所述根据所述密钥协商请求报文获取所述设备公钥的步骤包括:步骤S111、所述云服务器从所述密钥协商请求报文中提取设备公钥证书以及根公钥索引;步骤S112、根据所述根公钥索引从所述设备公钥证书中提取所述设备公钥。本实施例中,密钥协商请求报文由设备生成,并发送至云服务器,以向云服务器发起密钥协商请求。其中,密钥协商请求报文中可以包括设备公钥、签名数据、第一密文数据以及会话密钥有效期标识等,也可以包括根公钥索引、设备公钥证书、签名数据、第一密文数据以及会话密钥有效期标识等。其中,设备公钥可以是设备生成,也可以从设备公钥证书中提取,设备公钥证书可以通过解密预设服务器得到。云服务器对设备公钥证书中的签名结果进行验签,在验签通过时,通过根公钥索引来提取设备公钥证书中的公钥。该种方式增加了证书的随机性。需要说明的是,预设服务器可以是License服务器。其中,设备在获取到第一随机数后,利用设备私钥对第一随机数进行加密得到签名数据。设备将签名数据发送至云服务器,云服务器根据签名数据确认设备的合法性。其中,设备在获取到第一随机数后,生成第三随机数,并通过云服务器公钥加密第三随机数得到第一密文数据,设备将第一密文数据发送至云服务器,以保证第三随机数的安全传输。在第二实施例中,云服务器从密钥协商请求报文中提取设备公钥证书以及根公钥索引,并根据根公钥索引从设备公钥证书中提取设备公钥。这样,增加了证书的随机性,增加了抓包获取身份认证信息的难度。在第三实施例中,如图4所示,在上述图2至图3任一项所示的实施例基础上,所述根据所述根公钥索引从所述设备公钥证书中提取所述设备公钥的步骤之前,还包括:步骤S113、对所述设备公钥证书中的预设信息进行哈希运算,得到第二哈希值,所述预设信息包括证书格式、证书序列号、哈希算法标识、设备公钥算法标识以及所述设备公钥中的至少一个;步骤S114、判断所述第二哈希值与所述设备公钥证书中的第一哈希值是否一致;步骤S115、在所述第二哈希值与所述设备公钥证书中的第一哈希值一致时,则执行所述根据所述根公钥索引从所述设备公钥证书中提取所述设备公钥的步骤。本实施例中,在从设备公钥证书中提取设备公钥之前,云服务器对设备公钥证书进行验证。具体地,设备公钥证书中包括证书格式、证书序列号、哈希算法标识、设备公钥算法标识、设备公钥、签名结果以及第一哈希值,其中,签名结果为预设服务器利用预设服务器私钥对第一哈希值进行签名得到的,第一哈希值是预设服务器对预设信息进行哈希运算得到的,预设信息包括证书格式、证书序列号、哈希算法标识、设备公钥算法标识以及设备公钥。云服务器对设备证书中的预设信息进行哈希运算得到第二哈希值,在第二哈希值与第一哈希值一致时,则判定证书合法,则从设备证书中提取设备公钥。在第三实施例中,云服务器对设备公钥证书中的预设信息进行哈希计算,得到第二哈希值,并在第二哈希值与设备公钥证书中的第一哈希值一致时,则从设备公钥证书中提取设备公钥。这样,保证了证书的合法性。在第四实施例中,如图5所示,在上述图2至图4任一项所示的实施例基础上,所述对所述设备公钥证书中的预设信息进行哈希运算的步骤之前,还包括:步骤S116、利用预设服务器公钥解密所述设备公钥证书中的签名结果,得到第三哈希值,其中,所述签名结果为所述云服务器利用预设服务器私钥对所述第一哈希值进行加密得到;步骤S117、判断所述第三哈希值与所述第一哈希值是否一致;步骤S118、在所述第三哈希值与所述第一哈希值一致时,执行所述对所述设备公钥证书中的预设信息进行哈希运算的步骤。本实施例中,在从设备公钥证书中提取设备公钥之前,云服务器对设备公钥证书进行验证。具体地,设备公钥证书中包括证书格式、证书序列号、哈希算法标识、设备公钥算法标识、设备公钥、签名结果以及第一哈希值,其中,签名结果为预设服务器利用预设服务器私钥对第一哈希值进行签名得到的,第一哈希值是预设服务器对预设信息进行哈希运算得到的,预设信息包括证书格式、证书序列号、哈希算法标识、设备公钥算法标识以及设备公钥。云服务器利用预设服务器公钥解密设备公钥证书中的签名结果,得到第三哈希值,在第三哈希值与第一哈希值一致时,云服务器对设备证书中的预设信息进行哈希运算得到第二哈希值,在第二哈希值与第一哈希值一致时,则判定证书合法,则从设备证书中提取设备公钥。在第四实施例中,云服务器解密设备公钥证书中的签名结果,得到第三哈希值,在第三哈希值与设备公钥证书中的第一哈希值一致时,则对设备公钥证书中的预设信息进行哈希运算。这样,进一步保证了证书的合法性。在第五实施例中,如图6所示,在上述图2至图5任一项所示的实施例基础上,所述云服务器与所述设备进行密钥协商的步骤包括:步骤S131、所述云服务器根据所述密钥协商请求报文获取第一密文数据,并通过云服务器私钥解密所述第一密文数据,得到并保存第三随机数,其中,所述设备在接收到所述第一随机数后,生成所述第三随机数,通过云服务器公钥加密所述第三随机数得到所述第一密文数据,并根据所述第一密文数据、所述设备公钥以及所述签名数据生成所述密钥协商请求报文发送至所述云服务器;步骤S132、所述云服务器生成第四随机数,并利用所述设备公钥对所述第四随机数进行加密得到第二密文数据;步骤S133、将所述第二密文数据返回至所述设备,以供所述设备在接收到所述第二密文数据时,利用所述设备私钥解密所述第二密文数据得到并保存所述第四随机数;步骤S134、根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥。本实施例中,云服务器与设备进行密钥协商。首先,云服务器根据设备发送的密钥协商请求报文获取第三随机数,其中,第三随机数为设备生成,设备通过云服务器公钥加密第三随机数得到第一密文数据,并根据第一密文数据生成密钥协商请求报文发送至云服务器。然后,云服务器生成第四随机数,并利用设备公钥对第四随机数进行加密得到第二密文数据,并将第二密文数据返回至设备,以供设备利用设备私钥解密第二密文数据以获取第四随机数。这样,云服务器与设备各自拥有第三随机数以及第四随机数,并根据第四随机数以及第三随机数生成云服务器与设备之间的会话密钥。优选地,根据第四随机数以及第三随机数生成会话密钥的步骤可以是:将第四随机数与第三随机数进行拼接,将拼接结果作为会话密钥。当然,根据第四随机数以及第三随机数生成会话密钥也可以有其它方式,本发明不做具体限定。需要说明的是,第三随机数以及第四随机数也可以是密钥。比如设备生成设备公钥以及设备私钥,云服务器生成设备私钥以及设备公钥,设备接收云服务器发送的云服务器公钥,并使用设备私钥通过预设算法对云服务器公钥计算得到第一会话密钥,同理,云服务器接收设备发送的设备公钥,使用云服务器私钥通过预设算法对设备公钥计算得到第二会话密钥,将第一会话密钥以及第二会话密钥作为云服务器与设备之间的会话密钥。需要说明的是,预设算法可以是ECDH算法、ECC算法、RSA算法、ECDSA算法等,本发明不做具体限定。在第五实施例中,云服务器获取第三随机数后,生成第四随机数,并对第四随机数进行加密得到第二密文数据,将第二密文数据返回至设备,以供设备获取第四随机数,并根据第四随机数以及第三随机数生成云服务器与设备之间的会话密钥。这样,实现云服务器与设备之间的密钥协商。在第六实施例中,如图7所示,在上述图2至图6任一项所示的实施例基础上,所述利用所述设备公钥对所述第四随机数进行加密得到第二密文数据的步骤之后,还包括:步骤S135、根据预设算法对所述第四随机数加密生成第一密钥校验值;步骤S136、将所述第二密文数据以及所述第一密钥校验值返回至所述设备,以供所述设备在接收到所述第二密文数据以及所述第一密钥校验值时,利用所述设备私钥解密所述第二密文数据得到所述第四随机数,并根据所述预设算法对所述第四随机数加密生成第二密钥校验值,在所述第二密钥校验值与所述第一密钥校验值一致时,则保存所述第四随机数;步骤S137、根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥。本实施例中,云服务器与设备进行密钥协商。首先,云服务器根据设备发送的密钥协商请求报文获取第三随机数,其中,第三随机数为设备生成,设备通过云服务器公钥加密第三随机数得到第一密文数据,并根据第一密文数据生成密钥协商请求报文发送至云服务器。然后,云服务器生成第四随机数,根据预设算法对第四随机数与第三随机数的拼接结果进行加密生成第一密钥校验值,并且,云服务器利用设备公钥对第四随机数进行加密得到第二密文数据。云服务器将第二密文数据以及第一密钥校验值返回至设备,以供设备利用设备私钥解密第二密文数据以获取第四随机数,并根据预设算法对第四随机数与第三随机数的拼接结果加密得到第二密钥校验值,在第二密钥校验值与第一密钥校验值一致时,保存第四随机数,这样,云服务器与设备各自拥有第三随机数以及第四随机数,并根据第四随机数以及第三随机数生成云服务器与设备之间的会话密钥。优选地,根据第四随机数以及第三随机数生成会话密钥的步骤可以是:将第四随机数与第三随机数进行拼接,将拼接结果作为会话密钥。当然,根据第四随机数以及第三随机数生成会话密钥也可以有其它方式,本发明不做具体限定。需要说明的是,第一密钥校验值以及第二密钥校验值用于校验会话密钥。以第一密钥校验值为例,根据预设算法对第四随机数与第三随机数的拼接结果进行加密生成第一密钥校验值的步骤可以是:根据第四随机数与第三随机数的拼接结果对预定字节进行加密,得到加密结果,并将加密结果的预设字节作为第一密钥校验值。需要说明的是,会话密钥也可以利用其它方式进行校验,本发明不做具体限定。比如,云服务器根据SHA256算法对第四随机数与第三随机数的拼接结果进行运算得到第一摘要信息,设备根据SHA256算法对第四随机数与第三随机数的拼接结果进行运算得到第二摘要信息,在第二摘要信息与第一摘要信息一致时,则设备保存第四随机数,并根据第四随机数以及第三随机数生成云服务器与设备之间的会话密钥。需要说明的是,第三随机数以及第四随机数也可以是密钥。比如设备生成设备公钥以及设备私钥,云服务器生成设备私钥以及设备公钥,设备接收云服务器发送的云服务器公钥,并使用设备私钥通过预设算法对云服务器公钥计算得到第一会话密钥,同理,云服务器接收设备发送的设备公钥,使用云服务器私钥通过预设算法对设备公钥计算得到第二会话密钥,将第一会话密钥以及第二会话密钥作为云服务器与设备之间的会话密钥。需要说明的是,预设算法可以是ECDH算法、ECC算法、RSA算法、ECDSA算法等,本发明不做具体限定。在第六实施例中,云服务器获取第三随机数后,生成第四随机数,并对第四随机数进行加密得到第二密文数据,根据预设算法对第四随机数加密生成第一密钥校验值,并将第二密文数据以及第一密钥校验值发送至设备,以供设备通过第一密钥校验值进行校验,在校验通过时,根据第四随机数以及第三随机数生成会话密钥。这样,提高了云服务器与设备之间会话密钥的安全性。在第七实施例中,如图8所示,在上述图2至图7任一项所示的实施例基础上,所述根据预设算法对所述第四随机数加密生成第一密钥校验值的步骤包括:步骤S1341、根据所述第四随机数以及所述第三随机数对预定字节进行加密,得到加密结果;步骤S1342、将所述加密结果的预设字节作为所述第一密钥校验值。本实施例中,第一密钥校验值用于校验会话密钥。根据预设算法对第四随机数与第三随机数的拼接结果进行加密生成第一密钥校验值的步骤可以是:根据第四随机数与第三随机数的拼接结果对预定字节进行加密,得到加密结果,并将加密结果的预设字节作为第一密钥校验值。需要说明的是,预定字节可以是16字节,预设字节可以是前三字节。在第七实施例中,根据第四随机数以及第三随机数对预定字节进行加密,得到加密结果,并将加密结果的预设字节作为第一密钥校验值。这样,提高了云服务器与设备之间会话密钥的安全性。在第八实施例中,如图9所示,在上述图2至图8任一项所示的实施例基础上,所述将所述第二密文数据以及所述第一密钥校验值返回至所述设备的步骤之后,还包括:步骤S138、所述云服务器在接收到所述设备返回的密钥协商确认信息时,利用所述会话密钥解密所述密钥协商确认信息得到解密结果;步骤S139、在所述解密结果中包含预设字段时,则发送密钥协商确认报文至所述设备。本实施例中,设备在接收到第二密文数据以及第一密钥校验值时,利用设备私钥解密第二密文数据以获取第四随机数,并根据预设算法对第四随机数与第三随机数的拼接结果加密得到第二密钥校验值,在第二密钥校验值与第一密钥校验值一致时,保存第四随机数,这样,云服务器与设备各自拥有第三随机数以及第四随机数,并根据第四随机数以及第三随机数生成云服务器与设备之间的会话密钥。设备利用会话密钥对预设字段进行加密,或者设备利用会话密钥对预设字段和随机数进行加密,得到密钥协商确认信息,并将密钥协商确认信息发送至云服务器,以供云服务器在接收到密钥协商确认信息时,利用会话密钥解密密钥协商确认信息得到解密结果,在解密结果中包含预设字段时,则发送密钥协商确认报文至设备。其中,预设字段可以是“OK”等字符。在解密结果中未包含预设字段时,则返回错误码至设备。在第八实施例中,云服务器在接收到设备返回的密钥协商确认信息时,解密密钥协商确认信息得到解密结果,并在解密结果中包含预设字段时,则发送密钥协商确认报文至设备。这样,实现云服务器与设备之间的密钥协商。在第九实施例中,如图10所示,在上述图2至图9任一项所示的实施例基础上,所述根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥的步骤包括:步骤S1371、将所述第四随机数与所述第三随机数进行拼接,得到拼接结果;步骤S1372、将所述拼接结果作为所述云服务器与所述设备之间的会话密钥。本实施例中,根据第四随机数以及第三随机数生成会话密钥的步骤可以是:将第四随机数与第三随机数进行拼接,将拼接结果作为会话密钥。当然,根据第四随机数以及第三随机数生成会话密钥也可以有其它方式,本发明不做具体限定。需要说明的是,第三随机数以及第四随机数也可以是密钥。比如设备生成设备公钥以及设备私钥,云服务器生成设备私钥以及设备公钥,设备接收云服务器发送的云服务器公钥,并使用设备私钥通过预设算法对云服务器公钥计算得到第一会话密钥,同理,云服务器接收设备发送的设备公钥,使用云服务器私钥通过预设算法对设备公钥计算得到第二会话密钥,将第一会话密钥以及第二会话密钥作为云服务器与设备之间的会话密钥。需要说明的是,预设算法可以是ECDH算法、ECC算法、RSA算法、ECDSA算法等,本发明不做具体限定。在第九实施例中,将第四随机数与第三随机数进行拼接,并将拼接结果作为云服务器与设备之间的会话密钥,这样,保障了云服务器与设备之间的安全通信。在第十实施例中,如图11所示,在上述图2至图10任一项所示的实施例基础上,所述通过所述设备公钥对所述签名数据进行解密得到第二随机数的步骤之后,还包括:步骤S14、在所述第二随机数与所述第一随机数不一致时,则断开所述云服务器与所述设备之间的连接。在第十实施例中,在第二随机数与第一随机数不一致时,则判定该设备不合法,因此断开云服务器与设备之间的连接。这样,保证了云服务与设备之间的安全通信。本发明还提供一种密钥协商方法,参照图12,在第十一实施例中,所述密钥协商方法包括以下步骤:步骤S20、设备向云服务器发起随机数请求,并在接收到所述云服务器返回的第一随机数时,利用设备私钥对所述第一随机数进行加密得到签名数据;本实施例中,执行主体为设备。设备可以是空调器、洗衣机、智能门锁等多种智能设备,其可以通过云服务器与移动终端中的APP进行通信,即用户可以通过APP发送指令,以控制智能设备。在云服务器与设备进行安全传输之前,需要进行密钥协商。在云服务器与设备进行密钥协商之前,云服务器对设备的合法性进行验签。首先,设备向云服务器发起随机数申请,表示将进行密钥协商,其中,随机数申请报文中包括随机数有效期标识,该有效期标识表示随机数的生命周期。云服务器在接收到随机数申请报文时,生成第一随机数,并将第一随机数返回至设备。其中,随机数返回报文中包括返回状态码、随机数有效期标识以及第一随机数。设备在接收到云服务器发送的随机数返回报文时,获取第一随机数,并利用设备私钥对第一随机数进行签名,生成签名数据。根据签名数据以及设备公钥生成密钥协商请求报文,并将密钥协商请求报文发送至云服务器。步骤S21、将所述签名数据以及设备公钥生成密钥协商请求报文发送至所述云服务器,其中,所述云服务器在接收到所述密钥协商请求报文时,根据所述密钥协商请求报文获取所述设备公钥以及所述签名数据,通过所述设备公钥对所述签名数据进行解密得到第二随机数,并在所述第二随机数与所述第一随机数一致时,则所述云服务器与所述设备进行密钥协商。需要说明的是,设备公钥可以是设备生成,也可以从设备公钥证书中提取,其中,设备公钥证书可以通过解密预设服务器得到。云服务器对设备公钥证书中的签名结果进行验签,在验签通过时,通过根公钥索引来提取设备公钥证书中的公钥。该种方式增加了证书的随机性,其中,预设服务器可以是License服务器。具体地,密钥协商请求报文中可以包括设备公钥、签名数据、第一密文数据以及会话密钥有效期标识等,也可以包括根公钥索引、设备公钥证书、签名数据、第一密文数据以及会话密钥有效期标识等。其中,设备在获取到第一随机数后,生成第三随机数,并通过云服务器公钥加密第三随机数得到第一密文数据,设备将第一密文数据发送至云服务器,以保证第三随机数的安全传输。本实施例中,设备在接收到云服务器发送的随机数返回报文时,获取第一随机数,并利用设备私钥对第一随机数进行签名生成签名数据,故云服务器可利用设备公钥对签名数据进行解密。云服务器解密签名数据得到第二随机数,并将第二随机数与第一随机数进行比较,在第二随机数与第一随机数一致时,则判定设备合法,云服务器与设备进行密钥协商。需要说明的是,判定设备是否合法的方法不限于以上所述,可根据实际情况进行设置。比如设备对第一随机数进行哈希运算加密得到第四哈希值,并通过第一预设密钥对第四哈希值进行签名得到哈希密文,将哈希密文以及第四哈希值返回至云服务器,云服务器通过第二预设密钥对哈希密文进行解密运算得到第五哈希值,在第五哈希值与第四哈希值一致时,则判定设备合法,云服务器与设备进行密钥协商。其中,哈希算法可以是SHA256算法或者MD5算法。其中,第一预设密钥可以是设备私钥,第二预设密钥可以是设备公钥。在第十一实施例中,云服务器在接收到设备发送的随机数请求时,则生成第一随机数,将第一随机数返回至设备,并在接收到设备发送的密钥协商请求报文时,根据密钥协商请求报文得到第二随机数,并在第二随机数与第一随机数一致时,则云服务器与设备进行密钥协商。这样,在云服务器与设备进行密钥协商时,首先确定设备的合法性,从而加强了密钥协商过程的安全性。在第十二实施例中,如图13所示,在上述图12所示的实施例基础上,所述利用设备私钥对所述第一随机数进行加密得到签名数据的步骤之后,还包括:步骤S22、所述设备生成第三随机数,通过云服务器公钥加密所述第三随机数得到第一密文数据,并根据所述第一密文数据、所述设备公钥以及所述签名数据生成所述密钥协商请求报文发送至所述云服务器,以供所述云服务器根据所述密钥协商请求报文获取第一密文数据,并通过云服务器私钥解密所述第一密文数据,得到并保存第三随机数;步骤S23、所述设备在接收到所述第二密文数据时,利用所述设备私钥解密所述第二密文数据得到并保存第四随机数,并根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥,其中,所述云服务器在得到并保存所述第三随机数时,生成所述第四随机数,并利用所述设备公钥对所述第四随机数进行加密得到第二密文数据,将所述第二密文数据返回至所述设备。本实施例中,云服务器与设备进行密钥协商。首先,云服务器根据设备发送的密钥协商请求报文获取第三随机数,其中,第三随机数为设备生成,设备通过云服务器公钥加密第三随机数得到第一密文数据,并根据第一密文数据生成密钥协商请求报文发送至云服务器。然后,云服务器生成第四随机数,并利用设备公钥对第四随机数进行加密得到第二密文数据,并将第二密文数据返回至设备,以供设备利用设备私钥解密第二密文数据以获取第四随机数。这样,云服务器与设备各自拥有第三随机数以及第四随机数,并根据第四随机数以及第三随机数生成服务器与设备之间的会话密钥。优选地,根据第四随机数以及第三随机数生成会话密钥的步骤可以是:将第四随机数与第三随机数进行拼接,将拼接结果作为会话密钥。当然,根据第四随机数以及第三随机数生成会话密钥也可以有其它方式,本发明不做具体限定。需要说明的是,第三随机数以及第四随机数也可以是密钥。比如设备生成设备公钥以及设备私钥,云服务器生成设备私钥以及设备公钥,设备接收云服务器发送的云服务器公钥,并使用设备私钥通过预设算法对云服务器公钥计算得到第一会话密钥,同理,云服务器接收设备发送的设备公钥,使用云服务器私钥通过预设算法对设备公钥计算得到第二会话密钥,将第一会话密钥以及第二会话密钥作为云服务器与设备之间的会话密钥。需要说明的是,预设算法可以是ECDH算法、ECC算法、RSA算法、ECDSA算法等,本发明不做具体限定。在第十二实施例中,云服务器获取第三随机数后,生成第四随机数,并对第四随机数进行加密得到第二密文数据,将第二密文数据返回至设备,以供设备获取第四随机数,并根据第四随机数以及第三随机数生成云服务器与设备之间的会话密钥。这样,实现云服务器与设备之间的密钥协商。在第十三实施例中,如图14所示,在上述图12至图13任一项所示的实施例基础上,所述根据所述第一密文数据、所述设备公钥以及所述签名数据生成所述密钥协商请求报文发送至所述云服务器的步骤之后,还包括:步骤S24、所述设备在接收到所述第二密文数据以及第一密钥校验值时,利用所述设备私钥解密所述第二密文数据得到所述第四随机数,并根据预设算法对所述第四随机数加密生成第二密钥校验值,在所述第二密钥校验值与所述第一密钥校验值一致时,则保存所述第四随机数,并根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥,其中,所述云服务器根据所述预设算法对所述第四随机数加密生成所述第一密钥校验值,并将所述第二密文数据以及所述第一密钥校验值返回至所述设备。本实施例中,云服务器与设备进行密钥协商。首先,云服务器根据设备发送的密钥协商请求报文获取第三随机数,其中,第三随机数为设备生成,设备通过云服务器公钥加密第三随机数得到第一密文数据,并根据第一密文数据生成密钥协商请求报文发送至云服务器。然后,云服务器生成第四随机数,根据预设算法对第四随机数与第三随机数的拼接结果进行加密生成第一密钥校验值,并且,云服务器利用设备公钥对第四随机数进行加密得到第二密文数据。云服务器将第二密文数据以及第一密钥校验值返回至设备,以供设备利用设备私钥解密第二密文数据以获取第四随机数,并根据预设算法对第四随机数与第三随机数的拼接结果加密得到第二密钥校验值,在第二密钥校验值与第一密钥校验值一致时,保存第四随机数,这样,云服务器与设备各自拥有第三随机数以及第四随机数,并根据第四随机数以及第三随机数生成云服务器与设备之间的会话密钥。优选地,根据第四随机数以及第三随机数生成会话密钥的步骤可以是:将第四随机数与第三随机数进行拼接,将拼接结果作为会话密钥。当然,根据第四随机数以及第三随机数生成会话密钥也可以有其它方式,本发明不做具体限定。需要说明的是,第一密钥校验值以及第二密钥校验值用于校验会话密钥。以第一密钥校验值为例,根据预设算法对第四随机数与第三随机数的拼接结果进行加密生成第一密钥校验值的步骤可以是:根据第四随机数与第三随机数的拼接结果对预定字节进行加密,得到加密结果,并将加密结果的预设字节作为第一密钥校验值。需要说明的是,会话密钥也可以利用其它方式进行校验,本发明不做具体限定。比如,云服务器根据SHA256算法对第四随机数与第三随机数的拼接结果进行运算得到第一摘要信息,设备根据SHA256算法对第四随机数与第三随机数的拼接结果进行运算得到第二摘要信息,在第二摘要信息与第一摘要信息一致时,则设备保存第四随机数,并根据第四随机数以及第三随机数生成云服务器与设备之间的会话密钥。需要说明的是,第三随机数以及第四随机数也可以是密钥。比如设备生成设备公钥以及设备私钥,云服务器生成设备私钥以及设备公钥,设备接收云服务器发送的云服务器公钥,并使用设备私钥通过预设算法对云服务器公钥计算得到第一会话密钥,同理,云服务器接收设备发送的设备公钥,使用云服务器私钥通过预设算法对设备公钥计算得到第二会话密钥,将第一会话密钥以及第二会话密钥作为云服务器与设备之间的会话密钥。需要说明的是,预设算法可以是ECDH算法、ECC算法、RSA算法、ECDSA算法等,本发明不做具体限定。在第十三实施例中,云服务器获取第三随机数后,生成第四随机数,并对第四随机数进行加密得到第二密文数据,根据预设算法对第四随机数加密生成第一密钥校验值,并将第二密文数据以及第一密钥校验值发送至设备,以供设备通过第一密钥校验值进行校验,在校验通过时,根据第四随机数以及第三随机数生成会话密钥。这样,提高了云服务器与设备之间会话密钥的安全性。在第十四实施例中,如图15所示,在上述图12至图14任一项所示的实施例基础上,所述根据预设算法对所述第四随机数加密生成第二密钥校验值的步骤包括:步骤S241、根据所述第四随机数以及所述第三随机数对预定字节进行加密,得到加密结果;步骤S242、将所述加密结果的预设字节作为所述第二密钥校验值。本实施例中,第二密钥校验值用于校验会话密钥。根据预设算法对第四随机数与第三随机数的拼接结果进行加密生成第二密钥校验值的步骤可以是:根据第四随机数与第三随机数的拼接结果对预定字节进行加密,得到加密结果,并将加密结果的预设字节作为第二密钥校验值。需要说明的是,预定字节可以是16字节,预设字节可以是前三字节。在第十四实施例中,根据第四随机数以及第三随机数对预定字节进行加密,得到加密结果,并将加密结果的预设字节作为第一密钥校验值。这样,提高了云服务器与设备之间会话密钥的安全性。在第十五实施例中,如图16所示,在上述图12至图15任一项所示的实施例基础上,所述根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥的步骤之后,还包括:步骤S25、所述设备利用所述会话密钥对预设字段进行加密,得到密钥协商确认信息;步骤S26、将所述密钥协商确认信息发送至所述云服务器,以供所述云服务器在接收到所述密钥协商确认信息时,利用所述会话密钥解密所述密钥协商确认信息得到解密结果,在所述解密结果中包含所述预设字段时,则发送密钥协商确认报文至所述设备。本实施例中,设备在接收到第二密文数据以及第一密钥校验值时,利用设备私钥解密第二密文数据以获取第四随机数,并根据预设算法对第四随机数与第三随机数的拼接结果加密得到第二密钥校验值,在第二密钥校验值与第一密钥校验值一致时,保存第四随机数,这样,云服务器与设备各自拥有第三随机数以及第四随机数,并根据第四随机数以及第三随机数生成云服务器与设备之间的会话密钥。设备利用会话密钥对预设字段进行加密,或者设备利用会话密钥对预设字段和随机数进行加密,得到密钥协商确认信息,并将密钥协商确认信息发送至云服务器,以供云服务器在接收到密钥协商确认信息时,利用会话密钥解密密钥协商确认信息得到解密结果,在解密结果中包含预设字段时,则发送密钥协商确认报文至设备。其中,预设字段可以是“OK”等字符。在解密结果中未包含预设字段时,则返回错误码至设备。在第十五实施例中,云服务器在接收到设备返回的密钥协商确认信息时,解密密钥协商确认信息得到解密结果,并在解密结果中包含预设字段时,则发送密钥协商确认报文至设备。这样,实现云服务器与设备之间的密钥协商。在第十六实施例中,如图17所示,在上述图12至图16任一项所示的实施例基础上,所述根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥的步骤包括:步骤S243、将所述第四随机数与所述第三随机数进行拼接,得到拼接结果;步骤S244、将所述拼接结果作为所述云服务器与所述设备之间的会话密钥。本实施例中,根据第四随机数以及第三随机数生成会话密钥的步骤可以是:将第四随机数与第三随机数进行拼接,将拼接结果作为会话密钥。当然,根据第四随机数以及第三随机数生成会话密钥也可以有其它方式,本发明不做具体限定。需要说明的是,第三随机数以及第四随机数也可以是密钥。比如设备生成设备公钥以及设备私钥,云服务器生成设备私钥以及设备公钥,设备接收云服务器发送的云服务器公钥,并使用设备私钥通过预设算法对云服务器公钥计算得到第一会话密钥,同理,云服务器接收设备发送的设备公钥,使用云服务器私钥通过预设算法对设备公钥计算得到第二会话密钥,将第一会话密钥以及第二会话密钥作为云服务器与设备之间的会话密钥。需要说明的是,预设算法可以是ECDH算法、ECC算法、RSA算法、ECDSA算法等,本发明不做具体限定。在第十六实施例中,将第四随机数与第三随机数进行拼接,并将拼接结果作为云服务器与设备之间的会话密钥,这样,保障了云服务器与设备之间的安全通信。本发明还提出一种云服务器,所述云服务器包括存储器、处理器及存储在存储器上并可在处理器上运行的密钥协商程序,所述处理器执行如上述云服务器为执行主体下的所述密钥协商方法的步骤。此外,本发明还提出一种设备,所述设备包括存储器、处理器及存储在存储器上并可在处理器上运行的密钥协商程序,所述处理器执行如上述设备为执行主体下的所述密钥协商方法的步骤。此外,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质包括密钥协商程序,所述密钥协商程序被处理器执行时实现如以上实施例所述的密钥协商方法的步骤。此外,本发明还提出一种密钥协商系统,本发明还提出一种密钥协商系统,所述密钥协商系统包括上述云服务器,以及上述设备。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质如ROMRAM、磁碟、光盘中,包括若干指令用以使得一台终端设备可以是电视机,手机,计算机,服务器,空调器,或者网络设备等执行本发明各个实施例所述的方法。以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

权利要求:1.一种密钥协商方法,其特征在于,所述密钥协商方法包括以下步骤:云服务器在接收到设备发送的随机数请求时,则生成第一随机数,并将所述第一随机数返回至所述设备,其中,所述设备在接收到所述第一随机数时,利用设备私钥对所述第一随机数进行加密得到签名数据,并根据所述签名数据以及设备公钥生成密钥协商请求报文并发送至所述云服务器;所述云服务器在接收到所述密钥协商请求报文时,根据所述密钥协商请求报文获取所述设备公钥以及所述签名数据;通过所述设备公钥对所述签名数据进行解密得到第二随机数;在所述第二随机数与所述第一随机数一致时,则所述云服务器与所述设备进行密钥协商。2.如权利要求1所述的密钥协商方法,其特征在于,所述根据所述密钥协商请求报文获取所述设备公钥的步骤包括:所述云服务器从所述密钥协商请求报文中提取设备公钥证书以及根公钥索引;根据所述根公钥索引从所述设备公钥证书中提取所述设备公钥。3.如权利要求2所述的密钥协商方法,其特征在于,所述根据所述根公钥索引从所述设备公钥证书中提取所述设备公钥的步骤之前,还包括:对所述设备公钥证书中的预设信息进行哈希运算,得到第二哈希值,所述预设信息包括证书格式、证书序列号、哈希算法标识、设备公钥算法标识以及所述设备公钥中的至少一个;在所述第二哈希值与所述设备公钥证书中的第一哈希值一致时,则执行所述根据所述根公钥索引从所述设备公钥证书中提取所述设备公钥的步骤。4.如权利要求3所述的密钥协商方法,其特征在于,所述对所述设备公钥证书中的预设信息进行哈希运算的步骤之前,还包括:利用预设服务器公钥解密所述设备公钥证书中的签名结果,得到第三哈希值,其中,所述签名结果为所述云服务器利用预设服务器私钥对所述第一哈希值进行加密得到;在所述第三哈希值与所述第一哈希值一致时,执行所述对所述设备公钥证书中的预设信息进行哈希运算的步骤。5.如权利要求4所述的密钥协商方法,其特征在于,所述云服务器与所述设备进行密钥协商的步骤包括:所述云服务器根据所述密钥协商请求报文获取第一密文数据,并通过云服务器私钥解密所述第一密文数据,得到并保存第三随机数,其中,所述设备在接收到所述第一随机数后,生成所述第三随机数,通过云服务器公钥加密所述第三随机数得到所述第一密文数据,并根据所述第一密文数据、所述设备公钥以及所述签名数据生成所述密钥协商请求报文发送至所述云服务器;所述云服务器生成第四随机数,并利用所述设备公钥对所述第四随机数进行加密得到第二密文数据;将所述第二密文数据返回至所述设备,以供所述设备在接收到所述第二密文数据时,利用所述设备私钥解密所述第二密文数据得到并保存所述第四随机数;根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥。6.如权利要求5所述的密钥协商方法,其特征在于,所述利用所述设备公钥对所述第四随机数进行加密得到第二密文数据的步骤之后,还包括:根据预设算法对所述第四随机数加密生成第一密钥校验值;将所述第二密文数据以及所述第一密钥校验值返回至所述设备,以供所述设备在接收到所述第二密文数据以及所述第一密钥校验值时,利用所述设备私钥解密所述第二密文数据得到所述第四随机数,并根据所述预设算法对所述第四随机数加密生成第二密钥校验值,在所述第二密钥校验值与所述第一密钥校验值一致时,则保存所述第四随机数;根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥。7.如权利要求6所述的密钥协商方法,其特征在于,所述根据预设算法对所述第四随机数加密生成第一密钥校验值的步骤包括:根据所述第四随机数以及所述第三随机数对预定字节进行加密,得到加密结果;将所述加密结果的预设字节作为所述第一密钥校验值。8.如权利要求6所述的密钥协商方法,其特征在于,所述将所述第二密文数据以及所述第一密钥校验值返回至所述设备的步骤之后,还包括:所述云服务器在接收到所述设备返回的密钥协商确认信息时,利用所述会话密钥解密所述密钥协商确认信息得到解密结果;在所述解密结果中包含预设字段时,则发送密钥协商确认报文至所述设备。9.如权利要求6所述的密钥协商方法,其特征在于,所述根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥的步骤包括:将所述第四随机数与所述第三随机数进行拼接,得到拼接结果;将所述拼接结果作为所述云服务器与所述设备之间的会话密钥。10.如权利要求1所述的密钥协商方法,其特征在于,所述通过所述设备公钥对所述签名数据进行解密得到第二随机数的步骤之后,还包括:在所述第二随机数与所述第一随机数不一致时,则断开所述云服务器与所述设备之间的连接。11.一种密钥协商方法,其特征在于,所述密钥协商方法包括以下步骤:设备向云服务器发起随机数请求,并在接收到所述云服务器返回的第一随机数时,利用设备私钥对所述第一随机数进行加密得到签名数据;将所述签名数据以及设备公钥生成密钥协商请求报文发送至所述云服务器,其中,所述云服务器在接收到所述密钥协商请求报文时,根据所述密钥协商请求报文获取所述设备公钥以及所述签名数据,通过所述设备公钥对所述签名数据进行解密得到第二随机数,并在所述第二随机数与所述第一随机数一致时,则所述云服务器与所述设备进行密钥协商。12.如权利要求11所述的密钥协商方法,其特征在于,所述利用设备私钥对所述第一随机数进行加密得到签名数据的步骤之后,还包括:所述设备生成第三随机数,通过云服务器公钥加密所述第三随机数得到第一密文数据,并根据所述第一密文数据、所述设备公钥以及所述签名数据生成所述密钥协商请求报文发送至所述云服务器,以供所述云服务器根据所述密钥协商请求报文获取第一密文数据,并通过云服务器私钥解密所述第一密文数据,得到并保存第三随机数;所述设备在接收到所述第二密文数据时,利用所述设备私钥解密所述第二密文数据得到并保存第四随机数,并根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥,其中,所述云服务器在得到并保存所述第三随机数时,生成所述第四随机数,并利用所述设备公钥对所述第四随机数进行加密得到第二密文数据,将所述第二密文数据返回至所述设备。13.如权利要求12所述的密钥协商方法,其特征在于,所述根据所述第一密文数据、所述设备公钥以及所述签名数据生成所述密钥协商请求报文发送至所述云服务器的步骤之后,还包括:所述设备在接收到所述第二密文数据以及第一密钥校验值时,利用所述设备私钥解密所述第二密文数据得到所述第四随机数,并根据预设算法对所述第四随机数加密生成第二密钥校验值,在所述第二密钥校验值与所述第一密钥校验值一致时,则保存所述第四随机数,并根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥,其中,所述云服务器根据所述预设算法对所述第四随机数加密生成所述第一密钥校验值,并将所述第二密文数据以及所述第一密钥校验值返回至所述设备。14.如权利要求13所述的密钥协商方法,其特征在于,所述根据预设算法对所述第四随机数加密生成第二密钥校验值的步骤包括:根据所述第四随机数以及所述第三随机数对预定字节进行加密,得到加密结果;将所述加密结果的预设字节作为所述第二密钥校验值。15.如权利要求13所述的密钥协商方法,其特征在于,所述根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥的步骤之后,还包括:所述设备利用所述会话密钥对预设字段进行加密,得到密钥协商确认信息;将所述密钥协商确认信息发送至所述云服务器,以供所述云服务器在接收到所述密钥协商确认信息时,利用所述会话密钥解密所述密钥协商确认信息得到解密结果,在所述解密结果中包含所述预设字段时,则发送密钥协商确认报文至所述设备。16.如权利要求13所述的密钥协商方法,其特征在于,所述根据所述第四随机数以及所述第三随机数生成所述云服务器与所述设备之间的会话密钥的步骤包括:将所述第四随机数与所述第三随机数进行拼接,得到拼接结果;将所述拼接结果作为所述云服务器与所述设备之间的会话密钥。17.一种云服务器,其特征在于,所述云服务器包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的密钥协商程序,所述密钥协商程序被所述处理器执行时实现如权利要求1至10中任一项所述的密钥协商方法的步骤。18.一种设备,其特征在于,所述设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的密钥协商程序,所述密钥协商程序被所述处理器执行时实现如权利要求11至16中任一项所述的密钥协商方法的步骤。19.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有密钥协商程序,所述密钥协商程序被处理器执行时实现如权利要求1至16中任一项所述的密钥协商方法的步骤。20.一种密钥协商系统,其特征在于,所述密钥协商系统包括如权利要求17中所述的云服务器,以及如权利要求18中所述的设备。

百度查询: 美的集团股份有限公司 密钥协商方法、云服务器、设备、存储介质以及系统

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。