APP下载

数字语音加密系统的硬件设计

2010-05-11张沛哲冯立杰

中国新技术新产品 2010年17期
关键词:加解密解码器数据流

张沛哲 冯立杰

(1、武警工程学院研究生管理大队36队,陕西 西安 710078 2、武警工程学院通信工程系声像教研室,陕西 西安 710078)

语音是人们获取信息的重要手段,语音通信是现代通信中最常用、最方便的通信手段之一。随着通信技术的发展,针对语音通信的攻击也越来越严重,如窃听、“电话跟踪”、电话劫持和拒绝服务等对语音通信安全构成了极大威胁,因此,研究语音加密,对保障语音通信的安全十分重要。在研究语音通信保密性的同时,也要考虑通话的实时性。本文所提出的语音保密通信系统设计方案,首先将语音信号压缩,以减少数据量,而后用一种基于数字混沌序列的快速加密算法对压缩后的数据进行加密。此种方案能较好地满足我们在实际中对语音通信安全性和实时性的要求。

1 、系统总体设计

该系统主要由语音编解码模块、加密模块这两大模块组成,系统框图如图1所示。

图 1系统框图

在发送端,系统首先将接收到模拟语音信号经A/D转换芯片转换成数字信号,而后编解码芯片对转换后的数字语音信号进行压缩编码输出给加密模块,最后加密模块完成对信号的加密操作。在接收端,系统对信号的处理流程与发送端相反。

2 各模块设计

2.1 编解码模块

在此模块中,本文采用AD73311模数/数模转换器芯片和AMBE-2000语音压缩/解压芯片对输入的语音信号进行编解码。

AD73311是美国AD公司推出的低成本、低功耗的数模转换器件。它具有可变增益的输入、输出放大器,采样频率可通过编程改变,小的转换群延时,允许8个芯片级联,自身带参考电压和低功耗等许多优良特性,可广泛应用于信号处理、无线通信、数据通信等领域。

AD73311包括四个部分:A/D转换通道,D/A转换通道,串行输入/输出端口和片内参考电压电路。有5种工作模式:程序模式、数据模式、混合模式、模拟环路模式、数字环路模式。 其中前三种是正常的工作模式;后两种是调试模式,仅在调试时使用。AD73311启动或者重置后即工作于程序模式,此时可以通过串口往芯片内的控制寄存器写控制字,来设定工作状态。设定完成后,写“进入数据模式”的命令进入数据模式,此时AD73311串行口输出的是A/D转换的16位数据,输入的是D/A转换的16位数据。

AMBE-2000是一种高性能、低功耗的单片实时语音压缩解压芯片,其压缩率可在2kbps~9.6kbps范围内由软件调节,且具有FEC(前向纠错) 、VAD(语音激活检测)功能和DTMF信号检测功能。AMBE2000可以分为两个独立的元件-编码器和解码器。编码器从语音串行接口接收8KHZ的语音采样数据流(16位线性,8位A律,8位μ率)并且在给定速率下输出通道数据流。解码器接收通道数据流,然后合成语音数据流。AMBE-2000编码器和解码器接口时序是完全异步的。语音串行接口接A/D、D/A转换器,我们选用的AD73311转换器配合AMBE2000使用,在实际应用中取得了良好的效果。如图2所示是AMBE2000与AD73311的连接图

图2 AMBE2000与AD73311的连接图

语音信号经过AD73311转换后的数据和控制信息,以串行的方式送到声码器。声码器中的编码器接收到8KHZ的采样数据流,然后输出压缩数据流给解码器;解码器对其进行解压缩,同样输出8KHZ的语音数据流,该数据流随后进入AD73311进行D/A转换,并以差分的形式输出原始的语音信号。

2.2 加密模块

该模块以AT89C51单片机为核心来完成对数据的加解密操作。它接收到来自AMBE-2000的数据后用设计好的加解密算法对其进行加解密操作。为确保数据通信的保密性,加解密算法的设计是关键。本文所设计的加密的算法是,让输入的语音信号与一个混沌序列进行模2运算,即:Yt=Xt茌St其中,St为发送端的数字语音信号,Xt为发送端的混沌加密序列,Yt为加密后的信号。解密算法是,让经加密处理后的语音数字信号与同样一个混沌序列进行模2运算。即:Sr=Yr茌Xr;Yr=St+Nr其中,Sr为解密后的语音信号,Yr为接收端收到的加密信号,Nr为通道噪声。显然,当收方与发方采用同一初始条件相同的混沌系统时,Xt=Xr;若双方在通信过程中信号传输无误,Nr=0,则有St=Sr,此时信号得以还原。

混沌序列的生成:

一类非常简单却被广泛研究的动力系统是Logistic映射,其定义如下:

其中,0<μ≤4 称为分支参数,Xk∈(0,1)。当 3.5699…<μ≤4时,Logistic映射工作于混沌态。也就是说,由初始值Xk在Logistic映射的作用下所产生的序列j是非周期的、不收敛的,并对初始值非常敏感。

由于Xk∈(0,1),因此在计算机中采用浮点运算。但在实际的应用中,浮点数运算内存需求大,运算速度慢。又由于单片机对浮点数的运算能力十分有限,用此生成序列几乎难以实现数字语音信号加密的实时性。研究发现,我们可以通过关系式(1):

使混沌序列的浮点迭代过程变为适合单片机指令的整点迭代过程。转换过程如下:

从上式可知:X是十进制整数。由此就完成了从小数到整数的转换。

该方法运算量明显小于浮点运算,它降低了对计算精度的要求。加快了运算速度。从而降低了对硬件电路的要求。

3 结束语

在数字语音加密通信系统中,最重要的是加解密密钥的产生,本文所采用的混沌序列生成方法,减少了运算量,加快了运算速度,降低了对硬件电路的要求。使得加解密算法可在单片机上实现。理论分析表明,该系统很好地满足了我们对语音保密通信的要求。

[1]AD73311 Datasheet,Analog Devices,Inc.,1998.

[2]AMBE-2000TM Vocoder Chip User's Manual Version 4.8,2007.

[3]Frey D R.Chaotic digital encoding:An approach to secure communication.IEEE Trans.on CAS,1993;CAS-40(10):660~666.

猜你喜欢

加解密解码器数据流
科学解码器(一)
科学解码器(二)
科学解码器(三)
线圣AudioQuest 发布第三代Dragonfly Cobalt蓝蜻蜓解码器
一种提高TCP与UDP数据流公平性的拥塞控制机制
电子取证中常见数据加解密理论与方法研究
基于FPGA的LFSR异步加解密系统
基于数据流聚类的多目标跟踪算法
北医三院 数据流疏通就诊量