多安全級網(wǎng)絡(luò)視頻如何加密

為了滿足網(wǎng)絡(luò)多媒體在安全性和實(shí)時(shí)性上多樣化的加密需求,同時(shí)為新一代的視頻壓縮編碼技術(shù)提高安全保障。為此我們基于H.264視頻編碼標(biāo)準(zhǔn)和密碼學(xué)原理,分析現(xiàn)有的視頻加密算法性能,同時(shí)從安全性出發(fā),面向網(wǎng)絡(luò)視頻服務(wù)需求制定多安全級網(wǎng)絡(luò)視頻加密方案。

一、基于H.264的視頻加密算法

1、H.264視頻編碼標(biāo)準(zhǔn)及H.264視頻加密算法分析

H.264是由ISO/IEC與ITU-T組成的聯(lián)合視頻組制定的新一代視頻壓縮編碼標(biāo)準(zhǔn)。它著重于解決壓縮的高效率和傳輸?shù)母呖煽啃?,采取“網(wǎng)絡(luò)友好”的結(jié)構(gòu)和語法,加強(qiáng)對誤碼和丟包的處理?;贖.264的視頻加密算法能夠較好地滿足網(wǎng)絡(luò)服務(wù)高安全性和實(shí)時(shí)性的要求,其在網(wǎng)絡(luò)視頻加密領(lǐng)域中具有廣闊的應(yīng)用前景Ⅲ。已有的基于H.264的視頻加密算法在視頻壓縮編碼過程中選擇不同的數(shù)據(jù)及壓縮編碼位置進(jìn)行加密,獲得了不同加密效果。

(1)完全加密算法

完全加密算法將視頻數(shù)據(jù)看成普通二進(jìn)制數(shù)據(jù)與密鑰流進(jìn)行異或運(yùn)算。安全性高,但加密數(shù)據(jù)量大,但運(yùn)算本身耗費(fèi)時(shí)間,加密速度極低。

改進(jìn)的算法有VEA和CSC算法,VEA算法將明文塊分成奇偶兩部分,將奇數(shù)部分用DES加密得到密文的一半,另一半為偶數(shù)部分和奇數(shù)部分按位異或的結(jié)果。其將加密復(fù)雜度降為接近原來的一半,同時(shí)保持了較高的安全性。CSC算法將混沌整數(shù)序列產(chǎn)生器產(chǎn)生的序列與視頻數(shù)據(jù)做異或運(yùn)算,產(chǎn)生的結(jié)果即為密文。其比DES、IDEA等分組密碼更快速。

完全加密算法在視頻壓縮編碼之后進(jìn)行加密,不改變壓縮比。但格式信息被加密,數(shù)據(jù)不具有可操作性。

(2)部分加密算法

部分加密算法基于H.264編碼幀結(jié)構(gòu),在視頻編碼之后利用密鑰與數(shù)據(jù)進(jìn)行異或運(yùn)算。有加密格式信息算法、加密I幀算法、加密所有I塊算法、加密I塊及P幀算法。

加密格式信息可以達(dá)到非授權(quán)者不可同步的目的。但格式信息具有統(tǒng)計(jì)特性,僅加密其而未加密數(shù)據(jù)安全性低。

I幀采用幀內(nèi)編碼模式,B、P幀進(jìn)行幀間編碼參考I幀,加密I幀具有一定的安全性。由于B、P幀中有不依賴于I幀而獨(dú)立編碼的I塊,僅加密I幀安全性不高。加密所有I塊具有較高安全性,而加密所有I塊并加密P幀安全性進(jìn)一步提高。

部分加密算法的加密數(shù)據(jù)量較大,異或運(yùn)算需要時(shí)間,從B、P幀中識別I塊也有時(shí)間耗費(fèi),三種算法加密速度都較低。加密在視頻編碼之后進(jìn)行,不改變壓縮比。加密格式信息算法破壞了數(shù)據(jù)格式,不具有數(shù)據(jù)可操作性。未加密格式信息的算法具有數(shù)據(jù)可操作性。

(3)DCT系數(shù)置亂算法

算法對經(jīng)過DCT變換量化后的16×16宏塊內(nèi)DCT系數(shù)進(jìn)行置亂以破壞其統(tǒng)計(jì)特性,實(shí)現(xiàn)加密。有完全置亂算法,分段置亂算法,高低頻間置亂算法,子塊間置亂算法。

