會議電視系統(tǒng)之信源選擇加密

會議電視系統(tǒng)是指兩個(gè)或兩個(gè)以上不同地方的個(gè)人或群體,通過傳輸線路及多媒體設(shè)備,將聲音、影像及文件資料互傳,實(shí)現(xiàn)即時(shí)且互動的溝通,以實(shí)現(xiàn)會議目的的系統(tǒng)設(shè)備。近幾年隨著視頻會議系統(tǒng)應(yīng)用的日益廣泛,視頻會議系統(tǒng)的安全問題也日益突出。特別對于國防、黨政和金融等應(yīng)用領(lǐng)域,視頻信息的安全顯得尤為重要。為此我們設(shè)計(jì)了一種視頻信源的加密方案及實(shí)現(xiàn)方法,并基于這種信源加密方法提出了一種使用混合加密算法體系的安全視頻會議系統(tǒng)設(shè)計(jì)方案。

一、會議電視系統(tǒng)的安全問題及現(xiàn)狀

會議電視系統(tǒng)的安全威脅主要來自于竊聽、假冒、竄改數(shù) 據(jù)流、重放攻擊等方面。其中,竊聽屬于被動攻擊,假冒、竄改、 重放等攻擊屬于主動攻擊。目前會議電視系統(tǒng)通常采用的保證會議安全的主要方式有以下三種:

(1)使用虛擬專網(wǎng)(VPN)技術(shù)

VPN技術(shù)是指在公共網(wǎng)絡(luò)中建立專用網(wǎng)絡(luò),讓各節(jié)點(diǎn)間傳輸?shù)臄?shù)據(jù)均通過底層加密,并且通過專用的隧道路由傳輸。VPN技術(shù)的這一特點(diǎn)可以使在In temet中的信息交換有安全保障,會議電視系統(tǒng)應(yīng)用于專網(wǎng)之上,就能有效地隔絕來自外部網(wǎng)絡(luò)的攻擊,并且可以避免信息在傳輸過程中可能泄漏的情況發(fā)生,有效保障會議電視系統(tǒng)的安全性。VPN技術(shù)實(shí)際上是一種通用的物理隔離技術(shù),但使用這一措施成本較高,網(wǎng)絡(luò)擴(kuò)展性不好。

(2)對媒體數(shù)據(jù)進(jìn)行直接加密

通常采用第三方加密算法對在網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)進(jìn)行全部加密。由于視頻會議的數(shù)據(jù)量巨大,對全部音艦頻數(shù)據(jù)進(jìn)行嚴(yán)格的加密會導(dǎo)致計(jì)算量大、浪費(fèi)資源,難以保證實(shí)時(shí)。這種安全方式存在難以同時(shí)滿足安全和實(shí)時(shí)需要的問題,這個(gè)問題在軟件視頻會議系統(tǒng)中顯的至關(guān)重要。

(3)使用密碼認(rèn)證策略保證用戶身份的合法性

通過預(yù)先設(shè)置密碼的方式來確保只有合法的用戶才能加入到會議中。合法的用戶被認(rèn)為是已預(yù)知密碼,當(dāng)用戶請求加入會議時(shí),由被請求方向請求方發(fā)送密碼請求消息,只有反饋正確的密碼才被認(rèn)為是合法用戶,可以繼續(xù)進(jìn)行通信。這種方法原理簡單、易于實(shí)施,但攻擊者可通過截獲合法用戶的數(shù)據(jù)包來獲知會議密碼,從而假冒合法用戶加入會議。

綜上所述,當(dāng)前會議電視系統(tǒng)所普遍使用的安全技術(shù)相對獨(dú)立,局限較大,不足以保障會議電視系統(tǒng)的安全。而考慮到視頻會議的安全需求在本質(zhì)上就是保證視頻內(nèi)容信息的安全,如果能夠采用有效的方式對視頻信息進(jìn)行加密,則能從根本上防止傳輸?shù)倪^程中不被竊聽、假冒、竄改和重放等攻擊。因此應(yīng)當(dāng)從視頻信源本身的安全性出發(fā)來設(shè)計(jì)會議電視系統(tǒng)安全體系。

