一种复数移相加密解密方法

文档序号:7625447阅读:306来源:国知局
专利名称:一种复数移相加密解密方法
技术领域
本发明属于通讯领域中的加密技术,尤其涉及短距离无线扩频通信系统的点对对点协议中的加密技术。
背景技术
短距离无线扩频通信系统中最初的加密技术采用DES(DataEncryption Standard)算法,DES算法仅使用最大为64位的标准算术和逻辑运算,但DES算法不能提供足够的安全性,因为其密钥容量只有56位。因此需要一种新型的加密方法以解决加密安全性的问题。

发明内容
本发明需要解决的技术问题在于提供一种复数移相加密方法,从而使短距离无线扩频通信系统中点对多点协议的加密强度增加。
本发明的技术方案包括如下步骤1输入一定字节量的明文;2对明文进行初始排列;3将明文按相同字节量分成高低两部分,放入各自的寄存器中;4输入加密系数,并按照密钥生成器公式对高低位两部分明文进行各级加密,并分别交叉放入相反的寄存器中,即将高位部分放入下一级的低位寄存器中,上一级的低位寄存器中的内容则放入下一级的高位寄存器中;
5待所有级明文加密结束后,再对高低两部分内容进行初试逆排列,以还原原始明文的顺序;6最后形成加密文档;其特征在于在对明文进行密钥生成器公式计算前,对高位或低位部分的明文进行迭代复数移相,所述复数移相方法如下a将高位寄存器中的明文按分成实部或虚部;b将上述实部和虚部分别作为复数乘法器的输入,同时根据密钥系数Ki从相位查找表获得角度复数,并相应地分成实部和虚部,以对应所述明文中实部和虚部,并也作为复数乘法的另一输入,从而实现复数移相;c复数移相后的输出仍分为实部和虚部;d将上述实部和虚部输出复合成一整体信息。
本发明需要解决的另一技术问题在于提供一种复数移相解密方法,其特征在于包括以下步骤a将实部和虚部复合成一体的加密信息再按相同字节数分成实部和虚部;b将上述实部和虚部分别作为解密生成器公式的输入,同时根据密钥系数Ki从相位查找表获得角度复数,并分成实部和经过取反模块后的虚部,以对应所述明文中实部和虚部,并也作为解密生成器公式的另一输入,从而通过复数乘法实现解密;c解密后输出仍分为实部和虚部;d将上述实部和虚部输出复合成一整体信息,即需解密的明文。
作为本发明的改进,所述复数移相由密钥系数Ki所控制,即加密解密复数乘法的具体方法是,对四个象限进行角度均分,对于不同的角度,其cosθ值和sinθ值是不同的,从而可建立起象限内不同角度和Ki的对应关系,其中i表示需加密解密的级数。
作为多本发明的改进,所述密钥系数K由伪码发生器产生,伪码发生器是密钥发生器中的一种,其生成多项式为F(x)=1+x3+x5+x6+x8+x11+x12。
本发明的有益效果是,与现有技术相比,由于巧妙地采用了复数移相法,每次迭代加密都进行了复数移相,其角度偏移由子密钥来控制,从幅度和相位两个方面同时加密,不仅没有带来时间上的延迟,而且算法结构的复杂性得到了很大地提高,使得通讯过程中加密强度极大提高,显著增强了加密的安全性。