完全置亂算法將宏塊中64個(gè)DCT系數(shù)置亂。DCT變換后,非零系數(shù)約占總數(shù)的1/3,一個(gè)宏塊的加密空間為(16×16×1/3)!=851。其違背了“之”字型掃描能量大小順序,壓縮比變化大。分段置亂算法將DCT系數(shù)分段,可據(jù)安全性及壓縮比的不同要求在不同段內(nèi)置亂。加密空間為N1!×N21×…,(N1+N2…=16×16×1/3)。高低頻間置亂算法將DCT系數(shù)在高頻與低頻之間隨機(jī)置亂,加密空間為(16×16×1/3)!=85 1,其系數(shù)處于極其無序的混亂狀態(tài),安全性高。子塊間置亂是將子宏塊作為整體進(jìn)行置亂。加密空間為N!(N為子宏塊的個(gè)數(shù))。

DCT系數(shù)置亂算法僅置亂而未加密數(shù)據(jù),安全性低。由加密空間可知其安全性排序?yàn)椋焊叩皖l之間置亂算法>完全置亂算法>分段置亂算法>子塊間置亂算法。數(shù)據(jù)置亂的時(shí)間遠(yuǎn)遠(yuǎn)小于加密數(shù)據(jù)時(shí)間,因此DCT系數(shù)置亂算法加密速度快。各算法壓縮比變化程度為:子塊間置亂算法<分段置亂算法<完全置亂算法<高低頻間置亂算法。算法均具有數(shù)據(jù)可操作性。

(4)選擇加密DCT系數(shù)和MVD符號算法

DCT系數(shù)和MVD是H.264中的重要數(shù)據(jù),直流DC系數(shù)表示圖像大致信息,交流AC系數(shù)表示圖像細(xì)節(jié)信息,運(yùn)動矢量差MVD表示圖像運(yùn)動信息。

加密DCT系數(shù)符號算法是提取DCT系數(shù)符號組成二進(jìn)制碼流與密鑰進(jìn)行異或運(yùn)算,其加密空間為2的85次方,安全性不高,但加密速度快。直接加密DCT系數(shù)算法選擇DC,AC系數(shù)加密Ⅲ,安全性較高,但加密速度降低。加密MVD符號位是提取MVD系數(shù)符號組成二進(jìn)制碼流與密鑰進(jìn)行異或運(yùn)算,其安全性不高但加密速度快。加密DCT系數(shù)破壞了數(shù)據(jù)間的統(tǒng)計(jì)特性,壓縮比改變大,僅加密符號而不加密數(shù)據(jù)的算法對壓縮比影響不大。算法均具有數(shù)據(jù)可操作性。

(5)熵編碼加密算法

H.264視頻編碼標(biāo)準(zhǔn)中熵編碼的編碼方式主要有基于上下文自適應(yīng)的可變長編碼(CAVLC)和基于上下文自適應(yīng)的二進(jìn)制算術(shù)編碼(CABAC)。現(xiàn)有的基于CAVLC熵編碼加密算法是利用流密碼算法加密碼字索引,根據(jù)加密后新的索引號在原碼表中找到對應(yīng)新碼字作為碼流輸出。其具有一定安全性,加密算法和編碼過程同時(shí)進(jìn)行,加密速度快、壓縮比改變小。熵編碼加密在數(shù)據(jù)打包之前進(jìn)行,未破壞格式信息,視頻具有可操作性。

(6)Zig-zag掃描順序置亂算法

Zig-zag置亂算法使用一個(gè)隨機(jī)序列代表Zig-zag掃描順序。但經(jīng)過Zig-zag掃描后DCT系數(shù)具有很強(qiáng)規(guī)律性,容易恢復(fù),其安全性差,在實(shí)際加密中很少應(yīng)用。

(7)FMO靈活宏塊排序加密算法

FMO靈活宏塊排序是針對抗誤碼提出的。在H.264進(jìn)行壓縮編碼后,對宏塊按FMO-map的掃描順序?qū)⒑陦K編排到不同的slice中,使得在一個(gè)slice丟失時(shí)同樣可以恢復(fù)圖像。此算法對宏塊按照自行設(shè)計(jì)的FMO-map進(jìn)行掃描,并加密FMO-map??刹捎酶邚?qiáng)度的密碼算法加密或?qū)⒑陦K影射到多個(gè)slice來提高算法安全性。由于在壓縮編碼后進(jìn)行加密,未對數(shù)據(jù)做處理,其加密速度快。同時(shí)沒有改變壓縮比和數(shù)據(jù)可操作性。

2、基于H.264的視頻加密算法分級

H.264視頻加密算法在安全性、加密速度等方面可達(dá)到不同性能級別。取一幀的CIF圖像(352×288)為例分析其加密空間;完全加密算法為2352X288,其加密全部數(shù)據(jù);部分加密算法約為233792~2352X 288,若每30幀編碼一幀I幀,其加密數(shù)據(jù)約為總數(shù)的1/30~1/10; DCT系數(shù)置亂算法為396×16 1~396×85!;加密DCT系數(shù)算法約為233792,加密數(shù)據(jù)約為總數(shù)的1/3;加密DCT系數(shù)符號和MVD符號算法為396×2L6~396×285;熵編碼加密算法和FMO靈活宏塊排序加密算法在數(shù)據(jù)編碼或預(yù)測前加密參考碼表,加密空間為用不同密鑰加密碼表的密鑰空間;Zig-zag掃描順序置亂算法的加密空間為396×16 1,加密幀內(nèi)預(yù)測模式字為23。

