1.一种密钥协商方法,其特征在于,包括以下步骤:
生成第一随机数,应用云端服务器的第一公钥对所述第一随机数和终端设备的标识信息进行加密生成第一密文;
向所述云端服务器发送密钥协商请求,其中,所述密钥协商请求包括:所述第一密文和所述终端设备的第二公钥,以便所述云端服务器应用第一私钥解密所述第一密文后,根据所述标识信息和所述第二公钥验证所述终端设备的合法性;
接收所述云端服务器验证所述终端设备合法后,应用所述第二公钥对会话密钥加密后发送的包括第二密文的密钥协商响应,其中,所述会话密钥包括所述第一随机数;其中,所述云端服务器生成一个第二随机数,将所述第一随机数和所述第二随机数进行拼接,得到所述会话密钥,并使用所述第二公钥对所述会话密钥进行加密操作得到所述第二密文;
应用第二私钥对所述第二密文进行解密,如果获得所述第一随机数,则应用所述会话密钥对预先与所述云端服务器协商的第一字符串进行加密,向所述云端服务器发送包括第三密文的密钥确认响应,以供所述云端服务器应用所述会话密钥对所述第三密文进行解密处理,并根据解密结果中是否包含所述第一字符串确定密钥协商是否成功;
其中,所述应用所述会话密钥对预先与所述云端服务器协商的第一字符串进行加密,包括:按照预设周期通过随机数发生器生成预设长度的随机数;将所述随机数与所述第一字符串进行拼接处理生成第二字符串;应用所述会话密钥对所述第二字符串进行加密,向所述云端服务器发送包括所述第三密文的密钥确认响应,以供所述云端服务器应用所述会话密钥对所述第三密文进行解密处理,并根据解密结果中是否包含所述第一字符串确定密钥协商是否成功。
2.如权利要求1所述的方法,其特征在于,所述标识信息为所述终端设备的mac地址;
所述密钥协商请求中还包括:所述第一密文的哈希值,以便所述云端服务器应用所述第一私钥解密所述第一密文后,根据所述mac地址、所述哈希值和所述第二公钥验证所述终端设备的合法性。
3.一种密钥协商方法,其特征在于,包括以下步骤:
接收终端设备发送的密钥协商请求,其中,所述密钥协商请求包括:第一密文和终端设备的第二公钥;
应用云端服务器的第一私钥解密所述第一密文获取第一随机数和终端设备的标识信息,根据所述标识信息和所述第二公钥查询预存的许可数据库验证所述终端设备的合法性;
如果所述许可数据库包括所述标识信息和所述第二公钥,则应用所述第二公钥对会话密钥加密,向所述终端设备发送包括第二密文的密钥协商响应,其中,所述会话密钥包括所述第一随机数;
接收所述终端设备应用第二私钥解密所述第二密文获取所述第一随机数后发送的包括第三密文的密钥确认响应,应用所述会话密钥解密所述第三密文获取解密结果;
检测所述解密结果中是否包含与所述终端设备预先协商的第一字符串确定密钥协商是否成功;其中,所述应用所述会话密钥对预先与所述云端服务器协商的第一字符串进行加密,包括:按照预设周期通过随机数发生器生成预设长度的随机数;将所述随机数与所述第一字符串进行拼接处理生成第二字符串;应用所述会话密钥对所述第二字符串进行加密,向所述云端服务器发送包括所述第三密文的密钥确认响应,以供所述云端服务器应用所述会话密钥对所述第三密文进行解密处理,并根据解密结果中是否包含所述第一字符串确定密钥协商是否成功;
其中,所述应用所述第二公钥对会话密钥加密,包括:生成第二随机数,将所述第二随机数与所述第一随机数进行拼接生成会话密钥;应用所述第二公钥对所述会话密钥加密。
4.一种密钥协商装置,其特征在于,包括:
加密模块,用于生成第一随机数,应用云端服务器的第一公钥对所述第一随机数和终端设备的标识信息进行加密生成第一密文;
发送模块,用于向所述云端服务器发送密钥协商请求,其中,所述密钥协商请求包括:所述第一密文和所述终端设备的第二公钥,以便所述云端服务器应用第一私钥解密所述第一密文后,根据所述标识信息和所述第二公钥验证所述终端设备的合法性;
响应模块,用于接收所述云端服务器验证所述终端设备合法后,应用所述第二公钥对会话密钥加密后发送的包括第二密文的密钥协商响应,其中,所述会话密钥包括所述第一随机数;其中,所述云端服务器生成一个第二随机数,将所述第一随机数和所述第二随机数进行拼接,得到所述会话密钥,并使用所述第二公钥对所述会话密钥进行加密操作得到所述第二密文;
解密模块,用于应用第二私钥对所述第二密文进行解密,在获得所述第一随机数时,应用所述会话密钥对预先与所述云端服务器协商的第一字符串进行加密,向所述云端服务器发送包括第三密文的密钥确认响应,以供所述云端服务器应用所述会话密钥对所述第三密文进行解密处理,并根据解密结果中是否包含所述第一字符串确定密钥协商是否成功;
所述解密模块用于:按照预设周期通过随机数发生器生成预设长度的随机数;将所述随机数与所述第一字符串进行拼接处理生成第二字符串;应用所述会话密钥对所述第二字符串进行加密,向所述云端服务器发送包括所述第三密文的密钥确认响应,以供所述云端服务器应用所述会话密钥对所述第三密文进行解密处理,并根据解密结果中是否包含所述第一字符串确定密钥协商是否成功。
5.如权利要求4所述的装置,其特征在于,所述标识信息为所述终端设备的mac地址;
所述密钥协商请求中还包括:所述第一密文的哈希值,以便所述云端服务器应用所述第一私钥解密所述第一密文后,根据所述mac地址、所述哈希值和所述第二公钥验证所述终端设备的合法性。
6.一种密钥协商装置,其特征在于,包括:
接收模块,用于接收终端设备发送的密钥协商请求,其中,所述密钥协商请求包括:第一密文和终端设备的第二公钥;
查询模块,用于应用云端服务器的第一私钥解密所述第一密文获取第一随机数和终端设备的标识信息,根据所述标识信息和所述第二公钥查询预存的许可数据库验证所述终端设备的合法性;
第一处理模块,用于在所述许可数据库包括所述标识信息和所述第二公钥时,应用所述第二公钥对会话密钥加密,向所述终端设备发送包括第二密文的密钥协商响应,其中,所述会话密钥包括所述第一随机数;
第二处理模块,用于接收所述终端设备应用第二私钥解密所述第二密文获取所述第一随机数后发送的包括第三密文的密钥确认响应,应用所述会话密钥解密所述第三密文获取解密结果;
检测模块,用于检测所述解密结果中是否包含与所述终端设备预先协商的第一字符串确定密钥协商是否成功;其中,所述应用所述会话密钥对预先与所述云端服务器协商的第一字符串进行加密,包括:按照预设周期通过随机数发生器生成预设长度的随机数;将所述随机数与所述第一字符串进行拼接处理生成第二字符串;应用所述会话密钥对所述第二字符串进行加密,向所述云端服务器发送包括所述第三密文的密钥确认响应,以供所述云端服务器应用所述会话密钥对所述第三密文进行解密处理,并根据解密结果中是否包含所述第一字符串确定密钥协商是否成功;
其中,所述第一处理模块用于:
生成第二随机数,将所述第二随机数与所述第一随机数进行拼接生成会话密钥;
应用所述第二公钥对所述会话密钥加密。