图1为本发明的系统框图;图2为本发明所述复数移相方法的加密流程图;图3为本发明所述复数移相方法的解密流程图;图4为本发明相数查表图。
图5为本发明具体实施例中密钥生成器方程的示意图。
具体实施例方式
以下结合附图和具体实施方式
对本发明作详细说明。
结合图1和图2,本发明以64比特的明文为例,首先进行初始排列,即将64位明文分别分成左右32位明文(也可以是高低32位明文),对现有技术的改进在于对左位的32比特的明文进行了复数移相,具体方法如图2。
图2为对左32位明文进行复数移相,即首先将32bitLi的数据分成两部分,16~31位组成复数B的实部,0~15位组成复数B的虚部,即ReB=Li[31:16],ImB=Li[15:0],即复数形式,图中分别表示为L[31:16]和L[15:0],与此同时,密钥系数Ki也分为16个级别,即K1-K16,而且本发明只取了Ki中的0-5位共6bit。
同时参考图4,首先建立θ角在第一象限的cosθ,sinθ值的查找表,本发明中,θ取值为90°的15等分,即θ=0°,6°,12°,…,84°,90°。用16位无符号二进制数E[31:16]和E[15:0]表示cosθ和sinθ的小数值;然后根据Ki[1:0]决定θ的象限,即E[31:16]和E[15:0]的符号,再由Ki[5:2]的值d查找对应的6°×d的cosθ和sinθ的二进制小数值(从表1中),从而得到E[31:16]和E[15:0]的数值,组成复数A,ReA=E[31:16],ImA=E[15:0],其中,E为存储在表中的cosθ和sinθ的小数值,其中E[31:16]为cosθ的小数值,E[15:0]为sinθ的小数值,E[31:0]可对应于复数A,即复数A的实部ReA代表E[31:16],虚部ImA代表E[15:0],32bit的Li对应于复数B,即复数B的实部对应于Li[31:16],虚部对应于Li[15:0],复数C对应于复数乘法器的32bit输出L′i,即复数C的实部对应于L′i[31:16],虚部对应于L′i[15:0]。
然后将复数A和B相乘,即C=A×B,即ReC=ReA×ReB-ImA×ImB;ImC=ReA×ImB+ImA×ReB;最后得到的C即为32bit的L′i,即加密信息。
图1中的密钥生成器方程,实际中采用移位寄存器产生63位伪随机码,可同时参见图5,产生64位随机数,随机取56位,作为密钥K。所述密钥的生成本原多项式F(x)=1+x3+x5+x6+x8+x11+x12改变图5中的移位寄存器的初始状态,通过生成多项式可获得不同的密钥K。
相反,解密方法见图3,首先将已加密的32bit的L′i信息重新分成实部L[31:16]和虚部L[15:0],对于密钥系数Ki也是通过与加密方法相同的查表法获得相应的数值,但是与加密部分不同的特征还在于,解密部分对虚部进行了符号取反以获得其共轭,从而将移相后的数据恢复出来。上述获得的实部和虚部明文及系数K均作为解密方程的输入,从而获得以实部和虚部表示的解密输出,其最终形式为32bitL′i[31:0]。
权利要求
1.一种复数移相加密方法,包括如下步骤1)输入一定字节量的明文;2)对明文进行初始排列;3)将明文按相同字节量分成高低两部分,放入各自的寄存器中;4)输入加密系数,并按照密钥生成器公式对高低位两部分明文进行各级加密,并分别交叉放入相反的寄存器中,即将高位部分放入下一级的低位寄存器中,上一级的低位寄存器中的内容则放入下一级的高位寄存器中;5)待所有级明文加密结束后,再对高低两部分内容进行初试逆排列,以还原原始明文的顺序;6)最后形成加密文档;其特征在于在对明文进行密钥生成器公式计算前,对高位或低位部分的明文进行迭代复数移相,所述复数移相方法如下a)将高位寄存器中的明文按分成实部或虚部;b)将上述实部和虚部分别作为复数乘法器的输入,同时根据密钥系数Ki从相位查找表获得角度复数,并相应地分成实部和虚部,以对应所述明文中实部和虚部,并也作为复数乘法的另一输入,从而实现复数移相;c)复数移相后的输出仍分为实部和虚部;d)将上述实部和虚部输出复合成一整体信息。
2.如权利要求1所述的复数移相加密方法,其特征在于所述b)步骤的复数乘法可进一步表现为对四个象限进行角度均分,对于不同的角度,其cosθ值和sinθ值是不同的,从而可建立起象限内不同角度和Ki的对应关系,其中i表示需加密的级数。
3.如权利要求1或2所述的复数移相加密方法,其特征在于所述密钥系数Ki由伪码发生器产生,伪码发生器是密钥发生器中的一种,其生成多项式可为F(x)=1+x3+x5+x6+x8+x11+x12;.。
4.如权利要求3所述的复数移相加密方法,其特征在于所述密钥系数K可分为16个级别,即K1-K16,只取了Ki中的0-5位共6比特。
5如权利要求1所述的复数移相加密方法,其特征在于所述高位和低位明文可分别为16位比特。
6.一种复数移相解密方法,包括如下步骤a)将实部和虚部复合成一体的加密信息按相同字节数分成实部和虚部;b)将上述实部和虚部分别作为解密生成器公式的输入,同时密钥系数K也相应地分成实部和经过取反模块后的虚部,以对应所述明文中实部和虚部,并也作为解密生成器公式的另一输入,从而通过复数乘法实现解密;c)解密后输出仍分为实部和虚部;d)将上述实部和虚部输出复合成一整体信息,即需解密的明文。
7.如权利要求6所述的复数移相解密方法,其特征在于所述b)步骤的复数乘法可进一步表现为对四个象限进行角度均分,对于不同的角度,其cosθ值和sinθ值是不同的,从而可建立起象限内不同角度和Ki的对应关系,其中i表示需解密的级数。
8.如权利要求6或7所述的复数移相解密方法,其特征在于所述密钥系数Ki由伪码发生器产生,伪码发生器是密钥发生器中的一种,其生成多项式可为F(x)=1+x3+x5+x6+x8+x11+x12;.。
9.如权利要求8所述的复数移相解密方法,其特征在于所述实部和虚部的字节数均为16比特。
全文摘要
本发明公开了一种复数移相加密解密方法,其特征在于在对明文进行密钥生成器公式计算前,对高位或低位部分的明文进行迭代复数移相。其有益效果是,每次迭代加密都进行了复数移相,其角度偏移由子密钥来控制,从幅度和相位两个方面同时加密,不仅没有带来时间上的延迟,而且算法结构的复杂性得到了很大地提高,使得通讯过程中加密强度极大提高,显著增强了加密的安全性。
文档编号H04L29/06GK1777089SQ20051011072
公开日2006年5月24日 申请日期2005年11月24日 优先权日2005年11月24日
发明者田维成, 董颐 申请人:上海森田科学技术研究所有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1