随着Interbet和www的飞速发展,多媒体信息安全问题对于多媒体商务活动越来越重要。新型的多媒体应用需要新的数据加密技术,近年来,在这方面的研究取得了一些成果,主要针对视频数据和图像数据,为此我们基于随机置乱提出一个MPEG音频数据的快速加密算法。
一、MPEG音频加密算法
在MPEG-1音频编码系统中,根据应用的不同场合,可以选择系统的不同层。随着层号的增加,编码器的复杂性和编码性能一起增加,其中层N解码器能对层N以及N以内所有层编码的比特流数据进行解码。
在ISO/IEC 11172-3标准中,—共规定了以下三个层次。
层I:此层包括从数字音频输入到32个子带的基本变换,按固定分段方式将数据分割为帧,按心理学模型决定自适应比特分配。
层Ⅱ:此层提供比特分配、比例因子、样点的附加编码。与层I编码器采用不同的分帧方式。
层Ⅲ:此层引入混合滤彼器组以提高频率分辨率屯并增加一个不同的非均匀量化器、自适应分段和量化值的熵编码。
其中层I组成了量基本的算法,而层Ⅱ和层Ⅲ则提供了功能的增强。所有三层编码器都基于子带滤波,并利用了两个心理学模型中的一个控制量化器和编码。音频数据一般通过分析滤波器组分成32个等宽的子带数据。对于44.IKHz的CD音质的数字音频数据而言,每一子带的带宽为44100/32~89 Hz。
与目前的JpEG和b4PEG标准有所不同,MPEG数字音频压缩算法很大层度上依赖于心理声学模型,把掩蔽效应(maslc:ing effects)引入编码过程。掩蔽效应是人的听觉系统(HAS)的一个生理特性,入耳对一个声音的听觉灵敏度因为另一个声音的存在而降低的现象称为掩蔽效应。人们在安静环境中听一个声音可以听得很清楚,即使这个声音很低,而在一个声音嘈杂的闹市,要听清楚附近的人说话都很困难。实验结果表明,HAS对声音的分辨能力是有限的,并与频率相关,这可以用临界带宽(cntical ba.nd-width)。在一给定频率的噪声掩蔽阈值(noise-masking
thn:shold~l和其邻近的有限带宽的频率带的信号能量有关。
MPEG音频编码算法通过将输入音频信号分解成32个子带来逼近临界带宽,然后根据在每一子带所能承受的量化噪声对其进行量化。每一子带根据其掩蔽特性分配一定的位数。在层I的MPEG-I音频编码器中,位分配用[0,2...15]中的一个数字表示。如果位分配不为零,就计算出一个比例因子,并分配给这个子带。这个比例因子用于把量化的样点值扩展到正确的范围。每一比例因子用6位来表示[0…62]。位分配、比例因子以及量化的样点值就构成了重要的MPEO音频数据流。
在MPEG音频编码标准中,提供了两个心理声学模型,其中心理声学模型2比心理声学模型l要复杂,对掩蔽效应的计算也更为准确。
在通过分析滤波器组进行分析时,每32个输入样点数据被变换成32个子带样点数据,但是,滤波器系数至少要依赖于最近的5 12个样点。由于滤波器的相应曲线并非理想,会引入一定的混叠(aliasing)效应,尤其是在予带的边界附近一例如,输入一个纯正弦波信号,会在两个子带中输出非零值。在解码器的合成滤波器组,等值的相反的混叠效应会抵消前面的混叠效应。因为混叠效应是对称的,不过对于设计MPEG音频加密算法而言,利用这一混叠效应,可以增强加密效果。
尽管32个样点值组成了MPEG音频编码器中的最小处理单元,输入PCM音频数据值被分割成帧,以便处理更加有效。在MPEG-1层I编码器中,一个帧包括384个样点值,其中分为12组,每一组包括32个子带样点数据。除了位分配x比例因子和子带样点以外,每一帧中包括一个帧头以及可选的CRC误差检测码,还可能包括其他附加数据。
尽管基于相同的滤波器组,层I和层Ⅱ以及层Ⅲ编码器的帧大小和计算复杂度是不一样的。层Ⅲ由于引入了MDCT (ModifiedDiscrete Cosine Transform),进一步把一个子带细分以提高频率分辨率,而且层Ⅲ编码器增加了Huffman变长熵编码方案,提高了压缩率。这些性能上的提高,从概念上是比较复杂的,也提高了编码器的复杂度。
二、MPEG音频数据的快速加密算法
本文提出的MPEO音频加密方法基于密钥控制的随机捧列,加密过程在NIPEG音频编码的最后一步,即在帧封装阶段。得到的加密数据流仍然能被一般的MPEG音频解码器所读取和播放,当然所能昕到的已经与原音频数据完全不同了。为了解密,只要把经过加密的MPEG音频数据流经过帧分解,然后进行反排列即可。
1、随机捧列
在传统的迭代乘积密码系统中,捧列算子的主要任务就是对明文数据块中的元素进行重排(有时也可以称为“置乱”)撕使得密文块看起来是随机的。不过,这些排列算子一般事先定好,而与密钥无关。一个加密算法由设计者规定好一个排列方法,在所有相同的系统中,排列方法不变。指出这觋显是一个可能的缺陷,使得某些迭代乘积密码系统特别容易受到差分密码分析的攻击。而基于密钥的排列的安全性能会由较大改善。在基于密钥的排列算法中,由一个或多个参数作为密钥,参数能够唯一地确定排列的性质。
基于密钥的排列可以在频域或时间,空间域进行。通过空间域图像撵列进行加密,而MPEG视频加密算法则是典型的频域算法。从另一个角度来考虑,排列操作可以是局部的,或是全局的。属于全局排列,其排列操作对整幅图像进行。而则是局部算法,因为在这一算法中,排列算子的操作是在每一个8X8的块上进行的。局部算法的优点是速度快,空间需求低,如的算法仅需维护一个长度为64的排列表(permutation list)且认为,对图像的加密操作不宜仅在小的数据块级别上进行,特剐是如果每一数据快相互独立加密,就更为不妥。原因是这样即使图像内容被打乱,图像的结构仍然可以被分辨出来。这一结论对于空间图像加密算法仍然是适用的。
另外一个安全问题的考虑是排列表的长度实际决定了密钥空间的大小,数据块的加大,也就同时增大了密钥空间。所以数据块的大小必须仔细选择,在保证安全性的前提下,提高加密算法的运行效率,减少对存储空间的需求。
对于在多媒体应用中的音频数据加密算法,根据我们的试验,作用于局部的数据块的随机排列算法的效果是令人满意的。经过局部的频域和时间域分段随机排列算法加密后的波形从视听者的角度已经没有原音频信号的痕迹了,当然,从保密的角度而言,经过时间域加密的波形从形状上还有原波形的痕迹,这是不够安全的,高级的破译者可能很快就可以从波形上找到语音。从另一个角度讲,对于任意的非语音声音信号,单从残留的这些痕迹也很难找到正确的波形。因此,我们认为,在多媒体音频数据的加密算法中,采用局部随机排列方式是合适的。我们在算法的设计中,作用的数据快大小是可以分层次调节的,这也符合了MPEG音频数据压缩的数据结构和MPEG音频数据格式的层次结构。
2、频域与时间域
时间域的排列加密算法实现较为简单,因为不需要使用一般频域算法所必须的FFT变换或其他时间域到频域的转换滤波器组,计算量相对较少。然而,直接在时间域的随机置乱算法得到的多媒体音频数据如果进行MPEG压缩,一般效果很差。一方面压缩率大大降低了,另一方面由于多媒体数据被随机置乱广MPEG音频编码器在使用滤波器组和心理声学模型进行数据编码的时候,主要是保持听觉效果即生理特性,有可能会给加密数据引入较大的失真。频域算法如果设计不当,同样存在降低压缩率的问题cloi.m。另外,频域算法需要时间域到频域的转换计算,所需时间耗费较大,不过由于多媒体数据压缩算法一般是在频域进行的。如果频域加密算法与压缩算法结合进行,就不会增加太多的计算量。在频域算法中,进行加密计算的步骤很重要,算法的时机就不是太好,因而影响了MPEG视频压缩系统的效率。频域算法的优势是在频域中,每一点的变化对整个数据集合都会产生一定的影响。如在MPEG视频数据压缩算法中,8X8豹数据块经过DCr变换得到的DCT系数中的一个发生改变,会通过IDCT逆运算体现在所有的64个象素点中。时间域算法如果在象素级进行随机置乱而不是比特级,一般不会达到这种效果。换一种说法就是,频域算法加密效率比较高。
3、加密算法说明
基于上面的讨论,本文提出了一个MPEG音频信号的可调节加密算法框架。在以下的叙述中,我们将以MPEG层I音频编码器为例,其中忽略了声道信息,在立体声音频中,左声道和右声道是对称的,其数据组织形式相同。层Ⅱ和层Ⅲ的MPEG音频数据类似,并不影响算法的基本结构。
加密过程在帧封装之前进行。这就可以保证加密算法不会引入任何的数据容量的膨胀或质量下降。这一加密算法是在频域进行的,因为MPEG音频压缩编码器的第一步就是将时间域音频信号使用分析滤波器组变换到频率域。另外,为了操作的方便,我们把帧作为基本的数据单位。在每一帧中,分为32个子带,每一个子带取一个频率样点组成一组,共12组。根据在MPEG音频编码器的心理声学模型进行的掩蔽效应的计算结果,每一个子带分配一个位分配数和一个比例因子,并据此实现量化。由于每个子带的位分配很可能不一样,并且有些子带可能位分配为零,即被忽略掉了。所以如果我们直接把384个样点数据进行置乱羹就很难处理位分配和比例因子,因而无法组织成一个合理的MPEG音频数据流。我们的处理方法是按子带进行随机置乱,每个子带的位分配数随同子带样点一定进行置乱,这样就保证了样点数据的比特数目和位分配数字相匹配,而且位分配数为零的子带同样可以参加置乱。
相应的比例因子信息也要参加置乱。适用同一置乱表,如果和样点数据和位分配数的置乱表不一样,可以进一步加强置乱效果,不过这样就需要满足比例因子的置乱符合位分配数的非零要求的条件,即只有在子带置乱后的位分配数非零的子带,才能分配比例因子。这一捧列形式属于禁位捧列,即某些位置是不许某些元素占据的。不过,在置乱后,由于有些子带并不存在,位置信息就会丢失,也就
无法正确的恢复到正确的位置,而如果一起置乱,就可以避免这一问题。
以上构成了我们的基本算法。根据我们的初步实验结果,对一般的多媒体应用而言,我们的加密算法提供了令人满意的效果。
我们可以通过对同一子带内的数据加以置乱以进一步提高安全性。即把12个数据组打乱。这组成了我们的加密算法的又一层次铒最后,我们还可以在一定的周期内,比如每N帧数据,对帧进行打乱。周期N是一个可调节的参数,可以用来平衡安全级别、加密延迟以及算法复杂度三者的关系。这一层次的加密算法实际上可以归为全局算法。
加密算法的密钥用来产生随机排列表,实际上就是相应的随机数生成器的SEED。为了对付可能的明文攻击,我们可以随机地更换产生随机排列表的密钥,办法是使用一个我们称之为SUPERKEY的密钥来控制产生一个密钥序列,这一序列可以随时在规定的间隔内输出密钥,用于产生最后的实际随机捧列表。这样密钥管理就非常简单。省去了大量的密钥存储空间。不过,这样做的代价是会使加密算法增加一定的计算量,因为随机排列表必须实时产生,而不宜事先计算好存起来备用。为了避免太大的时间耗费,我们应当尽可能不要过于经常的更换密钥。
小知识之MPEG音频
MPEG音频属于宽频带压缩处理标准,根据其压缩算法不同 ,对它确定了—、二、三层共3个层次的算法。
实操指南:如何监控聊天中的敏感信息?这款秘籍软件,轻松掌握微信聊天动态
电影《摩登时代》里,流水线工人就连在吃饭时都要用“自动喂食机”提高效率,这样才能挤出更多时间投入工作。虽然现在打工人不至于此,但有些老板仍然放心不下……像企业聊天记录往往蕴含着大量的敏感信息。为了确保信息安全,监控聊天中的敏感信息成为了一项必要且重要的工作。以下是一款秘籍软件,帮助你轻松掌握微信聊天动态,确保信息安全。...
怎么监控员工上班情况?2024企业管理的四种方法,老板们不容错过
怎么监控员工上班情况?2024企业管理的四种方法,老板们不容错过员工上班在干什么?摸鱼?打游戏?老板该怎么管理?如何才能监视怎么监控员工上班情况?监控员工上班情况可以通过多种方式实现,但重要的是要确保这些措施既合法又合规,同时尊重员工的隐私权。以下是一些建议的方法:一、制定明确的行为规范与奖惩制度1、制定行为规范: 企...
怎么监控员工上班情况?快速监控员工状态
怎么监控员工上班情况?快速监控员工状态在企业管理中,如何有效监控员工上班情况,确保工作效率与团队协作,是每位老板都需面对的课题。本文为您揭秘五招快速监控员工状态的实用技巧,不仅能帮助您实时掌握员工动态,还能提升整体管理效率。作为老板,掌握这些技巧,将让您在企业管理中游刃有余,轻松应对各种挑战。一、使用安企神软件实时监控...
安企神桌管软件:提升企业管理效率的全能助力
安企神桌管软件:提升企业管理效率的全能助力在当今竞争激烈的商业环境中,企业必须不断优化管理和运营流程,以提高效率和盈利能力。安企神桌管软件正是这样一款面向中小企业的管理工具,能够帮助企业在多方面提升综合管理水平。本文将详细探讨安企神桌管软件给企业带来的多重价值。一、全方位的管理功能安企神桌管软件是一款集成了多种管理功能...
安企神:揭开终端安全管理软件的神秘面纱
安企神:揭开终端安全管理软件的神秘面纱在数字化日益普及的今天,企业的网络安全问题愈发显得重要。数据泄露、网络攻击等事件层出不穷,如何保障企业内部信息的安全性成为众多企业关心的焦点。安企神终端安全管理软件应运而生,作为一款专业的安全管理工具,它的功能与优势备受关注。本文将全面揭秘安企神软件的核心功能、应用场景及其在终端安...