二、視頻信源選擇加密方案設(shè)計(jì)

1、現(xiàn)有的視頻選擇加密方案

目前國內(nèi)外針對視頻信源進(jìn)行加密的方法主要有全部加密、選擇加密、置亂加密、基于統(tǒng)計(jì)規(guī)律的加密等。選擇加密即選取視頻數(shù)據(jù)中的部分信息加密。選擇加密由于計(jì)算量小且具有良好的保密性,是視頻加密方法的主要方向,又可細(xì)分為以下幾類:

(1)基于視頻iPB幀結(jié)構(gòu)的選擇加密方法

這是最早提出的一種加密方法,它僅僅加密I幀或者僅加密I幀和PB中所有I塊數(shù)據(jù)。由于I幀數(shù)據(jù)量龐大,所以這種方法計(jì)算量大,影響視頻實(shí)時(shí)傳輸;另外由于視頻運(yùn)動信息也沒有被加密,因此保密性也不夠。

(2)僅加密頭信息的方法

將標(biāo)準(zhǔn)視頻碼流中的頭信息加密,再與其他數(shù)據(jù)隨機(jī)混合,使接收方難以按原數(shù)據(jù)結(jié)構(gòu)區(qū)分結(jié)構(gòu)信息和視頻信息并解碼。該算法不降低壓縮率、計(jì)算量小。但是由于頭信息所含信息量小,作為標(biāo)準(zhǔn)公開,所以此方法加密效率低,而且很容易被破譯。

(3)M eyer and Gadegast設(shè)計(jì)了一種新的類似MPEG比特流的視頻加密方案,稱之為SECMPEG

SECMPEG使用密碼學(xué)算法DES和RSA可以實(shí)現(xiàn)四個(gè)級別的密級:

第一級加密所有的頭信息;第二級加密所有的頭信息和Block中的DC和AC系數(shù);第辜級加密Ilp貞和PB幀中的所有Blods第四級加密所有的數(shù)據(jù)。SECM PEG同樣忽略了運(yùn)動信息的安全性。而且與標(biāo)準(zhǔn)的MPEC格式不兼容,需要設(shè)計(jì)專門的編解碼器H。

(4)選擇加密的另一個(gè)重要的方向是由Bharat Bhargava等提出的加密DCT符號、運(yùn)動矢量MV符號的方法

僅加密I幀的DCT符號位的方法稱為VEA算法;除了I幀DCT符號位,還要加密PB幀的DCT符號位和運(yùn)動矢量MV的符號位的方法稱之為MVEA算法。這兩種方法采用將符號位與產(chǎn)生的隨機(jī)比特流異或的方法來加密。然而這種加密方法被認(rèn)為在明文攻擊時(shí)是很脆弱的M,相對保密性要好得多的第三種方法是使用分組密碼算法加密(如DES、AES或lDEA)的密碼學(xué)算法來對DCT系數(shù)或運(yùn)動矢量MV符號位進(jìn)行加密,稱之為RVEA算法。這種加密符號位的方法顯然計(jì)算量小,由于采用了分組加密算法,保密級別較高。然而RVEA仍然有需要改進(jìn)的地方,因?yàn)镽VEA為減少計(jì)算量對每個(gè)宏塊最多加密64個(gè)符號位,存在部分AC系數(shù)的符號位沒有被加密,而C-PW11表明僅加密部分AC系數(shù)是不能使整個(gè)視頻圖像內(nèi)容都因加密而被破壞的。

僅選擇符號位加密方法的一個(gè)重要的啟示是,如果僅從視頻碼流申選取符號位加密而不改變碼流的固定格式,然后將這些加密后的符號位再還原至提取的位置,這樣與其他數(shù)據(jù)混合得到的密文碼流就仍然符合視頻壓縮標(biāo)準(zhǔn)。前三種選擇加密方案處理得到的視頻碼流格式被破壞,影響了視頻信息的正常應(yīng)用。本文正是在RVEA算法的啟示下,基于不破壞碼流格式的原則和盡量選取少量關(guān)鍵信息進(jìn)行加密的思想分析采用了如下加密方案。

2、本文采用的加密方案

