密钥协商方法、终端及服务器的制造方法_3

文档序号:9648868阅读:来源:国知局
Dn)] 1.P)rn= e (P, P)r arn
(8)
[0102]其中,Veni是所述服务器验证值,Μ' 一是加密后的服务器公钥,Μ ρ?是服务器私钥,e是所述双线性映射。具体的,所述双线性映射可以是tate对或者weil对中的一个。而且,上述式(8)的推导过程利用了映射e的双线性。
[0103]S26,通过比对终端验证值与所述服务器验证值,判定密钥协商的准确性。
[0104]根据式(4)及式(8)的推导,所述终端验证值与所述服务器验证值的取值应当相同。因此,所述终端可以通过比对二者的取值,来判定上述密钥协商过程的准确性。
[0105]本实施例通过在服务器侧进行保密通信之前,运行密钥的即时计算及即时验证,使得在保密通信中需要的密钥能够实时生成。
[0106]第三实施例
[0107]本实施例提供了密钥协商方法的一种技术方案。在该技术方案中,所述密钥协商方法由终端侧及服务器侧配合执行。
[0108]参见图3,所述密钥协商方法包括:
[0109]S31,终端将终端标识码发送给服务器。
[0110]S32,所述服务器将密钥协商过程中使用的公开参数,以及服务器标识码发送给终端,其中,所述公开参数包括系统特征值。
[0111]S33,所述终端根据所述公开参数及所述终端标识码计算终端私钥,根据所述公开参数及服务器标识码计算服务器公钥,并将加密后的服务器公钥发送给所述服务器。
[0112]S34,所述服务器根据所述公开参数及所述服务器标识码计算服务器私钥,根据所述公开参数及终端标识码计算终端公钥,并将加密后的终端公钥发送给所述终端。
[0113]S35,所述终端通过双线性映射,根据所述加密后的终端公钥,以及所述终端伪随机码计算终端验证值,所述终端验证值等于对所述加密后的终端公钥及所述终端私钥进行双线性映射得到的映射值与所述终端伪随机码的乘积。
[0114]S36,所述服务器通过双线性映射,根据所述加密后的服务器公钥,以及所述服务器伪随机码计算服务器验证值,所述服务器验证值等于对所述加密后的服务器公钥及所述服务器私钥进行双线性映射得到的映射值与所述服务器伪随机码的乘积。
[0115]S37,所述终端通过比对所述终端验证值与所述服务器验证值,判定密钥协商的准确性。
[0116]S38,所述服务器通过比对所述终端验证值与所述服务器验证值,判定密钥协商的准确性。
[0117]本实施例通过在进行保密通信之前,在终端侧及服务器侧运行密钥的即时计算及即时验证,使得在保密通信中需要的密钥能够实时生成。
[0118]第四实施例
[0119]本实施例提供了终端的一种技术方案。参见图4,所述终端包括:第一发送模块41、第一获取模块42、第一密钥计算模块43、第一密钥获取模块44、第一验证值计算模块45以及第一验证模块46。
[0120]所述第一发送模块41用于将终端标识码发送给服务器。
[0121]所述第一获取模块42用于获取所述服务器发送的公开参数及服务器标识码,其中,所述公开参数包括系统特征值。
[0122]所述第一密钥计算模块43用于根据所述公开参数及所述终端标识码计算终端私钥,根据所述公开参数及服务器标识码计算服务器公钥,并将加密后的服务器公钥发送给所述服务器,其中,所述终端私钥是第二终端系数与所述系统特征值的乘积,所述服务器公钥是第一服务器系数与所述系统特征值的乘积,所述加密后的服务器公钥是终端伪随机码与所述服务器公钥的乘积,所述第二终端系数及所述第一服务器系数包括在所述公开参数中,或者可以通过所述公开参数、所述终端标识码、所述服务器标识码中的一个或数个计算得到,所述第二终端系数与第一终端系数的乘积是非零定值。
[0123]所述第一密钥获取模块44用于获取所述服务器发送的加密后的终端公钥,其中,终端公钥是所述第一终端系数与系统特征值的乘积,所述加密后的终端公钥是服务器伪随机码与所述终端公钥的乘积。
[0124]所述第一验证值计算模块45用于通过双线性映射,根据所述加密后的终端公钥,以及所述终端伪随机码计算终端验证值,所述终端验证值等于对所述加密后的终端公钥及所述终端私钥进行双线性映射得到的映射值与所述终端伪随机码的乘积。
[0125]所述第一验证模块46用于通过比对所述终端验证值与服务器验证值,判定密钥协商的准确性。
[0126]进一步的,所述公开参数包括:系统特征值P、系数基数s及哈希函数H。
[0127]进一步的,所述第一密钥计算模块42具体用于:
[0128]根据如下公式计算所述终端私钥;
[0129]Apri= [s+H(IDj] JXP
[0130]根据如下公式计算所述服务器公钥;
[0131]Mpub= [s+H(IDn)]XP
[0132]根据如下公式对所述服务器公钥加密;
[0133]M' pub= r aXMpub
[0134]将所述加密后的服务器公钥发送至所述服务器;
[0135]其中,s是所述系数基数,P是所述系统特征值,IDa是所述终端标识码,ID ?是所述服务器标识码,Η是所述哈希函数,Αρ?是所述终端私钥,M pub是所述服务器公钥,M' 一是所述加密后的服务器公钥,ra是所述终端伪随机码,而且,[s+H(IDa)] 1是所述第二终端系数,[s+H(IDj]是所述第一服务器系数。
[0136]第五实施例
[0137]本实施例提供了服务器的一种技术方案。参见图5,所述服务器包括:第二获取模块51、第二发送模块52、第二密钥获取模块53、第二密钥计算模块54、第二验证值计算模块55及第二验证模块56。
[0138]所述第二获取模块51用于获取终端发送的终端标识码。
[0139]所述第二发送模块52用于将密钥协商过程中使用的公开参数,以及服务器标识码发送给终端,其中,所述公开参数包括系统特征值。
[0140]所述第二密钥获取模块53用于获取所述终端发送的加密后的服务器公钥,其中,服务器公钥是第一服务器系数与所述系统特征值的乘积,所述加密后的服务器公钥是终端伪随机码与所述服务器公钥的乘积。
[0141]所述第二密钥计算模块54用于根据所述公开参数及所述服务器标识码计算服务器私钥,根据所述公开参数及终端标识码计算终端公钥,并将加密后的终端公钥发送给所述终端,其中,所述服务器私钥是所述第二服务器系数与所述系统特征值的乘积,所述终端公钥是所述第一终端系数与所述系统特征值的乘积,所述加密后的终端公钥是服务器伪随机码与所述终端公钥的乘积,所述第一终端系数及所述第二服务器系数包括在所述公开参数中,或者可以通过所述公开参数、终端标识码、服务器标识码中的一个或数个计算得到,所述第二服务器系数与第一服务器系数的乘积是非零定值。
[0142]所述第二验证值计算模块55用于通过双线性映射,根据所述加密后的服务器公钥,以及所述服务器伪随机码计算服务器验证值,所述服务器验证值等于对所述加密后的服务器公钥及所述服务器私钥进行双线性映射得到的映射值与所述服务器伪随机码的乘积。
[0143]所述第二验证模块56用于通过比对终端验证值与所述服务器验证值,判定密钥协商的准确性。
[0144]进一步的,所述公开参数包括:系统特征值P、系数基数s及哈希函数H。
[0145]进一步的,所述第二密钥计算模块52具体用于:
[0146]根据如下公式计算所述服务器私钥;
[0147]Mpri= [s+HdDj] 'XP
[0148]根据如下公式计算所述终端公钥;
[0149]Apub= [s+H(IDa)]XP
[0150]根据如下公式对所述终端公钥加密;
[0151]A' pub= r nXApub
[0152]将所述加密后的终端公钥发送至所述终端;
[0153]其中,s是所述系数基数,P是所述系统特征值,IDa是所述终端标识码,ID ?是所述服务器标识码,Η是所述哈希函数,是所述服务器伪随机码,Mp?是所述服务器私钥,Apub是所述终端公钥,A' pub是所述加密后的终端公钥,[s+HdDj] 1是所述第二服务器系数,[s+H(IDa)]是所述第一终端系数。
[0154]本领域普通技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个计算装置上,或者分布在多个计算装置所组成的网络上,可选地,他们可以用计算机装置可执行的程序代码来实现,从而可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1