目前我们使用比较多的是国外的视频会议系统,这些产品中存在着许多安全漏洞,采用的加密措施不具备国内自主知识产权,在这种体制下召开重要会议是十分不安全的。因此,必须在现有的视频会议系统结构之外,研究符合我国安全要求的、实用的、自主开发的视频会议加密系统,是我们面临的熏要课题之一。
一、视频会议系统组成
在基于电路交换的通信网络中,视频会议系统由多点控制单元MCUI11、传输网络、视频终端和会议管理系统四个组成部分。
MCU负责将主会场的视频和音频数据进行压缩,并以广播方式发送给各分会场,使得各分会场能实时观看主会场实况:同时又将来自各分会场的视频和音频数据进行解压及合成,以多画面方式在电视上显示,使得主会场可以实时观看一个或多个分会场的实况。
各分会场的视频终端接收来自主会场MCU的视频和音频数据包,对数据包进行解压后分离出视频数据和音频数据,通过电视和音响来展现主会场的实况;同时又通过摄像头和话筒把本会场的实况(视频信息和音频信息)压缩成数据包,发送给主会场的MCU。
通常用一台PC终端作为会议管理系统,负责对MCU进行配置,包括线路的接口方式、通信速率、视频和音频数据的压缩算法和会议的组成规模,以及主会场和分会场的交互控制等。
二、视频会议线路加密系统
由于政府机构、大型企业都有内部IP网络,而且使用了防火墙技术,可以有效阻击来自外部的攻击一本文的研究重点是对通信线路上传输的视频会议多媒体信息进行有效的安全保护,即研究多媒体信息在通信线路上的加密技术和密钥安全分发技术。
1、加密体系结构
视频会议加密体系结构由多媒体信息加密网络和密钥传输网络组成,如图1所示。
在原DDN通信网络的基础上,在每一条通信线路的两端各增加一台加密设备组成加密设备对(如加密设备l和加密设备l’为一对加密设备),这样就构成了多媒体信息加密网络。不同通信线路上的加密设备使用不同的密钥,而同一通信线路上的两个加密设备,必须使用相同的密钥,从而可以对通信线路上全双工的多媒体信息进行加密传输。
每台加密设备都配备一块有RS232接口的网卡(如MOXA卡),网卡工作在TCP Server方式。所有加密设备通过自身的网卡和TCP/IP网络,与密钥管理系统连接起来,组成了密钥传输网络。密钥以IP数据包方式,采用PKI和智能卡相结合的方法,通过TCP/IP网络传送到各加密设备,实现密钥的分发和配置。
在该体系结构中,加密设备起着很关键的作用,其内部主要由数字信号处理器、通信接口、FPGA芯片、网卡和智能卡接口等部件组成。加、解密算法和通信线路控制相关的逻辑都由FPGA芯片来实现。
加密设备的主要功能是对通信线路上的多媒体信息进行加密或解密,即接收视频终端或MCU的明文数据,经过加密后发送到通信线路;同时,接收通信线路上的密文数据,经过解密后发送给视频终端或MCU。加密设备的另一功能是通过TCP/IP网络和智能卡,实现与密钥管理系统的相互认证,从而可以安全、正确地接收密钥管理系统分发的密钥。
除此之外,加密设备还应具有加、解密算法配置及起动、密码同步、密码失步后的重新同步等功能。
2、多媒体信息加密技术
视频会议信息采用比特流加密技术,加密和解密端使用相同的序列密码(Strea:m Cipher)算法,其应用如图2所示。
在序列密码算法中,密钥序列发生器(Keystream generator)输出一系列位序列(即乱数序列):K1,K2,K3,…,Ki。
在加密端,密钥序列跟明文位序列P1,P2,P3,…,Pi进行逐比特异或运算,产生密文位序列。加密的表达式为:
在解密端,密文序列与完全相同的密钥序列异或运算恢复出明文序列。解密的表达式为:
序列密码算法的安全性完全依赖于简单的异或运算和一次一密乱码本。在选择序列密码算法时,如果密钥序列是一系列无尽的随机序列(实际上是确定的),那么该序列密码算法具有很强的安全性,从而可以保证明文信息的保密性。
在设计序列密码时,可以选择标准的序列密码算法,如RC4、 SEAL等;也可以选择标准的分组密码算法,如多重DES、RC5、AES算法等,利用输出反馈(OFB)或密码反馈( CFB)方式得到序列密码。所设计的序列密码算法可用硬件描述语言(VerilogHDL/VHDL)来描述,经过逻辑综合后,装配到FPGA芯片中。
结合通信线路的特点和序列密码的保密性r在加密设备中使用序列密码算法对通信线路上的多媒体信息进行加密是可行的,这是因为:
1)加密设备可以提取通信线路的时钟,便于两组序列密码算法进行序列同步;
2)与分组密码算法相比,加密过程所产生的延时短,利于多媒体信息的实时加密传输;
3)毋需考虑通信协议,可对通信线路上的多种协议的多媒体信息、显示控制所需的场同步、帧同步等信息,以及会场之间的交互控制信息进行整体加密,具有极高的保密性。
3、序列密码同步
在使用序列密码算法时,需要考虑加、解密序列密码的同步问题。
其同步过程是在线路时钟的作用下,加,解密设备可以通过特征码序列或其它同步方法获得相位的同步,从而保证密码序列的同步群。
最简单的同步方法是硬件在通信线路上插入一定长度的特征码序列,如128字节相同的数据。其同步过程如下:
由一台加密设备发出固定长度的特征码序列,然后起动密钥序列发生器,产生用于加密的密钥序列:另一台加密设备接收到固定长度的特征码序列后,同时起动密钥序列发生器,产生用于解密的密钥序列。这样,通信线路上的加密设备对可以取得时序上的完全同步,使多媒体信息在通信线路上可靠地加密传输。
对于线路质量较好的通信电路,每次会议开始之前只需进行一次密码同步。但由于通信线路时钟抖动、相位漂移、丢失、干扰等因素,会引起密码序列的失步。因此,应采取重新同步措施,保证加解密过程的正确性,从而保证图像和语音信息的连续性。
在线路质量较差的通信电路中,应对所设计的序列密码算法进行改进,采用密码反馈模式,使密钥序列的每一位都是前面固定数量密文位(n位)的函数,使得序列密码具有自同步功能,即自同步序列密码。这样,通信线路上的一位数据出错或线路时钟突变而导致序列密码失步后,最多经过n个线路时钟周期后,自同步序列密码会实现自同步。
4、密钥安全传输技术
将智能卡和PKI卡结合起来,能安全可靠地传输序列密码算法中的密钥。
每台加密设备都配置一张智能卡,智能卡初始化后应与加密设备一一对应。
在为加密设备配置智能卡之前,由密钥管理系统对智能卡进行初始化操作。此时,由密钥管理系统协同智能卡进行密钥生成和存储的本地操作。密钥管理系统首先生成自身的公私钥对,然后对所有智能卡进行初始化操作,使其生成自身的公私钥对。密钥管理系统将自身的私钥和所有智能卡的公钥记录到相关的数据库中:同时,将自身的公钥回写到所有智能卡中。
根据需要,密钥管理系统定期产生序列密码算法中的密钥,并以TCP Clicnt方式,通过TCP/IP网络向所有加密设备进行密钥分发。
密钥管理系统在发送密钥时,应与每台加密设备进行相互认证过程(具体认证过程略),以确保密钥传输的安全性。认证成功后,密钥管理系统用加密设备智能卡上的公钥对密钥进行加密传输。加密设备在接收到加密的密钥数据后。由智能卡使用其私钥进行解密,从中提取出正确的密钥。
序列密码算法中的密钥更换由密钥管理系统自动分发,可实现一会一密钥或一会多密钥。
小知识之MCU
MCU(Micro Control Unit)中文名称为微控制单元,又称单片微型计算机(Single Chip Microcomputer)或者单片机,是指随着大规模集成电路的出现及其发展,将计算机的CPU、RAM、ROM、定时计数器和多种I/O接口集成在一片芯片上,形成芯片级的计算机,为不同的应用场合做不同组合控制。