為了保證視頻的實(shí)時(shí)傳輸,應(yīng)該在視頻碼流中選取少量的關(guān)鍵信息加密;而為了保證安全性,應(yīng)該采用高強(qiáng)度的分組加密算法。通過調(diào)研分析國內(nèi)外現(xiàn)有的視頻加密方案,對視頻碼流的信源特征進(jìn)行深入研究和反復(fù)試驗(yàn),得出視頻流中需要加密的關(guān)鍵信息有幀內(nèi)塊DC碼字(NTRADC)、幀內(nèi)塊DC碼字最高位(INrIRADCs)、除幀內(nèi)塊DC外其他DCT系數(shù)流程變長碼字符號位(TCOEFs)、MV符號位(MVs)。

以H.263為例,經(jīng)編碼壓縮后視頻碼流中視頻內(nèi)容信息主要是DCT系數(shù)和運(yùn)動矢量MV碼字。其中INTRADC采用定長八位編碼,TCOEF和MV采用變長編碼,而變長編碼的碼字值是沒有規(guī)則的,所以對TCOEF或MV碼字加密后得到的隨機(jī)碼字在碼表中是很可能不存在的。對于H.26a如果TCOEF變長碼字值110加密后變成011,解碼器在變長碼表中搜索不到該碼字,于是密文碼流解碼出錯(cuò)影響了視頻的正常應(yīng)用。而僅改變符號位不改變整個(gè)碼字是不會造成上述情況出現(xiàn),解碼器能夠順利解碼得到符號位被加密的視頻效果。因此為了使加密后的碼流兼容協(xié)議標(biāo)準(zhǔn),只能加密TCOEF或MV碼字的符號位。對于H.263協(xié)議,MV碼表中碼字0000000000101沒有相反符號的碼字對應(yīng),但由于這個(gè)長碼字是極少出現(xiàn)的,所以可以對該MV碼字符號不加密,以保證碼流兼容。另外對于INTRADC系數(shù),在H.263協(xié)議中10000000和0000000QXJ INTRADC的非法碼宇,由于采用定長碼字,除上述兩個(gè)碼字外加密后任意八位碼字都是合法碼字,因此實(shí)現(xiàn)時(shí)需要保證NTRADC加密后不是這兩個(gè)碼字。

在保密性要求較高的場合可以選擇加密NTRADC碼字和全部TCOEF及MV符號位。統(tǒng)計(jì)表明INTRADC最高位數(shù)據(jù)量大小占碼流的比例為0.1%以內(nèi);INTRADC碼字和MV符號共占2%以內(nèi),TCOEF符號占碼流的10%以內(nèi),如果加密上述定義的全部關(guān)鍵信息,本方案也僅需加密碼流的12%左右的數(shù)據(jù)。加密NTRADC碼字和不限定每個(gè)宏塊加密的符號位數(shù)量使得本方案相對RVEA有更好的保密性,而且事實(shí)上由此增加的計(jì)算量非常小。

3、加密方案的設(shè)計(jì)與實(shí)現(xiàn)

本加密方案的基本思想是在分析視頻碼流時(shí)選取少量的關(guān)鍵信息,采用高強(qiáng)度的分組加密算法加密,然后將加密后的關(guān)鍵數(shù)據(jù)的密文還原至提取位置和那些非關(guān)鍵數(shù)據(jù)混合得到加密后的視頻碼流,解密的過程則相反。

視頻加密和解密應(yīng)做成獨(dú)立于視頻編碼器和解碼器的軟件或硬件模塊,這樣不需修改編碼模塊或解碼模塊,有利于應(yīng)用和產(chǎn)品化。經(jīng)過壓縮編碼的視頻碼流經(jīng)過加密模塊得到仍然符合標(biāo)準(zhǔn)的視頻密文碼流,密文碼流經(jīng)解密模塊恢復(fù)成原始的視頻碼流,然后經(jīng)過解碼器就可以得到正確的視頻圖像。如果密文碼流沒有解密或沒有獲得正確的解密密鑰,經(jīng)過解碼器只能得到加密的視頻圖像。

