一种组播多用户的语音混沌保密通信方法与流程

文档序号:13766273阅读:176来源:国知局
本发明涉及语音混沌加密通讯方法
技术领域
:,特别涉及一种组播多用户的语音混沌保密通信方法。
背景技术
::近年来,随着网络传输技术的快速发展,而语音通信过程中缺少保护机制,语音通信信息容易被窃听等问题越来越引起人们的关注。针对语音通信信息的加密手段也被广泛研究,大量基于非线性系统的加密手段被提出用以保护全部或部分语音数据。作为非线性系统的一大研究方向,自1990年0GY方法被提出后,混沌控制已经成为语音保密方面的研究热点之一,混沌因其具有正的李雅普诺夫指数、伪随机性、对初始条件和系统参数极端敏感等特性,被广泛应用于保密通信方面。然而,目前的语音加密方法,安全性仍存在不足,不能满足语音通信安全性的要求。因此,针对现有技术不足,提供一种安全性高的组播多用户语音混沌保密通信方法以克服现有技术不足甚为必要。技术实现要素:本发明的目的在于提供一种组播多用户的语音混沌保密通信方法,具有语音信息保密性高的特点,能够提高语音通讯的安全性。本发明的上述目的通过如下技术手段实现:提供一种组播多用户的语音混沌保密通信方法,通过语音保密通信系统进行,所述语音保密通信系统包括语音发送端和与所述语音发送端相互匹配的多个语音接收端,所述语音发送端设置有语音采集模块、压缩模块、加密模块和传输模块;通信过程中,所述语音发送端包括如下步骤:SA.语音采集模块实时采集语音并将语音数据传送至压缩模块;SB.压缩模块对语音采集模块输送的语音数据进行压缩并将压缩后后的语音数据传输至加密模块;SC.加密模块对压缩后的语音数据进行混沌加密后传送至传输模块;SD.传输模块将加密后的语音数据实时通过网络传输至多个对应的接收端;通信过程中,每个语音接收端包括如下步骤:RA.连接到语音发送端并接收传输模块输送的加密语音流数据;RB.对接收的加密语音数据进行解密解压处理;RC.在接收端播放解密解压后的语音信息。上述步骤SC的加密方式为三级混沌加密。上述步骤SA采集语音方式的量化比特位为16bit。上述步骤SB的压缩方式为IMA-ADPAM语音压缩算法。上述步骤SD以WIFI组播形式将加密后的语音数据传输。上述步骤RA中具体以UDP方式连接到语音发送端。上述步骤RB中所采用的解码方式为IMA-ADPAM语音解压算法,所采用的解密方式为混沌解密。上述步骤SC中,在其中一个接收端用正确密钥解密还原并播放语音,在另一个接收端播放用失配密钥解密的语音信号。优选的,上述三级混沌加密过程包括:在第一级混沌加密中,利用六维混沌映射,对语音压缩数据中的每一bit数据进行置乱;在第二级混沌加密中,利用七维混沌映射,对分组中的每一个字节语音压缩数据的位置进行置乱;在第三级混沌加密中,利用混沌流密码对语音压缩数据的值进行多轮迭代加密。优选的,三级混沌加密过程,具体是:SC1.第一级加密运算利用六维混沌映射,对语音压缩数据中的每一bit数据进行置乱加密,得位置置乱的个数为4096,选取令n=6,得:A6=1518521211971622641492421519551282081413388814413820488012481632;]]>将原始语音压缩数据暂存在inbuf缓冲区中,加密后的数据暂存在outbuf缓冲区中,加密前outbuf缓冲区中的所有bit数据都为0;混沌加密算法如下:(1)根据上述步骤SC1,可得加密前语音压缩数据的顺序号S对应的映射为E(S),E(S)对应的坐标为(i,j);(2)提取inbuf中第i行和第j列对应单元中的1bit数据,按照公式(inbuf[i]>>j)&1∈{0,1}操作;(3)利用6D混沌映射表进行位置映射,得映射后的坐标为:{x=floor(6D-map-table[i×8+j]/8)y=mod(6D-map-table[i×8+j],8);]]>(4)将(i,j)对应单元中的1bit数据置换到(x,y)对应的单元中:outbuf[x]=(((inbuf[i]>>j)&1)<<y)∨outbuf[x];式中符号“>>j”表示右移j位,“<<y”表示左移y位,“&”表示按bit位的与运算,“∨”表示按bit位的或运算,“mod”表示模运算,“floor”表示取整数部分;SC2.第二级加密运算使用7维混沌映射,采用8bits数据的位置置乱方案对一帧语音压缩数据的位置进行加密,得位置置乱的个数为16348,选取Ai,j(12)=1,Aj,i(21)=1,Aj,j(22)=2,]]>令n=7,得:A7=1625842375509031730102289671110016268824957894815196317640867214133810424040013820481121921248163264;]]>对一帧为16384个的语音压缩数据的位置进行加密,原始语音压缩数据暂存在inbuf缓冲区中,加密后的数据暂存在outbuf缓冲区中;加密前语音压缩数据的顺序号S(S=0,1,2,…,214-1)为:S=x1,k×27×2-2+x2,k×27×2-4+…+xn-1,k×22+xn,k×20;加密后对应每个顺序号S的位置映射为:E(S)=E(S,α1)×27×2-2+E(S,α2)×27×2-4+…+E(S,α6)×22+E(S,α7)×20;式中αi(i=1,2,…,7)∈{1,2,…,7},α1≠α2≠…≠α7;SC3.第三级加密运算在第三级混沌加密中,利用混沌流密码对语音压缩数据的值进行多轮迭代加密;建立三维离散型混沌系统动力学方程,公式为:x1(k+1)=a11x1(k)+a12x2(k)+a13x3(k)x2(k+1)=a21x1(k)+a22x2(k)+a23x3(k)x3(k+1)=a31x1(k)+a32x2(k)+a33x3(k)+ϵsin(σx1(k));]]>式中A=a11a12a13a21a22a23a31a32a33=0.205-0.5950.265-0.265-0.1250.5950.33-0.330.47,]]>对应的特征根均位于单位圆内,标称系统渐近稳定;g(σx1(k),ε)=εsin(σx1(k))为一致有界的反控制器,ε和σ为控制参数;选取ε=3×108,σ=2×105,得李雅普诺夫指数为LE1=14.9,LE2=14.8,LE3=0.19;在1轮加密情况下,得语音发送端混沌加密系统的迭代方程为:x1(d)(k+1)=a11(d)x1(d)(k)+a12(d)x2(d)(k)+a13(d)x3(d)(k)x2(d)(k+1)=a21(d)p(k)+a22(d)x2(d)(k)+a23(d)x3(d)(k)x3(d)(k+1)=a31(d)p(k)+a32(d)x2(d)(k)+a33(d)x3(d)(k)+ϵ(d)sin(σ(d)p(k));]]>式中s(k)为输入的语音信号,符号“⊕”表示按位异或运算;该离散时间混沌系统动力学方程随着k的增加,在发送端,通过包括语音信号在内的闭环反馈方法,将输出信号p(k)反馈回来,分别替代发送端混沌系统第2~3个方程中的不断迭代,通过将产生的双精度实数值转换为32为整数,然后取其低8位,与8位语音信号进行异或运算得到密文值;还包括对每一帧语音数据以帧为单位进行多轮流密码加密,在发送端,对每一帧语音信号进行M(M=1,2,3,…)轮加密:首先将K1位于1,输入一帧语音信号进行加密,其次,K1位于2,将加密一轮后的一帧语音信号通过K1回馈后再进行第二轮加密,如此往复,共进行M轮加密;完成M轮加密后K2接通,将最后一轮加密的一帧语音信号经信道输出;接着K1再位于1,再输入下一帧语音信号进行加密,如此周而复始地完成对一帧一帧的语音信号的M轮加密;对应的,RB中解密的过程如下:先对步骤SC3所述的第三级加密数据进行解密,在1轮解密的情况下,得语音接收端混沌解密系统的迭代方程为x1(r)(k+1)=a11(r)x1(r)(k)+a12(r)x2(r)(k)+a13(r)x3(r)(k)x2(r)(k+1)=a21(r)p(k)+a22(r)x2(r)(k)+a23(r)x3(r)(k)x3(r)(k+1)=a31(r)p(k)+a32(r)x2(r)(k)+a33(r)x3(r)(k)+ϵ(r)sin(σ(r)p(k));]]>式中s(k)为输入的语音信号,符号“⊕”表示按位异或运算;将接收到的加密了M轮的语音加密信号分别替代接收端混沌系统第2~3个方程中的进行相应的M轮语音信号解密,使得发送端与接收端的两个混沌系统同步,从而实现语音加密信号的解密;在语音接收端,对每一帧加密的语音数据进行M(M=1,2,3,…)轮解密:首先将K3位于1,输入一帧加密语音数据进行解密,其次,K3位于2,将解密一轮后的一帧语音数据通过K3回馈后再进行第二轮解密,如此往复共进行M轮解密。完成M轮解密后K4接通,将最后一轮解密的一帧语音数据输出;接着K3再位于1,再输入下一帧加密的语音数据进行解密,如此周而复始地完成对一帧一帧加密语音数据的M轮解密;再对步骤SC2所述的第二级加密进行解密,当接收端与发送端的子矩阵排列顺序完全匹配时,8bits数据能被置换回正确的位置,加密信息能正确地解密出来,否则,被置换到错误的位置,即接收端无法将加密信息正确解密出来;最后对步骤SC1所述的第一级加密进行解密,当接收端与发送端的子矩阵排列顺序完全匹配时,1bits数据能被置换回正确的位置,加密信息能正确地解密出来,否则,被置换到错误的位置,即接收端无法将加密信息正确解密出来。本发明的组播多用户的语音混沌保密通信方法,通过语音保密通信系统进行,所述语音保密通信系统包括语音发送端和与所述语音发送端相互匹配的多个语音接收端,所述语音发送端设置有语音采集模块、压缩模块、解密模块和传输模块。语音发送端采集语音并将语音数据传送至压缩模块进行压缩,加密模块对语音数据完成混沌加密后传递至传输模块,由传输模块将加密后的语音数据实时通过网络传输至多个对应的接收端。每个语音接收端分别连接到语音发送端并接收传输模块输送的加密语音流数据;并对接收的加密语音数据进行解密解压处理并在接收端进行播放。本发明的组播多用户的语音混沌保密通信方法,具有语音通讯保密性高的特点,能够提高语音通讯的安全性。附图说明利用附图对本发明作进一步的说明,但附图中的内容不构成对本发明的任何限制。图1为本发明一种组播多用户的语音混沌保密通信方法的流程图;图2为本发明实施例2基于组播多用户的语音混沌保密通信系统的框图;图3为本发明实施例2中的1bit数据的位置置乱示意图;图4为本发明实施例2中的基于8bits语音压缩数据的位置置乱与反置乱示意图;图5为本发明实施例2中的三维混沌系统混沌吸引子相图;图6为本发明实施例2中的多轮流密码加密与解密的设计原理图;图7为两个客户端与发送端密钥匹配的解密结果;图8为第一个客户端与发送端密钥不匹配解密结果;图9为第二个客户端与发送端密钥不匹配解密结果。具体实施方式结合具体实施例对本发明作进一步说明。实施例1。如图1所示,一种组播多用户的语音混沌保密通信方法,通过语音保密通信系统进行,语音保密通信系统包括语音发送端和与语音发送端相互匹配的多个语音接收端,语音发送端设置有语音采集模块、压缩模块、加密模块和传输模块。通信过程中,语音发送端包括如下步骤:SA.语音采集模块实时采集语音并将语音数据传送至压缩模块;SB.压缩模块对语音采集模块输送的语音数据进行压缩并将压缩后后的语音数据传输至加密模块;SC.加密模块对压缩后的语音数据进行混沌加密后传送至传输模块;SD.传输模块将加密后的语音数据实时通过网络传输至多个对应的接收端;通信过程中,每个语音接收端包括如下步骤:RA.连接到语音发送端并接收传输模块输送的加密语音流数据;RB.对接收的加密语音数据进行解密解压处理;RC.在接收端播放解密解压后的语音信息。其中,步骤SA采集语音方式的量化比特位为16bit。步骤SB的压缩方式为IMA-ADPAM语音压缩算法。步骤SC的加密方式为三级混沌加密,三级混沌加密过程包括:在第一级混沌加密中,利用六维混沌映射,对语音压缩数据中的每一bit数据进行置乱;在第二级混沌加密中,利用七维混沌映射,对分组中的每一个字节语音压缩数据的位置进行置乱;在第三级混沌加密中,利用混沌流密码对语音压缩数据的值进行多轮迭代加密。步骤SD以WIFI组播形式将加密后的语音数据传输。步骤RA中具体以UDP方式连接到语音发送端。步骤RB中所采用的解码方式为IMA-ADPAM语音解压算法,所采用的解密方式为混沌解密。步骤SC中,可在其中一个接收端用正确密钥解密还原并播放语音,在另一个接收端播放用失配密钥解密的语音信号。本发明的组播多用户的语音混沌保密通信方法,具有语音通讯保密性高的特点,能够提高语音通讯的安全性。实施例2。采用如下硬件配置作为本发明组播多用户的语音混沌保密通信方法的硬件配置:用一块Super4412的ARM开发板作为语音发送端,用两块Super4412的ARM开发板作为两个语音接收端,采用组播协议实现语音发送端与语音接收端之间的点对多网络连接。如图2所示,语音发送端的ARM开发板主要负责语音数据的采集、压缩、语音数据的加密,并将加密后的语音数据通过无线信道发送到多个语音接收端。语音接收端的ARM开发板负责接收发送端ARM开发板发过来的加密语音数据,并将其解密,同时利用音响播放出来。本实施例中,对语音数据采用三级混沌加密的方式进行。对压缩后的语音数据进行混沌加密能够减少多余度和增大唯一解距离。采用三级混沌加密的方法能进一步增强整个系统的安全性,并且能够满足对语音数据加密、传输、解密三个环节的实时性要求。另外,采用子网内组播的架构和IGMP协议,实现了ARM发送端向网内ARM接收端成员组播的功能。具体的,语音混沌加密的通信方法如下:SA.语音采集模块实时采集语音并将语音数据传送至压缩模块。SB.压缩模块采用IMA-ADPCM语音压缩算法将声卡每次采样到的16bits数据流压缩成为4bits,由于C语言中没有存储4bits数据类型的,故使用char类型将两个压缩后的数据存储在一个变量中。具体而言,将PCM数据按时间顺序依次压缩并写入缓冲区中,每个BYTE中含2个压缩后的数据,其中低4位对应第1个压缩后的数据,高4位对应第2个压缩后的数据。SC.加密模块对压缩后的语音数据进行三级混沌加密后传送至传输模块。三级混沌加密过程具体如下:SC1.第一级加密运算利用六维混沌映射,对语音压缩数据中的每一bit数据进行置乱加密,可得位置置乱的个数为选取Aj,i(21)=1,Aj,j(22)=2,]]>令n=6,得:A6=1518521211971622641492421519551282081413388814413820488012481632.]]>由于语音压缩后的一帧数据为16384个,故需要将其分成为32组,每一组为512个,共有512×8=4096bits数据,然后对这4096bits数据的位置进置乱与反置乱。用这种方法完成对语音压缩后的一帧数据的加密和解密,共需要进行32轮。原始语音压缩数据暂存在inbuf缓冲区中,加密后的数据暂存在outbuf缓冲区中,加密前outbuf缓冲区中的所有bit数据都为0。如图3所示,混沌加密算法如下:(1)根据上述步骤SC1,可得加密前语音压缩数据的顺序号S对应的映射为E(S),E(S)对应的坐标为(i,j);(2)提取inbuf中第i行和第j列对应单元中的1bit数据,按照公式(inbuf[i]>>j)&1∈{0,1}操作;(3)利用6D混沌映射表进行位置映射,得映射后的坐标为:{x=floor(6D-map-table[i×8+j]/8)y=mod(6D-map-table[i×8+j],8);]]>(4)将(i,j)对应单元中的1bit数据置换到(x,y)对应的单元中:outbuf[x]=(((inbuf[i]>>j)&1)<<y)∨outbuf[x];式中符号“>>j”表示右移j位,“<<y”表示左移y位,“&”表示按bit位的与运算,“∨”表示按bit位的或运算,“mod”表示模运算,“floor”表示取整数部分。SC2.第二级加密运算使用7维混沌映射,采用8bits数据的位置置乱方案对一帧语音压缩数据的位置进行加密,可得位置置乱的个数为N=2n×N0=27×2=16384.]]>选取Ai,i(11)=1,Ai,j(12)=1,Aj,i(21)=1,Aj,j(22)=2,]]>令n=7,得:A7=1625842375509031730102289671110016268824957894815196317640867214133810424040013820481121921248163264.]]>利用7维混沌映射,采用8bits数据的位置置乱与反置乱的方案,对一帧为16384个的语音压缩数据的位置进行加密,如图4所示,图中ki(i=0,1,2,…,16383)∈{0,1,2,…,16383},k1≠k2≠…≠k16383。在图4中,原始语音压缩数据暂存在inbuf缓冲区中,加密后的数据暂存在outbuf缓冲区中。得加密前语音压缩数据的顺序号S(S=0,1,2,…,214-1)为:S=x1,k×27×2-2+x2,k×27×2-4+…+xn-1,k×22+xn,k×20;得加密后对应每个顺序号S的位置映射为:E(S)=E(S,α1)×27×2-2+E(S,α2)×27×2-4+…+E(S,α6)×22+E(S,α7)×20;式中αi(i=1,2,…,7)∈{1,2,…,7},α1≠α2≠…≠α7。SC3.第三级加密运算在第三级混沌加密中,利用混沌流密码对语音压缩数据的值进行多轮迭代加密。建立三维离散型混沌系统动力学方程,公式为:x1(k+1)=a11x1(k)+a12x2(k)+a13x3(k)x2(k+1)=a21x1(k)+a22x2(k)+a23x3(k)x3(k+1)=a31x1(k)+a32x2(k)+a33x3(k)+ϵsin(σx1(k));]]>式中A=a11a12a13a21a22a23a31a32a33=0.205-0.5950.265-0.265-0.1250.5950.33-0.330.47,]]>对应的特征根均位于单位圆内,标称系统渐近稳定;g(σx1(k),ε)=εsin(σx1(k))为一致有界的反控制器,ε和σ为控制参数。选取ε=3×108,σ=2×105,得李雅普诺夫指数为LE1=14.9,LE2=14.8,LE3=0.19。对应的混沌吸引子相图如图5所示。在1轮加密情况下,得语音发送端混沌加密系统的迭代方程为:x1(d)(k+1)=a11(d)x1(d)(k)+a12(d)x2(d)(k)+a13(d)x3(d)(k)x2(d)(k+1)=a21(d)p(k)+a22(d)x2(d)(k)+a23(d)x3(d)(k)x3(d)(k+1)=a31(d)p(k)+a32(d)x2(d)(k)+a33(d)x3(d)(k)+ϵ(d)sin(σ(d)p(k));]]>式中s(k)为输入的语音信号,符号“⊕”表示按位异或运算。该离散时间混沌系统动力学方程随着k的增加,在发送端,通过包括语音信号在内的闭环反馈方法,将输出信号p(k)反馈回来,分别替代发送端混沌系统第2~3个方程中的不断迭代,通过将产生的双精度实数值转换为32为整数,然后取其低8位,与8位语音信号进行异或运算得到密文值。为进一步增强抵御差分攻击的能力,对每一帧语音数据以帧为单位进行多轮流密码加密。如图6所示语音信号多轮混沌流密码加密的基本工作原理如下:在发送端,对每一帧语音信号进行M(M=1,2,3,…)轮加密的工作原理:首先将K1位于1,输入一帧语音信号进行加密,其次,K1位于2,将加密一轮后的一帧语音信号通过K1回馈后再进行第二轮加密,如此往复,共进行M轮加密。完成M轮加密后K2接通,将最后一轮加密的一帧语音信号经信道输出。接着K1再位于1,再输入下一帧语音信号进行加密,如此周而复始地完成对一帧一帧的语音信号的M轮加密。SD.信息传输:采用子网内组播的架构和IGMP协议,实现语音发送端将加密后的语音数据流通过无线信道发送到多个接收端。RA.每个接收端连接到语音发送端并接收传输模块输送的加密语音流数据;RB每个接收端利用加密运算的逆运算对接收到的密文数据进行混沌解密。先对步骤SC3所述的第三级加密数据进行解密。在1轮解密的情况下,得接收端混沌解密系统的迭代方程为x1(r)(k+1)=a11(r)x1(r)(k)+a12(r)x2(r)(k)+a13(r)x3(r)(k)x2(r)(k+1)=a21(r)p(k)+a22(r)x2(r)(k)+a23(r)x3(r)(k)x3(r)(k+1)=a31(r)p(k)+a32(r)x2(r)(k)+a33(r)x3(r)(k)+ϵ(r)sin(σ(r)p(k));]]>式中s(k)为输入的语音信号,符号“⊕”表示按位异或运算。将接收到的加密了M轮的语音加密信号分别替代接收端混沌系统第2~3个方程中的进行相应的M轮语音信号解密,使得发送端与接收端的两个混沌系统同步,从而实现语音加密信号的解密。如图6所示语音信号多轮混沌流密码解密的基本工作原理如下:在接收端,对每一帧加密的语音数据进行M(M=1,2,3,…)轮解密的工作原理:首先将K3位于1,输入一帧加密语音数据进行解密,其次,K3位于2,将解密一轮后的一帧语音数据通过K3回馈后再进行第二轮解密,如此往复共进行M轮解密。完成M轮解密后K4接通,将最后一轮解密的一帧语音数据输出。接着K3再位于1,再输入下一帧加密的语音数据进行解密,如此周而复始地完成对一帧一帧加密语音数据的M轮解密。再对步骤SC2所述的第二级加密进行解密,解密时分密钥匹配和密钥失配两种情况。以21个子矩阵Tij的排列顺序作为密钥为例,当接收端与发送端的子矩阵排列顺序完全匹配时,8bits数据能被置换回正确的位置,加密信息能正确地解密出来,否则,被置换到错误的位置,即接收端无法将加密信息正确解密出来。最后对步骤SC1所述的第一级加密进行解密,解密时也分为密钥匹配和密钥失配两种情况,以15个子矩阵Tij的排列顺序作为密钥为例,当接收端与发送端的子矩阵排列顺序完全匹配时,1bits数据能被置换回正确的位置,加密信息能正确地解密出来,否则,被置换到错误的位置,即接收端无法将加密信息正确解密出来。如图7所示,只有当上述三级解密密钥都匹配时,才能正确解密出原始的语音数据;如图8、图9所示,只要有任意一级的密钥不匹配,解密出来的数据都是错误的,因此保证了整个系统的安全性。RC.对解密后的数据采用IMA-ADPCM语音压缩算法解压缩后送到扬声器播放。本发明的组播多用户的语音混沌保密通信方法,采用三级语音混沌加密方式进行加密传输,解密时只有三级秘钥匹配时才能得到正确的语音数据,因此具有语音通讯保密性高的特点,能够提高语音通讯的安全性。需要说明的是,以上实施例仅用于说明本发明明的技术方案而非对本发明保护范围的限制,尽管参照较佳实施例对本发明作了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的实质和范围。当前第1页1 2 3 当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1