用于密钥加密通信系统中的密钥交换方法技术方案

技术编号:8273438 阅读:171 留言:0更新日期:2013-01-31 06:00
一种用于密钥加密通信系统中的密钥交换方法,包括:第一通信节点生成第一随机数,并将生成的第一随机数发送给第二通信节点;第二通信节点生成第二随机数,并将生成的第二随机数发送给第一通信节点;第一通信节点对第一随机数和第二随机数进行预定运算,以生成种子随机数,并且第一通信节点使用预先与第二通信节点确定的加密算法和原始密钥对种子随机数进行加密,以生成加密密钥;第二通信节点对第一随机数和第二随机数进行预定运算,以生成种子随机数,并且第二通信节点使用预先与第一通信节点确定的加密算法和原始密钥对种子随机数进行加密,以生成加密密钥。

【技术实现步骤摘要】
本专利技术属于通信安全领域,具体地讲,涉及一种用于密钥加密通信系统中的密钥交换方法
技术介绍
随着通信技术的发展,通信安全变得越来越重要。目前流行的两种数据加密体系对称密钥加密法和非对称密钥加密法。常用的对称加密法如DES、AES。非对称密钥法又称为公开密钥方法,常用的非对称密钥法如RSA,ECC等。在使用对称密钥加密算法进行通信的密钥加密通信系统中,通信双方需要约定一个密钥,其相对比较固定,并且对称密钥加密算法是公开的,很容易受到攻击,并且时间长了该固定密钥容易被攻击方猜到导致整个系统崩溃。 如果通信双方使用临时的随机密钥,一次一密钥的方法,无疑增加了攻击的难度,几乎不可能靠猜测密钥的办法来攻击密钥系统。即使某一次通信的临时密钥被猜到,也不会影响到其它节点的通信或下一次的通信的安全性。但是,在密钥是临时随机的密钥情况下,通信的双方也还是需要交换密钥,以保持双方的密钥一致。因此,在交换密钥的过程中仍存在密钥被截取的风险。这就需要一种安全的密钥交换机制。首次提出在通信中公开传递密钥的方法是由戴费和海尔曼提出的密钥交换算法,简称为DH密钥交换体制,它不是加密算法,但可以在网络中公开传输密钥。这种密钥交换技术的目的在于使得两个用户安全地交换一个密钥以便用于以后的报文加密。DH密钥交换算法的有效性依赖于计算离散对数的难度。简言之,可以如下定义离散对数首先定义一个素数P的原根,为其各次幂产生从I到P-I的所有整数根,也就是说,如果a是素数P的一个原根,那么数值amod p, a2mod p, .··, ap_1mod p (这里,mod是取模运算符)是各不相同的整数,并且以某种排列方式组成了从I到P-I的所有整数。对于一个整数b和素数P的一个原根a,可以找到唯一的指数i,使得b = a1 mod p 其中 O < i < (p-1)指数i称为b的以a为基数的模P的离散对数或者指数。该值被记为inda,p(b)。基于此,可以定义DH密钥交换算法。该算法描述如下(a)有两个全局公开的参数,一个素数q和一个整数a,a是q的一个原根。(b)假设用户A和B希望交换一个密钥,用户A选择一个作为私有密钥的随机数XA < q,并计算公开密钥YA = aH mod q。用户A对XA的值保密存放而使YA能被用户B公开获得。类似地,用户B选择一个私有的随机数XB <q,并计算公开密钥YB = aXB mod q。用户B对XB的值保密存放而使YB能被用户A公开获得。(c)用户A产生共享秘密密钥的计算式是K= (YB)h mod q。同样,用户B产生共享秘密密钥的计算式是K= (YA)XB mod q。这两个计算产生相同的结果K = (YB)m mod q= (aXB mod q)M mod q= (aXB)XA mod q (根据取模运算规则得到)= aXB XA mod q= (aXA) XBmod q= (aXA mod mod q= (YA)XB mod q 因此,相当于双方已经交换了一个相同的秘密密钥。(d)因为XA和XB是保密的,一个攻击方可以利用的参数只有q、a、YA和YB。因而攻击方被迫取离散对数来确定密钥。例如,要获取用户B的秘密密钥,攻击方必须先计算 XB = incL, (YB),然后再使用用户B采用的同样方法计算其秘密密钥K。DH密钥交换算法的安全性依赖于这样一个事实虽然计算以一个素数为模的指数相对容易,但计算离散对数却很困难。对于大的素数,计算出离散对数几乎是不可能的。DH密钥交换体制虽然目前来看是比较安全的,但其运算量非常大。比如DH算法中,为了实现一个30位二进制数的密钥交换,可能需要计算2147483647 (32位二进制数)的9223372036854775807 (64位二进制数)次方模除1073741824 (30位二进制数),这样的计算一般只能在大型机和小型机上实现。而攻击方要破解这30位的密钥如果用穷举法暴力破解,以当前的普通PC机几分钟内可以完成。如果把密钥长度提高到64位,其计算量将是相当大的。虽然现在有很多DH方法的优化方法,使得可以在PC机上实现DH交换,但是运算量也是非常可观的。对于密钥交换方法也有很多其它的方法(比如基于线性不定方程求解困难而设置的密钥交换体制),虽然运算量会比DH的运算量小几个数量级,但是同样都是基于数学NP问题的设定,其共同特点都是数学运算量特别大,解该数学问题很困难。但是数学NP问题不是无解的问题,随着技术进步和研究的不断深入,可能会找到一个比较有效的数学方法来解该NP问题,届时这些方法将会失效。因此,需要一种运算量较小并且不易破解的密钥交换方法和系统。
技术实现思路
本专利技术的目的在于提供一种用于在使用密钥进行加密通信的通信系统中的密钥交换方法,该密钥交换方法仅需要较少的运算量即可实现加密密钥的交换,并且不易被破解。本专利技术的一方面提供一种用于密钥加密通信系统中的密钥交换方法,其特征在于包括第一通信节点生成第一随机数,并将生成的第一随机数发送给第二通信节点;第二通信节点生成第二随机数,并将生成的第二随机数发送给第一通信节点;第一通信节点对第一随机数和第二随机数进行预定运算,以生成种子随机数,并且第一通信节点使用预先与第二通信节点确定的加密算法和原始密钥对种子随机数进行加密,以生成加密密钥;第二通信节点对第一随机数和第二随机数进行预定运算,以生成种子随机数,并且第二通信节点使用预先与第一通信节点确定的加密算法和原始密钥对种子随机数进行加密,以生成加密密钥。优选地,将生成的第二随机数发送给第一通信节点的步骤可包括第二通信节点将第二随机数和第二通信节点的设备标识码发送给第一通信节点,其中,第一通信节点使用第二通信节点的设备标识码对原始密钥进行分散运算,并使用经过分散运算后的原始密钥对种子随机数进行加密,以生成加密密钥。优选地,第二通信节点可使用第二通信节点的设备标识码对原始密钥进行分散运算,并使用经过分散运算后的原始密钥对种子随机数进行加密,以生成加密密钥。优选地,所述预定运算可以是拼接处理、相加、相减、相乘之一。优选地,所述加密算法可以是数据加密标准DES、三重数据加密标准3DES、高级加密标准AES之一。优选地,第一通信节点还可将用于标识加密算法的编号和/或用于标识原始密钥的编号发送给第二通信节点,其中,第一通信节点和第二通信节点基于用于标识加密算法的编号和/或用于标识原始密钥的编号从预先确定的多种加密算法和/或多个原始密钥中 选择对种子随机数进行加密时使用的加密算法和/或原始密钥。优选地,第一通信节点还可将用于标识加密算法和原始密钥之一的第一编号发送给第二通信节点,其中,第一通信节点和第二通信节点基于第一编号从第一通信节点和第二通信节点预先确定的多种加密算法和多个原始密钥中选择对种子随机数进行加密时使用的加密算法和原始密钥之一,第二通信节点还将用于标识加密算法和原始密钥中的另一个的第二编号发送给第二通信节点,其中,第一通信节点和第二通信节点基于第二编号从第一通信节点和第二通信节点预先确定的多种加密算法和多个原始密钥中选择对种子随机数进行加密时使用的加密算法和原始密钥中的另一个。优选地,原始密钥可包括多条原始子密钥,第一通信节点和第二通信节本文档来自技高网
...

【技术保护点】
一种用于密钥加密通信系统中的密钥交换方法,其特征在于包括:第一通信节点生成第一随机数,并将生成的第一随机数发送给第二通信节点;第二通信节点生成第二随机数,并将生成的第二随机数发送给第一通信节点;第一通信节点对第一随机数和第二随机数进行预定运算,以生成种子随机数,并且第一通信节点使用预先与第二通信节点确定的加密算法和原始密钥对种子随机数进行加密,以生成加密密钥;第二通信节点对第一随机数和第二随机数进行预定运算,以生成种子随机数,并且第二通信节点使用预先与第一通信节点确定的加密算法和原始密钥对种子随机数进行加密,以生成加密密钥。

【技术特征摘要】
1.一种用于密钥加密通信系统中的密钥交换方法,其特征在于包括 第一通信节点生成第一随机数,并将生成的第一随机数发送给第二通信节点; 第二通信节点生成第二随机数,并将生成的第二随机数发送给第一通信节点; 第一通信节点对第一随机数和第二随机数进行预定运算,以生成种子随机数,并且第一通信节点使用预先与第二通信节点确定的加密算法和原始密钥对种子随机数进行加密,以生成加密密钥; 第二通信节点对第一随机数和第二随机数进行预定运算,以生成种子随机数,并且第二通信节点使用预先与第一通信节点确定的加密算法和原始密钥对种子随机数进行加密,以生成加密密钥。2.根据权利要求I所述的密钥交换方法,其特征在于将生成的第二随机数发送给第一通信节点的步骤包括第二通信节点将第二随机数和第二通信节点的设备标识码发送给第一通信节点, 其中,第一通信节点使用第二通信节点的设备标识码对原始密钥进行分散运算,并使用经过分散运算后的原始密钥对种子随机数进行加密,以生成加密密钥。3.根据权利要求2所述的密钥交换方法,其特征在于第二通信节点使用第二通信节点的设备标识码对原始密钥进行分散运算,并使用经过分散运算后的原始密钥对种子随机数进行加密,以生成加密密钥。4.根据权利要求I所述的密钥交换方法,其特征在于所述加密算法是数据加密标准DES、三重数据加密标准3DES、高级加密标准AES之一。5.根据权利要求I所述的密钥交换方法,其特征在于第一通信节点还将用于标识加密算法的编号和/或用于标识原始密钥的编号发送给第二通信节...

【专利技术属性】
技术研发人员:王政吴恒志罗浩
申请(专利权)人:深圳市金溢科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1