另外無論是加密過程中的分組加密模塊還是解密過程中的分組解密模塊都被設(shè)計(jì)成一個(gè)獨(dú)立的算法模塊,可以根據(jù)實(shí)際應(yīng)用需求在幾種分組加密算法中選用,比如可以是3DES,AES或IDEA,也可以是用戶或第三方提供的專門分組加密算法。另外,加密和解密過程設(shè)計(jì)為以RTP視頻數(shù)據(jù)包為單位,即將每個(gè)RTP包里提取的關(guān)鍵數(shù)據(jù)組合起來以分組為單位使用分組密碼算法加密。以包為單位進(jìn)行加解密的優(yōu)點(diǎn)是對視頻網(wǎng)絡(luò)傳輸容錯(cuò)性影響非常小,因?yàn)橐园鼮閱挝患用茉诰W(wǎng)絡(luò)中出現(xiàn)丟包時(shí),前一包數(shù)據(jù)的丟失不會影響后一包數(shù)據(jù)的正確解密,所以不會引起由于加密造成的視頻質(zhì)量破壞的擴(kuò)散。

視頻加密模塊內(nèi)部主要由三部分組成:碼流分析與關(guān)鍵數(shù)據(jù)提取模塊(簡稱為碼流分析模塊)、分組加密模塊和碼流混合模塊,如圖1(a)所示。碼流分析模塊的主要功能是讀取分析編碼后的視頻數(shù)據(jù),根據(jù)關(guān)鍵信息選取標(biāo)志將其中選擇的關(guān)鍵數(shù)據(jù)提取出來組合在一起,同時(shí)記錄每個(gè)關(guān)鍵數(shù)據(jù)在數(shù)據(jù)包中的位置和長度信息(以bit為單位)。碼流分析模塊實(shí)際上類似于解碼器,在解碼的過程中逐個(gè)獲取并保存關(guān)鍵信息。分組加密模塊的主要功能是使用分組密碼算法將提取的關(guān)鍵數(shù)據(jù)以分組(通常分組大小為64bts 128bits, 192bitS 256bits)為單位進(jìn)行加密。碼流混合模塊則將加密得到的密文根據(jù)每個(gè)關(guān)鍵數(shù)據(jù)的位置和長度的記錄信息重新寫回到原始碼流中去替代加密前碼流中提取的關(guān)鍵數(shù)據(jù),即與其他非關(guān)鍵數(shù)據(jù)混合得到加密后的碼流。

視頻解密模塊內(nèi)部結(jié)構(gòu)相應(yīng)地也由碼流分析模塊、分組解密模塊和碼流混合模塊組成。碼流混合模塊將分組解密后復(fù)原的關(guān)鍵數(shù)據(jù)明文根據(jù)每個(gè)關(guān)鍵數(shù)據(jù)密文位置和長度信息的記錄重新寫回到碼流中,即與其他非密文數(shù)據(jù)混合得到解密后的碼流。

假設(shè)用來存儲碼流分析提取的關(guān)鍵信息的緩沖區(qū)為Buf用來記錄每個(gè)關(guān)鍵信息的長度和位置信息的結(jié)構(gòu)體數(shù)組為NFO。nNFO結(jié)構(gòu)體有兩個(gè)成員:一個(gè)是關(guān)鍵信息的bit長度Lf8 -個(gè)是該關(guān)鍵信息在包中的相對位置Adla通過這兩個(gè)參數(shù)可以在加密或解密后,將數(shù)據(jù)準(zhǔn)確地還原至RTP包中的原始提取位置。Nun是一個(gè)包中關(guān)鍵信息個(gè)數(shù)的最大值,同時(shí)假設(shè)關(guān)鍵信息提取類型標(biāo)志Flag。

三、會議電視系統(tǒng)之信源選擇加密

1、采用的混合加密算法體系

針對會議電視系統(tǒng)媒體流的通信具有實(shí)時(shí)性強(qiáng)、數(shù)據(jù)量大的特點(diǎn),可以采用對稱加密算法。也就是分組密碼算法選擇媒體流中的關(guān)鍵信息進(jìn)行加密。對稱加密的特點(diǎn)是加密與解密使用相同的會話密鑰,運(yùn)算速度較快,采用這種加密方法可提高加解密速度,最大程度減小延時(shí)。

