CN101764666A - 语音加密的方法及装置、语音解密的方法及装置 - Google Patents
语音加密的方法及装置、语音解密的方法及装置 Download PDFInfo
- Publication number
- CN101764666A CN101764666A CN200910260090A CN200910260090A CN101764666A CN 101764666 A CN101764666 A CN 101764666A CN 200910260090 A CN200910260090 A CN 200910260090A CN 200910260090 A CN200910260090 A CN 200910260090A CN 101764666 A CN101764666 A CN 101764666A
- Authority
- CN
- China
- Prior art keywords
- speech
- encryption
- frame
- bit
- frame type
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明公开一种语音加密的方法及装置、语音解密的方法及装置,该语音加密的方法包括:确定语音数据的加密级别;确定语音帧的帧类型;根据加密级别和帧类型确定语音帧的待加密的比特位;以及对待加密的比特位进行加密。本发明提供的语音加密的方法,根据语音通信不同安全性的要求,对不同加密级别和不同帧类型下的帧的比特位进行区分,对语音帧编解码重要的比特位进行分组加解密处理,从而无需对所有的语音帧都进行加解密处理,降低了加解密运算的复杂度以及对软硬件设备的要求,满足了加密语音通信的实时性要求。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种语音加密的方法及装置、语音解密的方法及装置。
背景技术
随着通信技术的飞速发展,人们在工作和生活中越来越多地采用语音通信进行信息交流与沟通。语音通信已成为人们重要的通信方式,人们对语音通信的保密性要求也越来越高。在移动通信系统中,语音会在空中传输一段时间,因此对语音传输的安全性需求显得尤为迫切。当前对语音通信过程中传输的语音进行加密是实现安全通信的一种重要方式。
在目前的通信系统中,尤其是移动通信系统中,常用的语音编码算法大多为混合型语音编码算法,如CDMA移动通信系统中的增强型可变速率编码(EVRC,Enhanced Variable Rate Code)、GSM、WCDMA系统中的自适应多速率窄带(AMR-NB,Adaptive Multi-Rate Narrow Band)、自适应多速率宽带(AMR-WB,AdaptiveMulti-Rate Wide Band)和AMR-WB+等。混合型语音编码算法结合了波形编码和参数编码的特点,经过前述语音编码算法编码后的语音分组中,不同的比特位代表了不同的参数,具有不同的作用。其中,EVRC和AMR等都为变速率语音编码,经过不同的编码速率编码后的帧长度(或帧类型)是不同的。具体来说,EVRC是CDMA移动通信系统中最常用的语音编码算法之一,EVRC语音编码共有三种不同的语音帧类型(对应于三种编码速率),分别为全速率帧、半速率帧和1/8速率帧。通常,包含语音信息的帧使用全速率或半速率编码,只含背景噪声的语音帧则使用1/8速率进行编码。在EVRC中,每20毫秒的语音帧按不同速率编码后的分组长度各不相同。
表1示出EVRC全速率帧的语音编码帧结构,对于全速率帧来说,其语音分组长度为171比特。
比特 | 参数 | 比特 | 参数 | 比特 | 参数 | 比特 | 参数- |
1 | LPCFLAG | 46 | FCBSIDX(0,0)[1] | 91 | FCBSIDX(1,0)[3] | 136 | FCBSIDX(2,0)[5] |
2 | LSPIDX(1)[0] | 47 | FCBSIDX(0,0)[2] | 92 | FCBSIDX(1,0)[4] | 137 | FCBSIDX(2,0)[6] |
3 | LSPIDX(1)[1] | 48 | FCBSIDX(0,0)[3] | 93 | FCBSIDX(1,0)[5] | 138 | FCBSIDX(2,0)[7] |
4 | LSPIDX(1)[2] | 49 | FCBSIDX(0,0)[4] | 94 | FCBSIDX(1,0)[6] | 139 | FCBSIDX(2,1)[0] |
比特 | 参数 | 比特 | 参数 | 比特 | 参数 | 比特 | 参数- |
5 | LSPIDX(1)[3] | 50 | FCBSIDX(0,0)[5] | 95 | FCBSIDX(1,0)[7] | 140 | FCBSIDX(2,1)[1] |
6 | LSPIDX(1)[4] | 51 | FCBSIDX(0,0)[6] | 96 | FCBSIDX(1,1)[0] | 141 | FCBSIDX(2,1)[2] |
7 | LSPIDX(1)[5] | 52 | FCBSIDX(0,0)[7] | 97 | FCBSIDX(1,1)[1] | 142 | FCBSIDX(2,1)[3] |
8 | LSPIDX(2)[0] | 53 | FCBSIDX(0,1)[0] | 98 | FCBSIDX(1,1)[2] | 143 | FCBSIDX(2,1)[4] |
9 | LSPIDX(2)[1] | 54 | FCBSIDX(0,1)[1] | 99 | FCBSIDX(1,1)[3] | 144 | FCBSIDX(2,1)[5] |
10 | LSPIDX(2)[2] | 55 | FCBSIDX(0,1)[2] | 100 | FCBSIDX(1,1)[4] | 145 | FCBSIDX(2,1)[6] |
11 | LSPIDX(2)[3] | 56 | FCBSIDX(0,1)[3] | 101 | FCBSIDX(1,1)[5] | 146 | FCBSIDX(2,1)[7] |
12 | LSPIDX(2)[4] | 57 | FCBSIDX(0,1)[4] | 102 | FCBSIDX(1,1)[6] | 147 | FCBSIDX(2,2)[0] |
13 | LSPIDX(2)[5] | 58 | FCBSIDX(0,1)[5] | 103 | FCBSIDX(1,1)[7] | 148 | FCBSIDX(2,2)[1] |
14 | LSPIDX(3)[0] | 59 | FCBSIDX(0,1)[6] | 104 | FCBSIDX(1,2)[0] | 149 | FCBSIDX(2,2)[2] |
15 | LSPIDX(3)[1] | 60 | FCBSIDX(0,1)[7] | 105 | FCBSIDX(1,2)[1] | 150 | FCBSIDX(2,2)[3] |
16 | LSPIDX(3)[2] | 61 | FCBSIDX(0,2)[0] | 106 | FCBSIDX(1,2)[2] | 151 | FCBSIDX(2,2)[4] |
17 | LSPIDX(3)[3] | 62 | FCBSIDX(0,2)[1] | 107 | FCBSIDX(1,2)[3] | 152 | FCBSIDX(2,2)[5] |
18 | LSPIDX(3)[4] | 63 | FCBSIDX(0,2)[2] | 108 | FCBSIDX(1,2)[4] | 153 | FCBSIDX(2,2)[6] |
19 | LSPIDX(3)[5] | 64 | FCBSIDX(0,2)[3] | 109 | FCBSIDX(1,2)[5] | 154 | FCBSIDX(2,2)[7] |
20 | LSPIDX(3)[6] | 65 | FCBSIDX(0,2)[4] | 110 | FCBSIDX(1,2)[6] | 155 | FCBSIDX(2,3)[0] |
21 | LSPIDX(3)[7] | 66 | FCBSIDX(0,2)[5] | 111 | FCBSIDX(1,2)[7] | 156 | FCBSIDX(2,3)[1] |
22 | LSPIDX(3)[8] | 67 | FCBSIDX(0,2)[6] | 112 | FCBSIDX(1,3)[0] | 157 | FCBSIDX(2,3)[2] |
23 | LSPIDX(4)[0] | 68 | FCBSIDX(0,2)[7] | 113 | FCBSIDX(1,3)[1] | 158 | FCBSIDX(2,3)[3] |
24 | LSPIDX(4)[1] | 69 | FCBSIDX(0,3)[0] | 114 | FCBSIDX(1,3)[2] | 159 | FCBSIDX(2,3)[4] |
25 | LSPIDX(4)[2] | 70 | FCBSIDX(0,3)[1] | 115 | FCBSIDX(1,3)[3] | 160 | FCBSIDX(2,3)[5] |
比特 | 参数 | 比特 | 参数 | 比特 | 参数 | 比特 | 参数- |
26 | LSPIDX(4)[3] | 71 | FCBSIDX(0,3)[2] | 116 | FCBSIDX(1,3)[4] | 161 | FCBSIDX(2,3)[6] |
27 | LSPIDX(4)[4] | 72 | FCBSIDX(0,3)[3] | 117 | FCBSIDX(1,3)[5] | 162 | FCBSIDX(2,3)[7] |
28 | LSPIDX(4)[5] | 73 | FCBSIDX(0,3)[4] | 118 | FCBSIDX(1,3)[6] | 163 | FCBSIDX(2,3)[8] |
29 | LSPIDX(4)[6] | 74 | FCBSIDX(0,3)[5] | 119 | FCBSIDX(1,3)[7] | 164 | FCBSIDX(2,3)[9] |
30 | DELAY[0] | 75 | FCBSIDX(0,3)[6] | 120 | FCBSIDX(1,3)[8] | 165 | FCBSIDX(2,3)[10] |
31 | DELAY[1] | 76 | FCBSIDX(0,3)[7] | 121 | FCBSIDX(1,3)[9] | 166 | FCBGIDX(1)[0] |
32 | DELAY[2] | 77 | FCBSIDX(0,3)[8] | 122 | FCBSIDX(1,3)[10] | 167 | FCBGIDX(1)[1] |
33 | DELAY[3] | 78 | FCBSIDX(0,3)[9] | 123 | FCBGIDX(1)[0] | 168 | FCBGIDX(1)[2] |
34 | DELAY[4] | 79 | FCBSIDX(0,3)[10] | 124 | FCBGIDX(1)[1] | 169 | FCBGIDX(1)[3] |
35 | DELAY[5] | 80 | FCBGIDX(0)[0] | 125 | FCBGIDX(1)[2] | 170 | FCBGIDX(1)[4] |
36 | DELAY[6] | 81 | FCBGIDX(0)[1] | 126 | FCBGIDX(1)[3] | 171 | (reserved) |
37 | DDELAY[0] | 82 | FCBGIDX(0)[2] | 127 | FCBGIDX(1)[4] | ||
38 | DDELAY[1] | 83 | FCBGIDX(0)[3] | 128 | ACBGIDX(2)[0] | ||
39 | DDELAY[2] | 84 | FCBGIDX(0)[4] | 129 | ACBGIDX(2)[1] | ||
40 | DDELAY[3] | 85 | ACBGIDX(1)[0] | 130 | ACBGIDX(2)[2] | ||
41 | DDELAY[4] | 86 | ACBGIDX(1)[1] | 131 | FCBSIDX(2,0)[0] | ||
42 | ACBGIDX(0)[0] | 87 | ACBGIDX(1)[2] | 132 | FCBSIDX(2,0)[1] | ||
43 | ACBGIDX(0)[1] | 88 | FCBSIDX(1,0)[0] | 133 | FCBSIDX(2,0)[2] | ||
44 | ACBGIDX(0)[2] | 89 | FCBSIDX(1,0)[1] | 134 | FCBSIDX(2,0)[3] | ||
45 | FCBSIDX(0,0)[0] | 90 | FCBSIDX(1,0)[2] | 135 | FCBSIDX(2,0)[4] |
表1EVRC全速率帧的语音编码帧结构
表2示出EVRC半速率帧的语音编码帧结构,对于半速率帧来说,其对应的分组长度为80比特。
比特 | 参数 | 比特 | 参数 |
1 | LSPIDX(1)[0] | 41 | FCBSIDX(0,0)[8] |
2 | LSPIDX(1)[1] | 42 | FCBSIDX(0,0)[9] |
3 | LSPIDX(1)[2] | 43 | FCBGIDX(0)[0] |
4 | LSPIDX(1)[3] | 44 | FCBGIDX(0)[1] |
5 | LSPIDX(1)[4] | 45 | FCBGIDX(0)[2] |
6 | LSPIDX(1)[5] | 46 | FCBGIDX(0)[3] |
7 | LSPIDX(1)[6] | 47 | ACBGIDX(1)[0] |
8 | LSPIDX(2)[0] | 48 | ACBGIDX(1)[1] |
9 | LSPIDX(2)[1] | 49 | ACBGIDX(1)[2] |
10 | LSPIDX(2)[2] | 50 | FCBSIDX(1,0)[0] |
11 | LSPIDX(2)[3] | 51 | FCBSIDX(1,0)[1] |
12 | LSPIDX(2)[4] | 52 | FCBSIDX(1,0)[2] |
13 | LSPIDX(2)[5] | 53 | FCBSIDX(1,0)[3] |
14 | LSPIDX(2)[6] | 54 | FCBSIDX(1,0)[4] |
15 | LSPIDX(3)[0] | 55 | FCBSIDX(1,0)[5] |
16 | LSPIDX(3)[1] | 56 | FCBSIDX(1,0)[6] |
17 | LSPIDX(3)[2] | 57 | FCBSIDX(1,0)[7] |
18 | LSPIDX(3)[3] | 58 | FCBSIDX(1,0)[8] |
19 | LSPIDX(3)[4] | 59 | FCBSIDX(1,0)[9] |
比特 | 参数 | 比特 | 参数 |
20 | LSPIDX(3)[5] | 60 | FCBGIDX(1)[0] |
21 | LSPIDX(3)[6] | 61 | FCBGIDX(1)[1] |
22 | LSPIDX(3)[7] | 62 | FCBGIDX(1)[2] |
23 | DELAY[0] | 63 | FCBGIDX(1)[3] |
24 | DELAY[1] | 64 | ACBGIDX(2)[0] |
25 | DELAY[2] | 65 | ACBGIDX(2)[1] |
26 | DELAY[3] | 66 | ACBGIDX(2)[2] |
27 | DELAY[4] | 67 | FCBSIDX(2,0)[0] |
28 | DELAY[5] | 68 | FCBSIDX(2,0)[1] |
29 | DELAY[6] | 69 | FCBSIDX(2,0)[2] |
30 | ACBGIDX(0)[0] | 70 | FCBSIDX(2,0)[3] |
31 | ACBGIDX(0)[1] | 71 | FCBSIDX(2,0)[4] |
32 | ACBGIDX(0)[2] | 72 | FCBSIDX(2,0)[5] |
33 | FCBSIDX(0,0)[0] | 73 | FCBSIDX(2,0)[6] |
34 | FCBSIDX(0,0)[1] | 74 | FCBSIDX(2,0)[7] |
35 | FCBSIDX(0,0)[2] | 75 | FCBSIDX(2,0)[8] |
36 | FCBSIDX(0,0)[3] | 76 | FCBSIDX(2,0)[9] |
37 | FCBSIDX(0,0)[4] | 77 | FCBGIDX(1)[0] |
38 | FCBSIDX(0,0)[5] | 78 | FCBGIDX(1)[1] |
39 | FCBSIDX(0,0)[6] | 79 | FCBGIDX(1)[2] |
比特 | 参数 | 比特 | 参数 |
40 | FCBSIDX(0,0)[7] | 80 | FCBGIDX(1)[3] |
表2EVRC半速率帧的语音编码帧结构
表3示出EVRC 1/8速率帧的语音编码帧结构,对于1/8速率帧来说,其对应的分组长度为16比特。
比特 | 参数 |
1 | LSPIDX(1)[0] |
2 | LSPIDX(1)[1] |
3 | LSPIDX(1)[2] |
4 | LSPIDX(1)[3] |
5 | LSPIDX(2)[0] |
6 | LSPIDX(2)[1] |
7 | LSPIDX(2)[2] |
8 | LSPIDX(2)[3] |
9 | FCIDX[0] |
10 | FCIDX[1] |
11 | FCIDX[2] |
12 | FCIDX[3] |
13 | FCIDX[4] |
14 | FCIDX[5] |
15 | FCIDX[6] |
16 | FCIDX[7] |
表3EVRC 1/8速率帧的语音编码帧结构
表1-3所示的各个参数含义如下(k,j,m’的取值参见表1-3):
LPCFLAG:频谱转换标志(STI,Spectral TransitionIndicator)。
LSPIDX(k)[j]:第k个线谱对(LSP,Line Spectrum Pair)码本的第j比特(其中全速率帧有4个码本,半速率帧有3个码本,而1/8速率帧只有2个码本),LSP参数由线性预测(LPC,LinearPredictive Coding)编码参数通过一定的方式转换获得(可以理解为对同一个物理量/语音谱包络的不同数学表达形式,由于LSP相对LPC较优,所以应用更广),在语音解码端它用于模拟人的声道,构造合成滤波器。
DELAY[j]、DDELAY[j]:基音延迟、基音延迟差分的第j个比特,基音延迟即基音周期,是人的发声气流通过喉中的声门引起声带的周期性振动形成周期性的脉冲串并进入声道周期性脉冲串的周期。
ACBGIDX(m’)[j]:第m’个子帧的自适应码本增益索引的第j个比特,自适应码本增益代表了语音中周期性脉冲的增益。
FCBSIDX(m’,k)[j]:第m’个子帧的第k个固定码本轮廓索引的第j个比特(其中全速率帧有4个码本,半速率帧只有1个)。
FCBGIDX(m’)[j]:第m’个子帧的固定码本增益索引的第j个比特,固定码本代表了语音激励型号中的非周期性部分。
FGIDX[j]:帧能量增益的第j个比特,1/8速率编码时,代表了语音编码为背景噪声时,声道滤波器的高斯白噪声激励信号强度。
图1示出现有技术中EVRC语音编码器的结构示意图。如图1所示,EVRC编码器主要包括信号预处理模块、模型参数估计模块、速率判决模块、速率编码模块(如全速率、半速率或1/8速率编码模块)和数据包封装模块。语音采样信号和外部速率控制指令分别输入到编码器的信号预处理模块和速率判决模块中,语音采样信号经预处理模块进行高通滤波和噪声抑制处理后,被输出到模型参数估计模块中。由于EVRC语音编码是基于语音声学模型原理,其通过模型参数估计模块的估算和数字量化之后才执行语音传递,并非直接对语音的波形进行编码并传输。在图1中,经过估算获得模型参数之后,编码器根据不同的编码速率,对模型参数进行量化。
图2示出现有技术中EVRC语音编码算法中各种模型参数的量化比特位分配示意图。如图2所示,模型参数主要包括频谱转换标志(LPCFLAG)、线谱对(LSP)、Pitch Delay、Delta Delay、ACB(Adjusted Cost Base)Gain、FCB Shape、FCB Gain、FrameEnergy和预留。对应于不同的帧类型(如全速率编码的帧、半速率编码的帧、1/8速率编码的帧和空帧),各个模型参数的比特位数具体参见图2所示。
图3示出现有技术中EVRC语音解码器的结构示意图。如图3所示,EVRC解码器主要包括:帧错误检测模块、松散码激励线性预测(RCELP,Relaxed Code Excited Linear Prediction)解码模块和自适应后滤波模块。解码器接收到的语音编码帧和来自信道的数据包类型指示被分别输入到RCELP解码模块和帧错误检测模块,其中帧错误检测模块利用数据包类型指示确定当前帧的编码速率以及信道是否检测到帧错误。根据速率判决,解码器利用从接收到的语音包解码得到的参数来重新合成语音信号,并经过后置滤波后,输出最终的语音信号。
目前语音加密一般是对编码后的语音参数进行加密,但由于语音通信实时性要求高,因此在对语音进行加密时需要较高的运算复杂度,不利于满足语音通信的实时性要求。
发明内容
本发明要解决的一个技术问题是提供一种语音加密的方法及装置、语音解密的方法及装置,能够降低语音加密的复杂度。
本发明的一个方面提供了一种语音加密的方法,该方法包括:确定语音数据的加密级别;确定语音帧的帧类型;根据加密级别和帧类型确定语音帧的待加密的比特位;以及对待加密的比特位进行加密。
本发明提供的语音加密的方法的一个实施例中,该方法进一步包括:根据加密级别和帧类型确定语音帧的待加密的比特位后,根据加密级别和帧类型确定分组加密算法和分组长度;以及采用分组加密算法对待加密的比特位采用分组长度进行加密。
本发明提供的语音加密的方法的一个实施例中,该方法进一步包括:对待加密的比特位进行加密后,将加密后的语音比特位和不需加密的语音比特位按分类前的位置重新合成加密后的语音帧。
本发明的另一个方面提供了一种语音解密的方法,该方法包括:确定语音数据的加密级别;接收加密后的语音帧,并确定语音帧的帧类型;根据加密级别和帧类型确定语音帧中待解密的比特位;以及对待解密的比特位进行解密。
本发明提供的语音解密的方法的一个实施例中,该方法进一步包括:根据加密级别和帧类型确定语音帧中待解密的比特位后,根据加密级别和帧类型确定分组解密算法和分组长度;以及采用分组解密算法对待解密的比特位采用分组长度进行解密。
本发明提供的语音解密的方法的一个实施例中,该方法进一步包括:对待解密的比特位进行解密后,将解密后的语音比特位和不需解密的语音比特位按分类前的位置重新合成语音编码帧。
本发明的另一个方面提供了一种语音加密的装置,该装置包括:加密级别获取模块,用于确定语音数据的加密级别,向加密模块发送加密级别;帧类型确定模块,用于确定语音帧的帧类型,向加密模块发送帧类型;加密模块,用于接收加密级别获取模块发送的加密级别,接收帧类型确定模块发送的帧类型;以及根据加密级别和帧类型确定语音帧的待加密的比特位;以及对待加密的比特位进行加密。
本发明提供的语音加密的装置的一个实施例中,加密模块还用于根据加密级别和帧类型确定分组加密算法和分组长度;以及采用分组加密算法对待加密的比特位采用分组长度进行加密。
本发明提供的语音加密的装置的一个实施例中,该装置还包括:加密后语音帧合成模块,用于接收加密模块加密后的语音比特位,并将加密后的语音比特位和不需加密的语音比特位按分类前的位置重新合成加密后的语音帧。
本发明的另一个方面提供了一种语音解密的装置,该装置包括:加密级别获取模块,用于确定语音数据的加密级别,并向解密模块发送加密级别;加密后帧类型确定模块,用于接收加密模块加密处理后的语音帧,确定加密后的语音帧的帧类型,并向解密模块发送加密后的语音帧的帧类型;解密模块,用于接收加密级别获取模块发送的加密级别,接收加密后帧类型确定模块发送的加密后的语音帧的帧类型,以及根据加密级别和帧类型确定语音帧中待解密的比特位;以及对待解密的比特位进行解密。
本发明提供的语音解密的装置的一个实施例中,解密模块还用于根据加密级别和帧类型确定分组解密算法和分组长度;以及采用分组解密算法对待解密的比特位采用分组长度进行解密。
本发明提供的语音解密的装置的一个实施例中,该装置还包括:解密后语音帧合成模块,用于接收解密模块解密后的语音比特位,并将解密后的语音比特位和不需解密的语音比特位按分类前的位置,重新合成语音编码帧。
本发明提供的语音加密的方法及装置、语音解密的方法及装置,对不同安全级别要求和帧类型的语音帧的特定比特位使用不同的语音加密方式,从而降低了语音加密的复杂度,满足了加密语音通信的实时性要求。
附图说明
图1示出现有技术中EVRC语音编码器的结构示意图;
图2示出现有技术中EVRC语音编码算法中各种模型参数的量化比特位分配示意图;
图3示出现有技术中EVRC语音解码器的结构示意图;
图4示出本发明提供的一种语音加密的方法的一个实施例的流程图;
图5示出本发明EVRC语音编码方式下加密级别与不同帧类型对应的待加密语音编码比特位示意图;
图6示出本发明提供的一种语音加密的方法的另一个实施例的流程图;
图7示出本发明提供的一种语音解密的方法的一个实施例的流程图;
图8示出本发明提供的一种语音解密的方法的另一个实施例的流程图;
图9示出本发明提供的一种语音加密的方法的再一个实施例的流程图;
图10示出本发明提供的一种语音解密的方法的再一个实施例的流程图;
图11示出本发明提供的一种语音加解密的方法的一个实施例的流程图;
图12示出本发明提供的一种语音加解密的方法的另一个具体实施例的流程图;
图13示出本发明中密钥Key协商获取方法的流程图;
图14示出本发明提供的一种语音加密的装置的一个实施例的结构示意图;
图15示出本发明提供的一种语音加密的装置的另一个实施例的结构示意图;
图16示出本发明提供的一种语音解密的装置的一个实施例的结构示意图;
图17示出本发明提供的一种语音解密的装置的另一个实施例的结构示意图;
图18示出本发明提供的一种语音加解密的系统的一个实施例的结构示意图;
图19示出本发明提供的一种语音加解密的系统的另一个具体实施例的结构示意图。
具体实施方式
下面参照附图对本发明进行更全面的描述,其中说明本发明的示例性实施例。
本发明下面的实施例以EVRC编码方式为例,对本发明的主旨和技术方案加以说明。应当理解,本发明列举的实施例并不局限于具体的语音编码算法;对于本领域技术人员来说,可以将其它语音编码算法应用于本发明给出的技术方案中,如AMR等。
图4示出本发明提供的一种语音加密的方法的一个实施例的流程图。
如图4所示,语音加密的方法流程400包括:步骤402,确定语音数据的加密级别。例如,语音数据的加密级别可以采用固定方式(如预先设定传输的语音数据的加密级别,或者通过预定标识位识别相应的加密级别),或者通过协商完成,本发明不限定具体的协商方式,本领域技术人员可以根据具体实施的需要来确定使用哪种协商方式。稍后对加密级别及对应的待加密的比特位分配做进一步的详细介绍。
步骤404,确定语音帧的帧类型。例如,以EVRC语音编码方式对语音数据进行编码为例,EVRC语音编码方式每20毫秒产生一帧语音,帧长根据帧类型/编码速率的不同而不同,采用全速率编码,其帧长为171比特;采用半速率编码,其帧长为80比特,采用1/8速率编码,其帧长为16比特;加密器接收到编码器编码后的语音帧后,确定该语音帧的帧类型(如是全速率帧、半速率帧还是1/8速率帧)。
步骤406,根据加密级别和帧类型确定语音帧的待加密的比特位。例如,鉴于编码帧中各个比特位对应的参数在语音编解码中的重要性程度不同,本发明根据不同的安全性要求,对不同加密级别和不同帧类型下的帧的比特位进行区分,从而确定该帧的待加密的比特位(如图5所示)。
步骤408,对待加密的比特位进行加密。例如,根据前述确定对语音帧编解码重要的比特位(即待加密的比特位)进行分组加密处理。
接下来对加密级别及对应的待加密的比特位分配做进一步的说明。混合型语音编码算法结合了波形编码和参数编码的特点,编码后的语音分组,对应于不同的编码速率其帧长是不一样的;不同的比特位代表了不同的参数,具有不同的作用;同时,同一帧中的不同比特位的重要程度也是不一样的。通过对表1-3中所示的参数进行研究分析后知晓,LSPIDX(k)[j]在语音解码端它用于模拟人的声道,构造合成滤波器,对于重建语音的可理解性有很大的作用。不同性别、年龄的人基音周期相差较大,DELAY[j]、DDELAY[j]在语音解码端对语音的重建也具有较大的作用。ACBGIDX(m’)[j]对于人耳区分浊音发音和静音具有较大的作用。FCBGIDX(m’)[j]的作用相对于自适应码本较低。由于不同的声学模型参数对恢复语音具有不同的重要程度,LSP参数、基音延迟和自适应码本增益对重建语音的可懂度贡献最大,所起的作用也非常关键;因此,EVRC语音编码中的不同比特位的重要程度是不同的。基于前述理由,本发明创造性地提出在语音加密过程中可以根据不同的加密级别对不同重要程度的比特流进行加密。具体来说,在安全级别较低的情况下,可以只对LSP参数、基音延迟和自适应码本增益参数进行加密,在安全级别要求较高的情况下,才需要对所有语音参数进行加密。因此在进行语音分组加密时,可以使用不同分组长度的加密算法,从而利用加密级别结合语音的不同帧类型进行自适应的语音加密。
图5示出本发明EVRC语音编码方式下加密级别与不同帧类型对应的待加密语音编码比特位示意图。如图5所示,加密级别可分为三级,分别是加密级别1、加密级别2和加密级别3(可以使用如图5所示的加密级别逐级加强的方式,加密级别1的安全性较低,加密级别2的安全性较高,加密级别1的安全性最高);在三个加密级别下,对应于不同的帧类型(如全速率帧、半速率帧和1/8速率帧),需要进行加密的帧的比特位是不同的。例如,对于全速率帧而言,当系统/语音数据的加密级别采用加密级别1时,根据前述描述的EVRC语音编码中的不同比特位的重要程度,只需要对全速率帧中的第2-44,80-87,123-130以及166-170位共64个比特位进行分组加密处理;当系统/语音数据的加密级别采用加密级别2时,只需要对全速率帧中的第1-44,48-52,56-60,64-68,74-87,91-95,99-103,107-111,117-130,134-138,142-146,150-154以及160-170位共128个比特位进行分组加密处理;当系统/语音数据采用最高安全性的加密级别3时,可以对全速率帧中的所有171个比特位进行分组加密处理。其它帧类型的待加密语音编码比特位具体可参见图5所示。
本发明提供的语音加密的方法,充分挖掘编码帧中各个比特位对应的参数在语音编解码中的重要性,根据语音通信不同安全性的要求,对不同加密级别和不同帧类型下的帧的比特位进行区分,对语音帧编解码重要的比特位进行分组加解密处理,从而无需对所有的语音帧都进行加解密处理,降低了加解密运算的复杂度以及对软硬件设备的要求,有利于加密语音通信的实时性要求。
图6示出本发明提供的一种语音加密的方法的另一个实施例的流程图。
如图6所示,语音加密的方法流程600包括:步骤602,确定语音数据的加密级别。例如,语音数据的加密级别可以采用固定方式(如预先设定传输的语音数据的加密级别,或者通过预定标识位识别相应的加密级别),或者通过协商完成,本发明不限定具体的协商方式,本领域技术人员可以根据具体实施的需要来确定使用哪种协商方式。
步骤604,确定语音帧的帧类型。例如,以EVRC语音编码方式对语音数据进行编码为例,EVRC语音编码方式每20毫秒产生一帧语音,帧长根据帧类型/编码速率的不同而不同;加密器接收到编码器编码后的语音帧后,确定该语音帧的帧类型是全速率帧、半速率帧还是1/8速率帧。
步骤606,根据加密级别和帧类型确定待加密的比特位、分组加密算法以及分组长度。例如,对于EVRC语音编码方式,当系统/语音数据的加密级别采用加密级别1时,确定全速率帧中待加密的语音比特位包括第2-44,80-87,123-130以及166-170位;从而将EVRC语音编码的全速率帧分为待加密语音编码比特位和不需加密语音编码比特位(需要说明的是,根据不同的加密级别和帧类型,有可能出现将所有的EVRC语音编码比特都归类为待加密语音编码比特或不需加密语音编码比特)。随后根据加密级别和帧类型来确定分组加密算法和分组长度,本发明可以采用现有的分组加密算法,例如最常用的对称密码算法(DES)、IDEA算法或RC5算法,其它一些较常用的算法还包括Blowfish算法、CAST算法或RC2算法,鉴于算法本身不是本发明要改进的细节,因此这里不再赘述,本领域技术人员根据现有技术的教导知晓如何使用前述给出的分组加密算法以及确定相应的分组长度。
步骤608,采用分组加密算法对待加密的比特位采用分组长度进行加密。例如,根据前述选取的分组加密算法(如RC5算法)对待加密的语音比特位(如加密级别1、全速率帧下的第2-44,80-87,123-130以及166-170位)进行分组加密。
图7示出本发明提供的一种语音解密的方法的一个实施例的流程图。
如图7所示,语音解密的方法流程700包括:步骤702,确定语音数据的加密级别。语音数据的加密级别可以采用固定方式(如预先设定传输的语音数据的加密级别,或者通过预定标识位识别相应的加密级别),或者通过协商完成;本发明不限定具体的协商方式,本领域技术人员可以根据具体实施的需要来确定使用哪种协商方式。例如,语音解密的方法中可以根据语音加密的方法流程中确定的语音数据的加密级别来确定该语音数据的加密级别。
步骤704,接收加密后的语音帧并确定语音帧的帧类型。例如,在根据加密级别和帧类型对编码帧进行分组加密处理后,将加密处理后的语音编码帧发送给解密器的接收模块,由解密器的接收模块来确定该加密后的语音帧的帧类型。该加密后的语音帧可以采用与加密前的语音帧相同的帧类型,也可以不同;加密后的帧类型可以由解密器的接收模块来实际获取。
步骤706,根据加密级别和帧类型确定语音帧中待解密的比特位。编码帧中各个比特位对应的参数在语音编解码中的重要性程度不同,本发明根据不同的安全性要求,对不同加密级别和不同帧类型下的帧的比特位进行区分,从而确定该帧的待加密的比特位(如图5所示);对应的待加密的比特位在进行加密处理后可以作为解密处理中待解密的比特位。
步骤708,对待解密的比特位进行解密。例如,根据系统/语音数据的加密级别,以及获取的帧类型,采用分组加密的密钥对加密后的语音编码帧进行分组解密处理。分组解密处理后的编码帧被传送给EVRC语音解码器,从而对编码的语音帧进行解码处理,完成对语音通信数据的加解密和传输过程。
图8示出本发明提供的一种语音解密的方法的另一个实施例的流程图。
如图8所示,语音解密的方法流程800包括:步骤802,确定语音数据的加密级别。语音数据的加密级别可以采用固定方式(如预先设定传输的语音数据的加密级别,或者通过预定标识位识别相应的加密级别),或者通过协商完成;本发明不限定具体的协商方式,本领域技术人员可以根据具体实施的需要来确定使用哪种协商方式。例如,语音解密的方法中可以根据语音加密的方法流程中确定的语音数据的加密级别来确定该语音数据的加密级别。
步骤804,接收加密后的语音帧并确定语音帧的帧类型。例如,在根据加密级别和帧类型对编码帧进行分组加密处理后,将加密处理后的语音编码帧发送给解密器的接收模块,由解密器的接收模块来确定该加密后的语音帧的帧类型。该加密后的语音帧可以采用与加密前的语音帧相同的帧类型,也可以不同;加密后的帧类型可以由解密器的接收模块来实际获取。
步骤806,根据加密级别和帧类型确定待解密的语音比特位、分组解密算法以及分组长度。例如,对于EVRC语音编码方式,当系统/语音数据的加密级别采用加密级别1时,确定全速率帧中待解密的语音比特位包括第2-44,80-87,123-130以及166-170位;随后由加密后帧类型确定模块接收分组加密处理后的语音帧,并由分组解密模块根据加密级别和帧类型来确定分组解密算法和分组长度;本发明可以采用现有的分组解密算法,例如采用比较常用的DES算法、IDEA算法或RC5算法进行分组解密。鉴于算法本身不是本发明要改进的细节,因此这里不再赘述,本领域技术人员根据现有技术的教导知晓如何使用前述给出的分组解密算法以及确定相应的分组长度。
步骤808,采用解密算法对待解密的语音比特位采用分组长度进行解密。例如,根据前述选取的分组解密算法(如RC5算法)对已加密的语音比特位(如加密级别1、全速率帧下的第2-44,80-87,123-130以及166-170位)进行分组解密。分组解密处理后的编码帧被传送给EVRC语音解码器,从而对编码的语音帧进行解码处理,完成对语音通信数据的加解密和传输过程。
图9示出本发明提供的一种语音加密的方法的再一个实施例的流程图。
如图9所示,语音加密的方法流程900包括:步骤902,确定语音数据的加密级别。例如,语音数据的加密级别可以采用固定方式(如预先设定传输的语音数据的加密级别,或者通过预定标识位识别相应的加密级别),或者通过协商完成,本发明不限定具体的协商方式,本领域技术人员可以根据具体实施的需要来确定使用哪种协商方式。稍后对加密级别及对应的待加密的比特位分配做进一步的详细介绍。
步骤904,确定语音帧的帧类型。例如,以EVRC语音编码方式对语音数据进行编码为例,EVRC语音编码方式每20毫秒产生一帧语音,帧长根据帧类型/编码速率的不同而不同;加密器接收到编码器编码后的语音帧后,确定该语音帧的帧类型是全速率帧、半速率帧还是1/8速率帧。
步骤906,根据加密级别和帧类型对语音数据的待加密的比特位进行分组加密。例如,鉴于编码帧中各个比特位对应的参数在语音编解码中的重要性程度不同,本发明根据不同的安全性要求,对不同加密级别和不同帧类型下的帧的比特位进行区分,对语音帧编解码重要的比特位进行分组加密处理。
步骤908,将加密后的语音比特位和不需加密的语音比特位按分类前的位置重新合成加密后的语音帧。例如,对待加密的特定比特位完成分组加密后,发送方将“加密之后的语音编码比特位”和“不需加密语音编码比特位”按分类前的位置(如按照原全速率帧第1至171位的顺序,按照半速率帧第1至80位的顺序,或者按照1/8速率帧第1至16位帧的顺序),重新合成“加密后语音帧”并通过网络传送到接收方(如解密设备)。
图10示出本发明提供的一种语音解密的方法的再一个实施例的流程图。
如图10所示,语音加密的方法流程1000包括:步骤1002,确定语音数据的加密级别。例如,语音数据的加密级别可以采用固定方式(如预先设定传输的语音数据的加密级别,或者通过预定标识位识别相应的加密级别),或者通过协商完成,本发明不限定具体的协商方式,本领域技术人员可以根据具体实施的需要来确定使用哪种协商方式。
步骤1004,接收加密后的语音帧并确定语音帧的帧类型。例如,在根据加密级别和帧类型对编码帧进行分组加密处理后,将加密处理后的语音编码帧发送给解密器的接收模块,由解密器的接收模块来确定该加密后的语音帧的帧类型。该加密后的语音帧可以采用与加密前的语音帧相同的帧类型,也可以不同;加密后的帧类型可以由解密器的接收模块来实际获取。
步骤1006,根据加密级别和帧类型对语音数据的待解密比特位进行解密。例如,根据系统/语音数据的加密级别,以及获取的帧类型,采用分组加密的密钥对“加密后语音帧”进行分组解密处理。
步骤1008,将解密后的语音比特位和不需解密的语音比特位按分类前的位置重新合成语音编码帧。例如,利用分组加密密钥Key对已加密语音编码比特进行解密,并在待解密的特定比特位完成分组解密处理后,解密装置将“解密之后的语音编码比特位”和“不需解密语音编码比特位”按分类前的位置(如按照原全速率帧第1至171位的顺序,按照半速率帧第1至80位的顺序,或者按照1/8速率帧第1至16位帧的顺序),重新合成“解密后语音帧”并通过网络传送到接收方(如解码设备)。
图11示出本发明提供的一种语音加解密的方法的一个实施例的流程图。
如图11所示,语音加密的方法流程1100包括:步骤1102,确定语音数据的加密级别。例如,语音数据的加密级别可以采用固定方式(如预先设定传输的语音数据的加密级别,或者通过预定标识位识别相应的加密级别),或者通过协商完成,本发明不限定具体的协商方式,本领域技术人员可以根据具体实施的需要来确定使用哪种协商方式。稍后对加密级别及对应的待加密的比特位分配做进一步的详细介绍。
步骤1104,接收编码后的语音帧并确定语音帧的帧类型。例如,以EVRC语音编码方式对语音数据进行编码为例,EVRC语音编码方式每20毫秒产生一帧语音,帧长根据帧类型/编码速率的不同而不同;加密器接收到编码器编码后的语音帧后,确定该语音帧的帧类型是全速率帧、半速率帧还是1/8速率帧。
步骤1106,根据加密级别和帧类型对语音数据的待加密的比特位进行分组加密。例如,鉴于编码帧中各个比特位对应的参数在语音编解码中的重要性程度不同,本发明根据不同的安全性要求,对不同加密级别和不同帧类型下的帧的比特位进行区分,对语音帧编解码重要的比特位进行分组加密处理。
步骤1108,将加密后的语音比特位和不需加密的语音比特位按分类前的位置重新合成加密后的语音帧。例如,对待加密的特定比特位完成分组加密后,发送方将“加密之后的语音编码比特位”和“不需加密语音编码比特位”按分类前的位置(如按照原全速率帧第1至171位的顺序,按照半速率帧第1至80位的顺序,或者按照1/8速率帧第1至16位帧的顺序),重新合成“加密后语音帧”并通过网络传送到接收方(如解密设备)
步骤1110,接收加密后的语音帧并确定语音帧的帧类型。例如,在根据加密级别和帧类型对编码帧进行分组加密处理后,将加密处理后的语音编码帧发送给解密器的接收模块,由解密器的接收模块来确定该加密后的语音帧的帧类型。该加密后的语音帧可以采用与加密前的语音帧相同的帧类型,也可以不同;加密后的帧类型可以由解密器的接收模块来实际获取。
步骤1112,根据加密级别和帧类型对语音数据的待解密比特位进行分组解密。例如,根据系统/语音数据的加密级别,以及获取的帧类型,采用分组加密的密钥对“加密后语音帧”进行分组解密处理。
步骤1114,将解密后的语音比特位和不需解密的语音比特位按分类前的位置重新合成语音编码帧。例如,利用分组加密密钥Key对已加密语音编码比特进行解密,并在待解密的特定比特位完成分组解密处理后,解密装置将“解密之后的语音编码比特位”和“不需解密语音编码比特位”按分类前的位置(如按照原全速率帧第1至171位的顺序,按照半速率帧第1至80位的顺序,或者按照1/8速率帧第1至16位帧的顺序),重新合成“解密后语音帧”并通过网络传送到接收方(如解码设备)。
图12示出本发明提供的一种语音加解密的方法的另一个具体实施例的流程图。
如图12所示,语音加密的方法流程1200包括:步骤1202,确定语音数据的加密级别。例如,语音数据的加密级别可以采用固定方式(如预先设定传输的语音数据的加密级别,或者通过预定标识位识别相应的加密级别),或者通过协商完成,本发明不限定具体的协商方式,本领域技术人员可以根据具体实施的需要来确定使用哪种协商方式。
步骤1204,接收编码后的语音帧并确定语音帧的帧类型。例如,以EVRC语音编码方式对语音数据进行编码为例,EVRC语音编码方式每20毫秒产生一帧语音,帧长根据帧类型/编码速率的不同而不同;加密器接收到编码器编码后的语音帧后,确定该语音帧的帧类型是全速率帧、半速率帧还是1/8速率帧。
步骤1206,根据加密级别和帧类型确定待加密的语音比特位、分组加密算法以及分组长度。例如,对于EVRC语音编码方式,当系统/语音数据的加密级别采用加密级别1时,确定全速率帧中待加密的语音比特位包括第2-44,80-87,123-130以及166-170位;从而将EVRC语音编码的全速率帧分为待加密语音编码比特位和不需加密语音编码比特位。随后根据加密级别和帧类型来确定分组加密算法和分组长度,本发明采用对称密码算法(DES)进行加密处理。
步骤1208,采用分组加密算法对待加密的语音比特位采用分组长度进行加密。例如,根据前述选取的分组加密算法(如RC5算法)对待加密的语音比特位(如加密级别1、全速率帧下的第2-44,80-87,123-130以及166-170位)利用密钥Key,采用选定的分组加密算法对待加密语音编码比特进行加密。稍后对密钥Key获取方法作进一步的详细说明。
步骤1210,将加密后的语音比特位和不需加密的语音比特位按分类前的位置重新合成加密后的语音帧。例如,对待加密的特定比特位完成分组加密后,发送方将“加密之后的语音编码比特位”和“不需加密语音编码比特位”按分类前的位置(如按照原全速率帧第1至171位的顺序,按照半速率帧第1至80位的顺序,或者按照1/8速率帧第1至16位帧的顺序),重新合成“加密后语音帧”并通过网络传送到接收方(如解密设备)。
步骤1212,接收加密后的语音帧并确定语音帧的帧类型。例如,在根据加密级别和帧类型对编码帧进行分组加密处理后,将加密处理后的语音编码帧发送给解密器的接收模块,由解密器的接收模块来确定该加密后的语音帧的帧类型。该加密后的语音帧可以采用与加密前的语音帧相同的帧类型,也可以不同;加密后的帧类型可以由解密器的接收模块来实际获取。
步骤1214,根据加密级别和帧类型确定待解密的语音比特位、分组解密算法以及分组长度。例如,对于EVRC语音编码方式,当系统/语音数据的加密级别采用加密级别1时,确定全速率帧中待解密的语音比特位包括第2-44,80-87,123-130以及166-170位;随后由加密后帧类型确定模块接收分组加密处理后的语音帧,并由分组解密模块根据加密级别和帧类型来确定分组解密算法和分组长度;本发明可以采用现有的分组解密算法,例如采用比较常用的DES算法、IDEA算法或RC5算法进行分组解密。鉴于算法本身不是本发明要改进的细节,因此这里不再赘述,本领域技术人员根据现有技术的教导知晓如何使用前述给出的分组解密算法以及确定相应的分组长度。
步骤1216,根据加密级别和帧类型对语音数据的待解密比特位进行分组解密。例如,根据系统/语音数据的加密级别,以及获取的帧类型,采用分组加密的密钥对“加密后语音帧”进行分组解密处理。本发明采用对称密码算法(DES)对已加密语音编码比特利用选定的分组解密算法和密钥Key进行解密。
步骤1218,将解密后的语音比特位和不需解密的语音比特位按分类前的位置重新合成语音编码帧。例如,利用分组加密密钥Key对已加密语音编码比特进行解密,并在待解密的特定比特位完成分组解密处理后,解密装置将“解密之后的语音编码比特位”和“不需解密语音编码比特位”按分类前的位置(如按照原全速率帧第1至171位的顺序,按照半速率帧第1至80位的顺序,或者按照1/8速率帧第1至16位帧的顺序),重新合成“解密后语音帧(即初始未加密的EVRC语音帧)”并通过网络传送到接收方(如解码设备)。
本实施例中采用对称密码算法(DES)对EVRC语音帧进行加解密处理,使用的密钥(Key)可以是相同的,例如密钥使用固定的密钥,也可以使用各种密钥协商方法进行协商获得,如Diffie-Hellman密钥协商方法;具体参考发明申请“会话密钥分发方法及系统”(申请号为200810172085.6,申请日为2008.10.29,申请人是中国电信股份有限公司,公开号为CN101383698,公开日为2009.03.11)。
图13示出本发明中密钥Key协商获取方法的流程图。如图13所示,密钥协商获取系统1300中密钥管理中心1304主要用于密钥的分发,密钥的协商获取方法主要包括:
步骤S1,语音发送方1302向密钥管理中心1304发送第一密钥请求消息,该第一密钥请求消息中包括语音发送方生成的第一临时公钥。
步骤S2,密钥管理中心1304根据所述第一密钥请求消息生成通信会话密钥Key,并向与语音发送方1302进行通信的语音接收方1306发送加密通知消息。
步骤S3,语音接收方1306收到加密通知消息后,向密钥管理中心1304发送第二密钥请求消息,该第二密钥请求消息中包括语音接收方1306生成的第二临时公钥。
步骤S4,密钥管理中心1304收到语音接收方1306的第二密钥请求消息后,分别利用第一临时公钥和第二临时公钥对所述通信会话密钥Key进行加密;步骤S4a,将包括利用所述第一临时公钥加密后的第一密钥响应消息发回语音发送方1302,以及步骤S4b,将包括利用所述第二临时公钥加密后的第二密钥响应消息发回语音接收方1306。
图14示出本发明提供的一种语音加密的装置的一个实施例的结构示意图。
如图14所示,语音加密的装置1400包括:加密级别获取模块1402、帧类型确定模块1404和加密模块1406。
其中,加密级别获取模块1402,用于确定语音数据的加密级别,并向加密模块1406发送加密级别(如采用发送含有加密级别的消息的方式或类似方式)。例如,语音数据的加密级别可以采用固定方式(如预先设定传输的语音数据的加密级别,或者通过预定标识位识别相应的加密级别),或者通过协商完成,本发明不限定具体的协商方式,本领域技术人员可以根据具体实施的需要来确定使用哪种协商方式。加密级别获取模块1402用于从语音通信系统获取语音数据的加密级别,或根据接收到通信消息的预定标识位获取语音数据的加密级别。
帧类型确定模块1404,用于从编码器1401接收编码后的语音帧,确定编码后的语音帧的帧类型,并向加密模块1406发送帧类型(如通过发送含有帧类型的消息的方式或类似方式)。
加密模块1406,用于接收加密级别获取模块1402发送的加密级别,接收帧类型确定模块1404发送的帧类型;以及根据加密级别获取模块1402获取的加密级别和帧类型确定模块1404确定的帧类型确定语音帧的待加密的比特位;以及对该语音帧的待加密的比特位进行分组加密。
本发明提供的分组加密的装置的一个实施例中,加密模块1406还用于根据加密级别和帧类型确定分组加密算法和分组长度;以及采用分组加密算法对待加密的比特位采用分组长度进行加密处理。例如,例如,对于EVRC语音编码方式,当系统/语音数据的加密级别采用加密级别1时,确定全速率帧中待加密的语音比特位包括第2-44,80-87,123-130以及166-170位;从而将EVRC语音编码的全速率帧分为待加密语音编码比特位和不需加密语音编码比特位。随后根据加密级别和帧类型来确定分组加密算法和分组长度,本发明可以采用对称密码算法(DES)进行加密处理。
本发明提供的分组加密的装置,对不同安全级别要求和帧类型的语音帧的特定比特位使用不同的语音加密方式,从而降低了语音加密的复杂度。在完成对语音帧的分组加密处理后,将加密后的语音帧发送给解密装置1407。
图15示出本发明提供的一种语音加密的装置的一个实施例的结构示意图。
如图15所示,语音加密的装置1500包括:加密级别获取模块1502、帧类型确定模块1504、分组加密模块1506和加密后语音帧合成模块1508。其中加密级别获取模块1502、帧类型确定模块1504和加密模块1506分别可以是与图14所示加密级别获取模块1402、帧类型确定模块1404和加密模块1406具有相同或相似的功能模块;为简洁起见,这里不再赘述。
如图15所示,语音加密的装置1500还包括:加密后语音帧合成模块1508,用于接收加密模块1506加密后的语音比特位,并将加密后的语音比特位和不需加密的语音比特位按分类前的位置重新合成加密后的语音帧;以及将合成加密后的语音帧发送给解密装置1507。
图16示出本发明提供的一种语音解密的装置的一个实施例的结构示意图。
如图16所示,语音解密的装置1600包括:加密级别获取模块1602、加密后帧类型确定模块1604和解密模块1606。
加密级别获取模块1602,用于确定语音数据的加密级别,并向解密模块1606发送加密级别(如发送含有加密级别的消息的方式或类似方式)。例如,语音数据的加密级别可以采用固定方式(如预先设定传输的语音数据的加密级别,或者通过预定标识位识别相应的加密级别),或者通过协商完成,本发明不限定具体的协商方式,本领域技术人员可以根据具体实施的需要来确定使用哪种协商方式。提取模块1602用于从语音通信系统获取语音数据的加密级别,或根据接收到通信消息的预定标识位获取语音数据的加密级别。
加密后帧类型确定模块1604,用于接收加密装置1601加密处理后的语音帧,确定加密后的语音帧的帧类型,并向解密模块1606发送含有加密后语音帧的帧类型的消息。
解密模块1606,用于接收加密级别获取模块1602发送的加密级别,接收加密后帧类型确定模块1604发送的加密后语音帧的帧类型,以及根据加密级别获取模块1602获取的加密级别和加密后帧类型确定模块1604确定的帧类型对语音数据的待解密比特位进行分组解密,并将解密后的语音帧发送给解码器1607。
本发明提供的语音解密的装置的一个实施例中,解密模块1608还用于根据加密级别和帧类型确定待解密的语音比特位、分组解密算法以及分组长度;以及采用分组解密算法对待解密的语音比特位采用分组长度进行解密。例如,对于EVRC语音编码方式,当系统/语音数据的加密级别采用加密级别1时,确定全速率帧中待解密的语音比特位包括第2-44,80-87,123-130以及166-170位;随后由加密后帧类型确定模块接收分组加密处理后的语音帧,并由分组解密模块根据加密级别和帧类型来确定分组解密算法和分组长度;本发明可以采用现有的分组解密算法,例如采用比较常用的DES算法、IDEA算法或RC5算法进行分组解密。鉴于算法本身不是本发明要改进的细节,因此这里不再赘述,本领域技术人员根据现有技术的教导知晓如何使用前述给出的分组解密算法以及确定相应的分组长度。
本发明提供的语音解密的装置,充分利用不同速率的语音编码帧长度不同、且同一帧中不同比特位的重要程度不相同的特点,有选择性地区分语音编码帧中待加解密的比特位和无需加解密的比特位,从而降低了加解密算法的复杂度和运算的数据量,降低了对加解密软硬件的要求。
图17示出本发明提供的一种语音解密的装置的另一个实施例的结构示意图。
如图17所示,语音解密的装置1700包括:加密级别获取模块1702、加密后帧类型确定模块1704、解密模块1706和解密后语音帧合成模块1708。其中加密级别获取模块1702、加密后帧类型确定模块1704和解密模块1706分别可以是与图16所示加密级别获取模块1602、加密后帧类型确定模块1604和解密模块1606具有相同或相似的功能模块;为简洁起见,这里不再赘述。
如图17所示,语音解密的装置1700还包括:解密后语音帧合成模块1708,用于接收解密模块1706解密后的语音比特位,并将解密后的语音比特位和不需解密的语音比特位按分类前的位置,重新合成语音编码帧;以及将语音编码帧发送给语音解码器1707。例如,利用分组加密密钥Key对已加密语音编码比特进行解密,并在待解密的特定比特位完成分组解密处理后,解密装置将“解密之后的语音编码比特位”和“不需解密语音编码比特位”按分类前的位置(如按照原全速率帧第1至171位的顺序,按照半速率帧第1至80位的顺序,或者按照1/8速率帧第1至16位帧的顺序),重新合成“解密后语音帧(即初始未加密的EVRC语音帧)”并通过网络传送到接收方(如解码设备)。
图18示出本发明提供的一种语音加解密的系统的一个实施例的结构示意图。
如图18所示,语音加解密的系统1800包括:加密级别获取模块1802、帧类型确定模块1804、加密模块1806、加密后帧类型确定模块1808和解密模块1810。
其中,加密级别获取模块1802,用于确定语音数据的加密级别,并向加密模块1806和解密模块1810发送加密级别(如发送含有加密级别的消息的方式或类似方式)。例如,语音数据的加密级别可以采用固定方式(如预先设定传输的语音数据的加密级别,或者通过预定标识位识别相应的加密级别),或者通过协商完成,本发明不限定具体的协商方式,本领域技术人员可以根据具体实施的需要来确定使用哪种协商方式。加密级别获取模块1802用于从语音通信系统获取语音数据的加密级别,或根据接收到通信消息的预定标识位获取语音数据的加密级别。
帧类型确定模块1804,用于从编码器1801接收编码后的语音帧,确定编码后的语音帧的帧类型,并向加密模块1806发送含有帧类型的消息。
加密模块1806,用于接收加密级别获取模块1802发送的加密级别,接收帧类型确定模块1804发送的帧类型;以及根据加密级别获取模块1802获取的加密级别和帧类型确定模块1804确定的帧类型确定语音帧的待加密的比特位;以及对该语音帧的待加密的比特位进行分组加密。
加密后帧类型确定模块1808,用于接收加密模块1806加密处理后的语音帧,确定加密后的语音帧的帧类型,并向解密模块1810发送含有加密后语音帧的帧类型的消息。
解密模块1810,用于接收加密级别获取模块1802发送的含有加密级别的消息,接收加密后帧类型确定模块1808发送的含有加密后语音帧的帧类型的消息,以及根据加密级别获取模块1802获取的加密级别和加密后帧类型确定模块1808确定的帧类型对语音数据的待解密比特位进行分组解密,并将解密后的语音帧发送给解码器1807。
图19示出本发明提供的一种语音加解密的系统的另一个具体实施例的结构示意图。
如图19所示,语音加解密的系统1900包括:加密级别获取模块1902、帧类型确定模块1904、加密模块1906、加密后语音帧合成模块1905、加密后帧类型确定模块1908、解密模块1910和解密后语音帧合成模块1911。
其中,加密级别获取模块1902,用于确定语音数据的加密级别,并向加密模块1906和解密模块1910发送加密级别。例如,语音数据的加密级别可以采用固定方式(如预先设定传输的语音数据的加密级别,或者通过预定标识位识别相应的加密级别),或者通过协商完成,本发明不限定具体的协商方式,本领域技术人员可以根据具体实施的需要来确定使用哪种协商方式。加密级别获取模块1902用于从语音通信系统获取语音数据的加密级别,或根据接收到通信消息的预定标识位获取语音数据的加密级别。
帧类型确定模块1904,用于从编码器1901接收编码后的语音帧,确定编码后的语音帧的帧类型,并向加密模块1906发送含有帧类型的消息。
加密模块1906,用于接收加密级别获取模块1902发送的加密级别,接收帧类型确定模块1904发送的帧类型;以及根据加密级别获取模块1902获取的加密级别和帧类型确定模块1904确定的帧类型确定语音帧的待加密的比特位;以及对该语音帧的待加密的比特位进行分组加密。
加密后语音帧合成模块1905,用于接收加密模块1906加密后的语音比特位,并将加密后的语音比特位和不需加密的语音比特位按分类前的位置重新合成加密后的语音帧;以及将合成加密后的语音帧发送给加密后帧类型确定模块1908。
加密后帧类型确定模块1908,用于接收加密模块1906加密处理后的语音帧,确定加密后的语音帧的帧类型,并向解密模块1910发送含有加密后语音帧的帧类型的消息。
解密模块1910,用于接收加密级别获取模块1902发送的加密级别,接收加密后帧类型确定模块1908发送的加密后语音帧的帧类型,以及根据加密级别获取模块1902获取的加密级别和加密后帧类型确定模块1908确定的帧类型对语音数据的待解密比特位进行分组解密,并将解密后的语音帧发送给解密后语音帧合成模块1911。
解密后语音帧合成模块1911,用于接收解密模块1910解密后的语音比特位,并将解密后的语音比特位和不需解密的语音比特位按分类前的位置,重新合成语音编码帧;以及将语音编码帧发送给语音解码器1907。
参考前述本发明示例性的描述,本领域技术人员可以清楚的知晓本发明具有以下优点:
1)针对现有技术不区分语音帧的各个比特位,如果对语音帧进行加密处理,需要对语音帧的所有比特位进行加密处理,从而造成加密复杂、耗时长的问题;本发明提供的语音加密的方法及系统,充分研究和利用不同速率的语音编码帧长度不同、且同一帧中不同比特位的重要程度不相同的特点,有选择性地区分语音编码帧中待加解密的比特位和无需加解密的比特位,从而降低了加解密算法的复杂度和运算的数据量。
2)进一步地,本发明提供的语音加密的方法及系统,根据语音通信不同安全性的要求,对不同加密级别和不同帧类型下的帧的比特位进行区分,对语音帧编解码重要的比特位进行分组加解密处理,从而无需对所有的语音帧都进行加解密处理,提高了加解密速度,满足加密语音通信的实时性要求。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
Claims (12)
1.一种语音加密的方法,其特征在于,所述方法包括:
确定语音数据的加密级别;
确定语音帧的帧类型;
根据所述加密级别和所述帧类型确定所述语音帧的待加密的比特位;以及
对所述待加密的比特位进行加密。
2.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:根据所述加密级别和所述帧类型确定所述语音帧的待加密的比特位后,根据所述加密级别和所述帧类型确定分组加密算法和分组长度;以及
采用所述分组加密算法对所述待加密的比特位采用所述分组长度进行加密。
3.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:对所述待加密的比特位进行加密后,将加密后的语音比特位和不需加密的语音比特位按分类前的位置重新合成所述加密后的语音帧。
4.一种语音解密的方法,其特征在于,所述方法包括:
确定语音数据的加密级别;
接收加密后的语音帧,并确定所述语音帧的帧类型;
根据所述加密级别和所述帧类型确定所述语音帧中待解密的比特位;以及
对所述待解密的比特位进行解密。
5.根据权利要求4所述的方法,其特征在于,所述方法进一步包括:根据所述加密级别和所述帧类型确定所述语音帧中待解密的比特位后,根据所述加密级别和所述帧类型确定分组解密算法和分组长度;以及
采用所述分组解密算法对所述待解密的比特位采用所述分组长度进行解密。
6.根据权利要求4所述的方法,其特征在于,所述方法进一步包括:对所述待解密的比特位进行解密后,将解密后的语音比特位和不需解密的语音比特位按分类前的位置重新合成语音编码帧。
7.一种语音加密的装置,其特征在于,所述装置包括:
加密级别获取模块,用于确定语音数据的加密级别,向加密模块发送所述加密级别;
帧类型确定模块,用于确定所述语音帧的帧类型,向所述加密模块发送所述帧类型;
所述加密模块,用于接收所述加密级别获取模块发送的所述加密级别,接收所述帧类型确定模块发送的所述帧类型;以及根据所述加密级别和所述帧类型确定所述语音帧的待加密的比特位;以及对所述待加密的比特位进行加密。
8.根据权利要求7所述的装置,其特征在于,所述加密模块还用于根据所述加密级别和所述帧类型确定分组加密算法和分组长度;以及采用所述分组加密算法对所述待加密的比特位采用所述分组长度进行加密。
9.根据权利要求7所述的装置,其特征在于,所述装置还包括:
加密后语音帧合成模块,用于接收所述加密模块加密后的语音比特位,并将所述加密后的语音比特位和不需加密的语音比特位按分类前的位置重新合成所述加密后的语音帧。
10.一种语音解密的装置,其特征在于,所述装置包括:
加密级别获取模块,用于确定语音数据的加密级别,并向解密模块发送所述加密级别;
加密后帧类型确定模块,用于接收加密模块加密处理后的语音帧,确定所述加密后的语音帧的帧类型,并向所述解密模块发送所述加密后的语音帧的帧类型;
所述解密模块,用于接收所述加密级别获取模块发送的所述加密级别,接收所述加密后帧类型确定模块发送的所述加密后的语音帧的帧类型,以及根据所述加密级别和所述帧类型确定所述语音帧中待解密的比特位;以及对所述待解密的比特位进行解密。
11.根据权利要求10所述的装置,其特征在于,所述解密模块还用于根据所述加密级别和所述帧类型确定分组解密算法和分组长度;以及采用所述分组解密算法对所述待解密的比特位采用所述分组长度进行解密。
12.根据权利要求10所述的装置,其特征在于,所述装置还包括:解密后语音帧合成模块,用于接收所述解密模块解密后的语音比特位,并将所述解密后的语音比特位和不需解密的语音比特位按分类前的位置,重新合成语音编码帧。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910260090.7A CN101764666B (zh) | 2009-12-24 | 2009-12-24 | 语音加密的方法及装置、语音解密的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910260090.7A CN101764666B (zh) | 2009-12-24 | 2009-12-24 | 语音加密的方法及装置、语音解密的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101764666A true CN101764666A (zh) | 2010-06-30 |
CN101764666B CN101764666B (zh) | 2013-06-26 |
Family
ID=42495664
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910260090.7A Active CN101764666B (zh) | 2009-12-24 | 2009-12-24 | 语音加密的方法及装置、语音解密的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101764666B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103354638A (zh) * | 2013-08-05 | 2013-10-16 | 成都林海电子有限责任公司 | 一种基于安卓系统的手机加密服务器系统 |
CN105992203A (zh) * | 2015-01-29 | 2016-10-05 | 成都三零瑞通移动通信有限公司 | 一种语音通信加密密钥协商方法及基于该方法的系统 |
CN105992199A (zh) * | 2015-01-29 | 2016-10-05 | 成都三零瑞通移动通信有限公司 | 一种语音通信明密识别方法及系统 |
CN106161408A (zh) * | 2015-04-24 | 2016-11-23 | 华为技术有限公司 | 一种语音通话加密的方法、系统以及终端 |
WO2017166556A1 (zh) * | 2016-03-31 | 2017-10-05 | 宇龙计算机通信科技(深圳)有限公司 | 语音加密及解密方法、加密及解密装置以及终端 |
CN111083424A (zh) * | 2019-11-25 | 2020-04-28 | 视联动力信息技术股份有限公司 | 音视频加密传输方法、装置、电子设备及存储介质 |
CN111726354A (zh) * | 2020-06-17 | 2020-09-29 | 梅州市悦思智能科技有限公司 | 一种基于物联网的数据传输加密设备 |
CN113645613A (zh) * | 2021-07-08 | 2021-11-12 | 中国人民解放军战略支援部队信息工程大学 | 一种蜂窝移动网实时语音加密设备及方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1997012461A1 (en) * | 1995-09-27 | 1997-04-03 | Telefonaktiebolaget Lm Ericsson (Publ) | Method for encryption of information |
US6266412B1 (en) * | 1998-06-15 | 2001-07-24 | Lucent Technologies Inc. | Encrypting speech coder |
CN1681003A (zh) * | 2004-04-08 | 2005-10-12 | 华为技术有限公司 | 一种实现端到端语音加密的方法 |
CN101059957A (zh) * | 2007-05-24 | 2007-10-24 | 华中科技大学 | 一种语音编码选择性加密方法 |
-
2009
- 2009-12-24 CN CN200910260090.7A patent/CN101764666B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1997012461A1 (en) * | 1995-09-27 | 1997-04-03 | Telefonaktiebolaget Lm Ericsson (Publ) | Method for encryption of information |
US6266412B1 (en) * | 1998-06-15 | 2001-07-24 | Lucent Technologies Inc. | Encrypting speech coder |
CN1681003A (zh) * | 2004-04-08 | 2005-10-12 | 华为技术有限公司 | 一种实现端到端语音加密的方法 |
CN101059957A (zh) * | 2007-05-24 | 2007-10-24 | 华中科技大学 | 一种语音编码选择性加密方法 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103354638A (zh) * | 2013-08-05 | 2013-10-16 | 成都林海电子有限责任公司 | 一种基于安卓系统的手机加密服务器系统 |
CN105992203A (zh) * | 2015-01-29 | 2016-10-05 | 成都三零瑞通移动通信有限公司 | 一种语音通信加密密钥协商方法及基于该方法的系统 |
CN105992199A (zh) * | 2015-01-29 | 2016-10-05 | 成都三零瑞通移动通信有限公司 | 一种语音通信明密识别方法及系统 |
CN106161408A (zh) * | 2015-04-24 | 2016-11-23 | 华为技术有限公司 | 一种语音通话加密的方法、系统以及终端 |
CN106161408B (zh) * | 2015-04-24 | 2020-01-10 | 华为技术有限公司 | 一种语音通话加密的方法、系统以及终端 |
WO2017166556A1 (zh) * | 2016-03-31 | 2017-10-05 | 宇龙计算机通信科技(深圳)有限公司 | 语音加密及解密方法、加密及解密装置以及终端 |
CN111083424A (zh) * | 2019-11-25 | 2020-04-28 | 视联动力信息技术股份有限公司 | 音视频加密传输方法、装置、电子设备及存储介质 |
CN111083424B (zh) * | 2019-11-25 | 2023-04-07 | 视联动力信息技术股份有限公司 | 音视频加密传输方法、装置、电子设备及存储介质 |
CN111726354A (zh) * | 2020-06-17 | 2020-09-29 | 梅州市悦思智能科技有限公司 | 一种基于物联网的数据传输加密设备 |
CN113645613A (zh) * | 2021-07-08 | 2021-11-12 | 中国人民解放军战略支援部队信息工程大学 | 一种蜂窝移动网实时语音加密设备及方法 |
CN113645613B (zh) * | 2021-07-08 | 2023-07-04 | 中国人民解放军战略支援部队信息工程大学 | 一种蜂窝移动网实时语音加密设备及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101764666B (zh) | 2013-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101764666B (zh) | 语音加密的方法及装置、语音解密的方法及装置 | |
US7505594B2 (en) | Discontinuous transmission (DTX) controller system and method | |
CN101059957B (zh) | 一种语音编码选择性加密方法 | |
CN101577605B (zh) | 基于滤波器相似度的语音lpc隐藏和提取算法 | |
CN101952886B (zh) | 用于对背景噪声信息进行编码的方法和装置 | |
CN107886962B (zh) | 一种面向ip语音的高安全性隐写方法 | |
Janicki | Pitch‐based steganography for Speex voice codec | |
CN102624518A (zh) | 语音加解密方法 | |
CN101090312B (zh) | 一种改进的语音编码流加密方法 | |
EP2211338A1 (en) | Transcoding method, transcoding device and communication apparatus | |
Abro et al. | Towards security of GSM voice communication | |
CN107689226A (zh) | 基于iLBC编码的一种小容量语音信息隐藏方法 | |
EP1020848A2 (en) | Method for transmitting auxiliary information in a vocoder stream | |
Ambika et al. | Secure Speech Communication–A Review | |
Kazemi et al. | Data hiding robust to mobile communication vocoders | |
CN102918589B (zh) | 提供从以低比特率编码和解码的水印的音频或视频信号导出的水印的已解码音频或视频信号 | |
Zhijun et al. | An implementation of speech steganography for iLBC by using fixed codebook | |
JP4339793B2 (ja) | 音響チャネルと圧縮によるデータ通信 | |
CN1964244B (zh) | 一种用声码器收发数字信号的方法 | |
FR2859566A1 (fr) | Procede de transmission d'un flux d'information par insertion a l'interieur d'un flux de donnees de parole, et codec parametrique pour sa mise en oeuvre | |
Abro et al. | An efficient speech coding technique for secure mobile communications | |
Merazka | Wideband speech encryption based Arnold cat map for AMR-WB G. 722.2 codec | |
KR100420556B1 (ko) | 실시간 음성 패킷 암/복호화 시스템 및 그 암/복호화 방법 | |
Babu et al. | Symmetric encryption algorithm in speech coding for defence communications | |
Geiser et al. | Binaural wideband telephony using steganography |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |