有效
密钥获取方法、装置、设备及可读存储介质
闫天瑜、张喆、王喆、王慧、赵健、顿中强
北京智芯微电子科技有限公司
摘要
本公开涉及信息安全技术领域,具体涉及一种密钥获取方法、装置、设备及可读存储介质,所述方法包括:获取第一构造信息,并发送所述第一构造信息;接收第二构造信息;获取第二信息认证码,并发送所述第二信息认证码;接收所述服务器发送的包括预备主密钥、第二状态标志和第三信息认证码的第三构造信息;将所述第二预共享密钥、所述预备主密钥、所述第一随机数和所述第二随机数代入第一单向函数进行计算,以获取加密密钥。该方案在终端设备和服务器协商密钥的过程中,通信双方未使用非对称加密方法,仅通过采用单向函数处理的信息进行信息交互以获取加密密钥,如此无需多次使用公钥加密和私钥解密,极大减少了消耗的计算资源。
1.一种密钥获取方法,其特征在于,所述方法应用于终端设备,所述方法包括:获取包括设备标识、第一随机数和目标加密算法标识的第一构造信息,并发送所述第一构造信息,所述设备标识用于指示所述终端设备,所述第一随机数由所述终端设备生成;接收服务器发送的包括第一状态标志、第二随机数和第一信息认证码的第二构造信息;响应于根据所述第一状态标志确定所述服务器存储有与所述设备标识匹配的第一预共享密钥,且根据所述第一信息认证码确定所述第一预共享密钥与预设的第二预共享密钥匹配,将所述第二预共享密钥以及所述第二随机数代入目标信息认证码函数进行计算,以获取第二信息认证码,并发送所述第二信息认证码;接收所述服务器发送的包括预备主密钥、第二状态标志和第三信息认证码的第三构造信息;响应于根据所述第二状态标志确定所述服务器与所述终端设备已完成信息发送且开始计算加密密钥,且根据所述第三信息认证码确定所述第三构造信息为身份合法的服务器发送的,将所述第二预共享密钥、所述预备主密钥、所述第一随机数和所述第二随机数代入第一单向函数进行计算,以获取加密密钥。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一信息认证码确定所述第一预共享密钥与预设的第二预共享密钥匹配,包括:将所述第二预共享密钥、所述第一状态标志、所述第一随机数和所述第二随机数代入第二单向函数进行计算,得到第四信息认证码;响应于所述第四信息认证码与所述第一信息认证码相同,确定所述第一预共享密钥与所述第二预共享密钥匹配。
3.根据权利要求1所述的方法,其特征在于,所述根据所述第三信息认证码确定所述第三构造信息为身份合法的服务器发送的,包括:将所述第二预共享密钥、所述第二状态标志和所述预备主密钥代入第三单向函数进行计算,得到第五信息认证码;响应于所述第五信息认证码与所述第三信息认证码相同,确定所述第三构造信息为身份合法的服务器发送的。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述将所述第二预共享密钥、所述预备主密钥、所述第一随机数和所述第二随机数代入第一单向函数进行计算,以获取加密密钥之后,所述方法还包括:将所述第二预共享密钥和所述加密密钥代入第四单向函数进行计算,以获取初始向量。
5.根据权利要求4所述的方法,其特征在于,所述第一构造信息还包括目标签名算法标识;所述将所述第二预共享密钥和所述加密密钥代入第四单向函数进行计算,以获取初始向量之后,所述方法还包括:将所述第二预共享密钥和所述初始向量代入第五单向函数进行计算,以获取与所述目标签名算法标识对应的签名密钥。
6.一种密码参数获取方法,其特征在于,所述方法应用于服务器,所述方法包括:接收终端设备发送的包括设备标识、第一随机数和目标加密算法标识的第一构造信息,所述设备标识用于指示所述终端设备,所述第一随机数由所述终端设备生成;根据所述第一构造信息,获取与所述设备标识匹配的第一预共享密钥,并获取第一状态标志;获取包括所述第一状态标志、第二随机数和第一信息认证码的第二构造信息,并发送所述第二构造信息;接收所述终端设备发送的第二信息认证码,所述第二信息认证码为所述终端设备确定包括与所述第一预共享密钥匹配的第二预共享密钥时发送的;响应于根据所述第二信息认证码确定所述终端设备包括与所述第一预共享密钥匹配的所述第二预共享密钥,获取包括预备主密钥、第二状态标志和第三信息认证码的第三构造信息,发送所述第三构造信息,所述第二状态标志用于指示所述服务器与所述终端设备完成信息发送且开始计算加密密钥;将所述第一预共享密钥、所述预备主密钥、所述第一随机数和所述第二随机数代入第一单向函数进行计算,以获取加密密钥。
7.根据权利要求6所述的方法,其特征在于,所述获取包括所述第一状态标志、第二随机数和第一信息认证码的第二构造信息之前,所述方法还包括:将所述第一预共享密钥、所述第一状态标志、所述第一随机数和所述第二随机数代入第二单向函数进行计算,得到所述第一信息认证码。
8.根据权利要求6所述的方法,其特征在于,所述获取包括预备主密钥、第二状态标志和第三信息认证码的第三构造信息之前,所述方法还包括:获取所述预备主密钥和所述第二状态标志;将所述第一预共享密钥、所述第二状态标志和所述预备主密钥代入第三单向函数进行计算,得到所述第三信息认证码。
9.根据权利要求6所述的方法,其特征在于,所述根据所述第二信息认证码确定所述终端设备包括与所述第一预共享密钥匹配的所述第二预共享密钥,包括:将所述第一预共享密钥和所述第二随机数代入目标信息认证码函数进行计算,以获取目标信息认证码;响应于所述目标信息认证码与所述第二信息认证码相同,确定所述终端设备包括与所述第一预共享密钥匹配的所述第二预共享密钥。
10.根据权利要求6至9中任一项所述的方法,其特征在于,所述将所述第一预共享密钥、所述预备主密钥、所述第一随机数和所述第二随机数代入第一单向函数进行计算,以获取加密密钥之后,所述方法还包括:将所述第一预共享密钥和所述加密密钥代入第四单向函数进行计算,以获取初始向量。
11.根据权利要求10所述的方法,其特征在于,所述第一构造信息还包括目标签名算法标识;所述将所述第一预共享密钥和所述加密密钥代入第四单向函数进行计算,以获取初始向量之后,所述方法还包括:将所述第一预共享密钥和所述初始向量代入第五单向函数进行计算,以获取与目标签名算法标识对应的签名密钥。
12.一种密钥获取系统,其特征在于,所述系统包括终端设备和服务器,所述终端设备用于执行权利要求1-5中任一项所述的方法,所述服务器用于执行权利要求6-11中任一项所述的方法。
13.一种密钥获取装置,其特征在于,所述装置应用于终端设备,所述密钥获取装置包括:第一获取模块,被配置为获取包括设备标识、第一随机数和目标加密算法标识的第一构造信息;第一发送模块,被配置为发送所述第一构造信息,所述设备标识用于指示所述终端设备,所述第一随机数由所述终端设备生成;第一接收模块,被配置为接收服务器发送的包括第一状态标志、第二随机数和第一信息认证码的第二构造信息;第二获取模块,被配置为响应于根据所述第一状态标志确定所述服务器存储有与所述设备标识匹配的第一预共享密钥,且根据所述第一信息认证码确定所述第一预共享密钥与预设的第二预共享密钥匹配,将所述第二预共享密钥以及所述第二随机数代入目标信息认证码函数进行计算,以获取第二信息认证码;第二发送模块,被配置为发送所述第二信息认证码;第二接收模块,被配置为接收所述服务器发送的包括预备主密钥、第二状态标志和第三信息认证码的第三构造信息;第三获取模块,被配置为响应于根据所述第二状态标志确定所述服务器与所述终端设备已完成信息发送且开始计算加密密钥,且根据所述第三信息认证码确定所述第三构造信息为身份合法的服务器发送的,将所述第二预共享密钥、所述预备主密钥、所述第一随机数和所述第二随机数代入第一单向函数进行计算,以获取加密密钥。
14.根据权利要求13所述的装置,其特征在于,所述密钥获取装置还包括:第一确定模块,被配置为将所述第二预共享密钥、所述第一状态标志、所述第一随机数和所述第二随机数代入第二单向函数进行计算,得到第四信息认证码;响应于所述第四信息认证码与所述第一信息认证码相同,确定所述第一预共享密钥与所述第二预共享密钥匹配。
15.根据权利要求13所述的装置,其特征在于,所述密钥获取装置还包括:第二确定模块,被配置为将所述第二预共享密钥、所述第二状态标志和所述预备主密钥代入第三单向函数进行计算,得到第五信息认证码;响应于所述第五信息认证码与所述第三信息认证码相同,确定所述第三构造信息为身份合法的服务器发送的。
16.根据权利要求13至15中任一项所述的装置,其特征在于,所述密钥获取装置还包括:第四获取模块,被配置为将所述第二预共享密钥和所述加密密钥代入第四单向函数进行计算,以获取初始向量。
17.根据权利要求16所述的装置,其特征在于,所述第一构造信息还包括目标签名算法标识;所述密钥获取装置还包括:第四获取模块,被配置为将所述第二预共享密钥和所述初始向量代入第五单向函数进行计算,以获取与所述目标签名算法标识对应的签名密钥。
18.一种密钥获取装置,其特征在于,所述装置应用于服务器,所述密钥获取装置包括:第一信息接收模块,被配置为接收终端设备发送的包括设备标识、第一随机数和目标加密算法标识的第一构造信息,所述设备标识用于指示所述终端设备,所述第一随机数由所述终端设备生成;第一信息获取模块,被配置为根据所述第一构造信息,获取与所述设备标识匹配的第一预共享密钥,并获取第一状态标志;第二信息获取模块,被配置为获取包括所述第一状态标志、第二随机数和第一信息认证码的第二构造信息;第一信息发送模块,被配置为发送所述第二构造信息;第二信息接收模块,被配置为接收所述终端设备发送的第二信息认证码,所述第二信息认证码为所述终端设备确定包括与所述第一预共享密钥匹配的第二预共享密钥时发送的;第三信息获取模块,被配置为响应于根据所述第二信息认证码确定所述终端设备包括与所述第一预共享密钥匹配的所述第二预共享密钥,获取包括预备主密钥、第二状态标志和第三信息认证码的第三构造信息,所述第二状态标志用于指示所述服务器与所述终端设备完成信息发送且开始计算加密密钥;第二信息发送模块,被配置为发送所述第三构造信息;第四信息获取模块,被配置为将所述第一预共享密钥、所述预备主密钥、所述第一随机数和所述第二随机数代入第一单向函数进行计算,以获取加密密钥。
19.根据权利要求18所述的装置,其特征在于,所述密钥获取装置还包括:第五信息获取模块,被配置为将所述第一预共享密钥、所述第一状态标志、所述第一随机数和所述第二随机数代入第二单向函数进行计算,得到所述第一信息认证码。
20.根据权利要求18所述的装置,其特征在于,所述密钥获取装置还包括:第六信息获取模块,被配置为获取所述预备主密钥和所述第二状态标志;第一信息确定模块,被配置为将所述第一预共享密钥、所述第二状态标志和所述预备主密钥代入第三单向函数进行计算,得到所述第三信息认证码。
21.根据权利要求18所述的装置,其特征在于,所述密钥获取装置还包括:第七信息获取模块,被配置为将所述第一预共享密钥和所述第二随机数代入目标信息认证码函数进行计算,以获取目标信息认证码;第二信息确定模块,被配置为响应于所述目标信息认证码与所述第二信息认证码相同,确定所述终端设备包括与所述第一预共享密钥匹配的所述第二预共享密钥。
22.根据权利要求18至21中任一项所述的装置,其特征在于,所述密钥获取装置还包括:第八信息获取模块,被配置为将所述第一预共享密钥和所述加密密钥代入第四单向函数进行计算,以获取初始向量。
23.根据权利要求22所述的装置,其特征在于,所述第一构造信息还包括目标签名算法标识;所述密钥获取装置还包括:第九信息获取模块,被配置为将所述第一预共享密钥和所述初始向量代入第五单向函数进行计算,以获取与目标签名算法标识对应的签名密钥。
24.一种电子设备,其特征在于,包括存储器和处理器;其中,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行以实现权利要求1-11任一项所述的方法步骤。
25.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该计算机指令被处理器执行时实现权利要求1-11任一项所述的方法步骤。