基于以上各算法加密空間和加密數(shù)據(jù)比例分析,本文對各算法在安全性、加密速度、壓縮比影響及數(shù)據(jù)可操作性方面的性能進(jìn)行比較。全加密算法加密速度慢,Zig-zag掃描順序置亂算法安全性低,且兩算法都破壞了格式信息,加密幀內(nèi)預(yù)測模式字算法安全性低,它們不適用于網(wǎng)絡(luò)視頻加密。其它視頻加密算法可按安全性分為三級,如表1所示。第一級算法安全性不高但加密速度較快,可應(yīng)用實(shí)時(shí)性要求較高而安全性要求不高的場合。第二級算法安全性好且加密速度快??捎糜诎踩院蛯?shí)時(shí)性都有要求的場合。第三級算法安全性高但加密速度較慢,可用于安全性要求高而實(shí)時(shí)性要求不高的場合。

二、基于H.2 64的多安全級網(wǎng)絡(luò)視頻加密方案

1、多級網(wǎng)絡(luò)視頻加密需求分析

網(wǎng)絡(luò)提供的視頻服務(wù)主要有:網(wǎng)絡(luò)視頻點(diǎn)播、可視電話與網(wǎng)絡(luò)視頻聊天、視頻會議。

網(wǎng)絡(luò)視頻點(diǎn)播畫面中靜止和運(yùn)動的圖像比例相當(dāng),畫面需要一定可辨識度。視頻在網(wǎng)絡(luò)中傳輸速度快,典型的視頻流速率可達(dá)3~6M。同時(shí)用戶可能對視頻進(jìn)行拖動,快進(jìn)等操作。因此加密算法應(yīng)同時(shí)加密靜止和運(yùn)動圖像,安全性不高但加密速度快,具備數(shù)據(jù)可操作性。

多安全級網(wǎng)絡(luò)視頻如何加密

可視電話與網(wǎng)絡(luò)視頻聊天中圖像背景是靜止的,只有人物的極少運(yùn)動。算法應(yīng)加密靜止圖像的數(shù)據(jù)量多一些。其安全性要求一般,但網(wǎng)絡(luò)傳輸需要較快的加密速度。聊天中對視頻的操作多在解密之后進(jìn)行,因此對視頻加密算法的數(shù)據(jù)可操作性沒有要求。

視頻會議多應(yīng)用在高機(jī)密的場合,根據(jù)H.323視頻會議標(biāo)準(zhǔn),386 Kbit/s的帶寬可以組成較好的質(zhì)量。因此加密算法應(yīng)安全性高,加密速度較快。會議的機(jī)密性要求其在傳輸中不能竊取,而數(shù)據(jù)的不可操作性在這方面恰恰起到了積極作用。

2、基于H.264的多安全級網(wǎng)絡(luò)視頻加密方案

由網(wǎng)絡(luò)視頻加密需求分析可知,傳統(tǒng)單一的視頻加密算法并不能滿足多樣的網(wǎng)絡(luò)視頻加密需求,網(wǎng)絡(luò)資源無法達(dá)到合理利用。本文根據(jù)不同網(wǎng)絡(luò)視頻內(nèi)容的加密需要,以一幀CIF圖像(352×288)為例分析不同級別的視頻加密服務(wù)所應(yīng)達(dá)到的性能指標(biāo)。其中,(壓縮比變化率)表示加密前后數(shù)據(jù)量的變化情況,(時(shí)間比例)表示加密前后所用時(shí)間的變化。同時(shí)基于H.264視頻加密算法分析,針對每級網(wǎng)絡(luò)視頻加密服務(wù)選擇適當(dāng)?shù)募用芩惴ǎO(shè)計(jì)了適合網(wǎng)絡(luò)視頻需求的多安全級視頻加密方案。如下表2所示。

多安全級網(wǎng)絡(luò)視頻如何加密

小知識之網(wǎng)絡(luò)視頻

所謂網(wǎng)絡(luò)視頻,是指由網(wǎng)絡(luò)視頻服務(wù)商提供的、以流媒體為播放格式的、可以在線直播或點(diǎn)播的聲像文件。網(wǎng)絡(luò)視頻一般需要獨(dú)立的播放器,文件格式主要是基于P2P技術(shù)占用客戶端資源較少的FLV流媒體格式。