在對稱加密的加密體系下,加密和解密所用的密鑰均是相同的,為增強(qiáng)安全性需要通過動態(tài)更換密鑰的方法來保障系統(tǒng)安全性。而會議電視系統(tǒng)涉及的人員很多,加密方在每次啟用新的密鑰時(shí),都要通過某種秘密渠道把密鑰傳送給解密方。在傳送過程中,密鑰容易泄露,因此建立安全的密鑰分發(fā)機(jī)制,保證密鑰傳輸路徑的安全對保證視頻會議系統(tǒng)安全性至關(guān)重要。

利用非對稱密鑰體制也稱為公開密鑰體制(如RSA算法)則可以解決視頻會議系統(tǒng)中的密鑰安全分發(fā)問題。在公開密鑰體制下,每個(gè)通信實(shí)體均有一個(gè)私有密鑰和一個(gè)公開密鑰,私鑰僅為實(shí)體個(gè)人所知,公鑰為公眾所知。明文采用用戶的公鑰加密以后只能用該用戶的私鑰才能解開。如圖3所示,假設(shè)A終端向B終端傳送視頻信息時(shí)使用會話密鑰Key對信源信息選擇加密。

因此采用現(xiàn)代密碼學(xué)中基于分組加密的對稱算法和公開密鑰算法組成的混合密碼算法體系,可以建立一個(gè)便于管理的高效的會議電視系統(tǒng)。

2、信源加密解密模塊在視頻會議中的具體應(yīng)用方式

視頻信源加密解密模塊在視頻會議系統(tǒng)中有兩種應(yīng)用方式:

(1)嵌入式

將視頻加密和解密模塊嵌入視頻編碼模塊和網(wǎng)絡(luò)打包傳輸模塊(RTP打包和P打包)之間,通常以軟件模塊的形式嵌入視訊終端內(nèi)部。視訊終端編碼后的原始碼流經(jīng)過視頻加密模塊然后打RTP包,通過網(wǎng)絡(luò)模塊打田包傳輸。另一個(gè)方向上,視訊終端的網(wǎng)絡(luò)模塊將接收的數(shù)據(jù)包進(jìn)行IP包解析,接著RTP包解析,然后經(jīng)過解密模塊,經(jīng)解碼模塊解碼顯示。視頻加密和視頻解密模塊嵌入位置如圖4(a)、圖4(b)所示。

在256kbps—2 048kbps帶寬下,測試得出加密模塊的平均附加延時(shí)均不超過2ms如圖5所示。

(2)獨(dú)立式

將視頻加密和解密模塊在一個(gè)獨(dú)立的硬件設(shè)備中實(shí)現(xiàn)。該設(shè)備有兩個(gè)RJ45網(wǎng)絡(luò)接口,一個(gè)連接視訊終端,一個(gè)連接到網(wǎng)絡(luò)上。該獨(dú)立式設(shè)備可以同時(shí)進(jìn)行加解密雙向操作。從終端過來的網(wǎng)絡(luò)數(shù)據(jù)包首先進(jìn)行IP包解析,接著進(jìn)行RTP包解析得到視頻原始碼流,然后調(diào)用加密模塊進(jìn)行加密,最后將加密后的碼流進(jìn)行RTP包重建和P包重建再傳輸至網(wǎng)絡(luò)。另一個(gè)方向上,從網(wǎng)絡(luò)傳輸來的數(shù)據(jù)包首先進(jìn)行IP包解析,接著進(jìn)行RIP包解析得到經(jīng)過加密的視頻密文碼流,然后調(diào)用解密模塊進(jìn)行解密,最后將解密后的碼流進(jìn)行RTP包重建和IP包重建然后傳輸至視訊終端進(jìn)行解碼顯示。獨(dú)立式視頻加解密設(shè)備內(nèi)部主要模塊如圖(C)所示。

小知識之信源

信源就是信息的來源,可以是人、機(jī)器、自然界的物體等等。信號的產(chǎn)生(物)被稱為信源,相對應(yīng)的概念應(yīng)該是信號的接受(物)被稱為信宿。