一種面向海量編碼多媒體數(shù)據(jù)的速度可調(diào)節(jié)加密方法以及采用該方法的視頻處理平臺的制作方法
【專利說明】一種面向海量編碼多媒體數(shù)據(jù)的速度可調(diào)節(jié)加密方法以及 采用該方法的視頻處理平臺 【技術領域】
[0001] 本發(fā)明涉及一種面向海量編碼多媒體數(shù)據(jù)的速度可調(diào)節(jié)加密方法以及采用該方 法的視頻處理平臺。 【【背景技術】】
[0002] 近年物聯(lián)網(wǎng)應用受到了學術和工業(yè)界的廣泛重視。其中以音視頻數(shù)據(jù)感知為主的 多媒體感知是物聯(lián)網(wǎng)應用中的一個重要應用。同時物聯(lián)網(wǎng)的安全也受到了高度重視。同時, 以網(wǎng)絡通信技術為支撐的物聯(lián)網(wǎng)應用繼承了以往的網(wǎng)絡安全問題。由于物聯(lián)網(wǎng)感知設備資 源受限,尤其無源設備的電能、計算等資源很有限,制約了數(shù)據(jù)的安全保護,使其信息安全 問題比以往更為棘手,該問題受到了學術界和工業(yè)界的高度重視。對于視頻感知應用,由于 感知數(shù)據(jù)量巨大,資源受限這一問題會更加嚴重。目前缺少在計算資源受限條件下完成海 量實時多媒體感知數(shù)據(jù)加密方法。
[0003] 在多媒體數(shù)據(jù)的優(yōu)化加密領域,現(xiàn)有技術主要可以劃分成三類:第一類,全加密或 優(yōu)化的全加密方法;第二類,選擇性加密方法,第三類,與編碼過程相結合的加密方法。其 中,后兩類算法的主要思想是將編碼過程后或編碼過程中的一部分重要數(shù)據(jù)進行加密,而 另外一部分數(shù)據(jù)不加密,利用視頻編碼的特性使得攻擊者由于缺少重要數(shù)據(jù)子集而無法獲 得清晰的視頻,使之喪失商用價值,同時降低加密的計算強度。但對于軍事等敏感應用,少 量的明文數(shù)據(jù)泄漏仍然可以獲得視頻中的一些重要信息,從而使部分視頻內(nèi)容被攻擊者理 解。相對這兩類方法,第一類方法安全性較高,但由于該算法只能將傳統(tǒng)塊加密算法的吞吐 量提高大約1倍,因此一直沒能被廣泛的推廣。此外以往研究都是從加密算法的實時性進 行考慮,而沒能面向具體應用從資源動態(tài)優(yōu)化的角度進行展開。同時現(xiàn)有技術缺少對多媒 體數(shù)據(jù)量的動態(tài)調(diào)整,現(xiàn)有技術中的算法大多面向某具體視頻編碼器,因此通用性差。以上 原因使得這些算法難以在實際系統(tǒng)中運用。 【
【發(fā)明內(nèi)容】
】
[0004] 本發(fā)明設計一種面向海量編碼多媒體數(shù)據(jù)的速度可調(diào)節(jié)加密方法。其能夠解決多 媒體感知應用中有限的計算及能量資源下的數(shù)據(jù)加密問題。所述的面向海量編碼多媒體數(shù) 據(jù)的速度可調(diào)節(jié)加密方法包括以下步驟:S1將輸入明文數(shù)據(jù)分割成若干子數(shù)據(jù)塊;S2對分 割后的數(shù)據(jù)中的第一子數(shù)據(jù)塊使用現(xiàn)有加密算法進行加密;S3對接下來的多個子數(shù)據(jù)塊, 使用前一個加密的子數(shù)據(jù)塊的明文與之進行按位異或操作,所述子數(shù)據(jù)塊個數(shù)為一指定參 數(shù),所述指定參數(shù)為事先指定或根據(jù)數(shù)據(jù)緩沖使用量計算,以達到速度動態(tài)調(diào)節(jié)的目的;S4 對輸入數(shù)據(jù)重復步驟S2和S3直到全部數(shù)據(jù)處理完畢;
[0005] 也可采用另一種加密方法,S卩:S1將輸入明文數(shù)據(jù)分割成若干子數(shù)據(jù)塊;S2對分 割后的數(shù)據(jù)中的第一子數(shù)據(jù)塊使用現(xiàn)有加密算法進行加密;S3對接下來的多個子數(shù)據(jù)塊, 總使用第一個加密的子數(shù)據(jù)塊的明文與之進行按位異或操作,所述子數(shù)據(jù)塊個數(shù)為一指定 參數(shù),所述指定參數(shù)為事先指定或根據(jù)數(shù)據(jù)緩沖使用量計算,以達到速度動態(tài)調(diào)節(jié)的目的;S4對輸入數(shù)據(jù)重復步驟S2和S3直到全部數(shù)據(jù)處理完畢;
[0006] 若步驟(1)輸入數(shù)據(jù)為字節(jié)流,則按照給定長度進行數(shù)據(jù)分塊,末尾補足根據(jù)步 驟S1中所選的現(xiàn)有加密方法;若步驟S1輸入數(shù)據(jù)為網(wǎng)絡數(shù)據(jù)包,則直接以數(shù)據(jù)包為子數(shù)據(jù) 塊。
[0007] 若步驟(1)輸入數(shù)據(jù)為字節(jié)流,則按照給定長度進行數(shù)據(jù)分塊,末尾補足根據(jù)步 驟S1中所選的現(xiàn)有加密方法;若步驟S1輸入數(shù)據(jù)為網(wǎng)絡數(shù)據(jù)包,則直接以數(shù)據(jù)包為子數(shù)據(jù) 塊。當所述步驟S1中輸入的數(shù)據(jù)為網(wǎng)絡數(shù)據(jù)包時,在步驟S3中,若異或操作中前面子數(shù)據(jù) 塊長度比當前子數(shù)據(jù)塊短,則需要對所述前面的子數(shù)據(jù)塊進行重復拼接以補足長度,具體 方法為
[0008] 其中,PQ是第i個數(shù)據(jù)包的長度,p,是第i個數(shù)據(jù)包第k字節(jié)的明文,c ?是該明 文所對應的密文。
[0009] 本發(fā)明還涉及一種采用前述的加密方法的平臺,所述的平臺為基于DSP和ARM的 嵌入式視頻處理平臺,所述的平臺的視頻處理系統(tǒng)主要由采集/顯示部分、數(shù)據(jù)處理部分 以及數(shù)據(jù)控制部分組成。
[0010] 所述的采集/顯示部分包括感知數(shù)據(jù)采集模塊,該模塊由采集模塊、模數(shù)轉換、 FPGA以及FIFO組成,運行時用戶控制命令由可編程邏輯器件給出,F(xiàn)PGA首先截獲、讀取和 解析命令字,根據(jù)用戶要求的模式進行處理;采集模塊負責將視頻信號數(shù)字化,同時對輸入 的信號進行格式轉換后放在FIFO中,通過中斷通知DSP理器;在數(shù)據(jù)處理模塊的DRAM中, 開辟可存放多幀圖像的緩存區(qū),通過EDMA搬移數(shù)據(jù)周期性存放。
[0011] 所述的數(shù)據(jù)處理部分由DSP、DRAM和Flash Memory組成,所述DSP選用TI公司的 C6455作為數(shù)據(jù)處理的主處理芯片,用于數(shù)據(jù)壓縮和加密處理;采用64Mbyte的外部存儲器 DRAM作為編碼模塊的數(shù)據(jù)緩存,用于存放壓縮過程中的參考幀、重建幀、加密壓縮碼流,以 解決編碼過程中片內(nèi)存儲資源不足的問題;選用8MB Flash Memory芯片作為程序存儲器, 實現(xiàn)系統(tǒng)的加電自舉。
[0012] 所述的數(shù)據(jù)控制部分由控制模塊實現(xiàn),其核心選用三星公司生產(chǎn)的基于ARM920T 內(nèi)核的S3C2410芯片為核心,采用uClinux作為操作系統(tǒng);模塊的存儲器包括DRAM和 Flash,CPLD模塊主要完成外部芯片選信號的譯碼,基于雙端口 RAM實現(xiàn)DSP和ARM的數(shù)據(jù) 交互,能夠由JTAG接口系統(tǒng)進行開發(fā)和調(diào)試。 【【附圖說明】】
[0013] 圖1為本加密方法之一的流程圖。 【【具體實施方式】】
[0014] 本發(fā)明用于視頻感知系統(tǒng),例如多軸無人飛行器,因為涉及敏感的應用安全需求, 系統(tǒng)需要對感知視頻進行安全存儲(安全存儲在系統(tǒng)平臺中的電子盤中)。此外擴展功能 包括通過無線網(wǎng)絡傳回快照數(shù)據(jù);根據(jù)快照數(shù)據(jù)對視頻采集的清晰度進行遙控調(diào)整,對重 點采樣區(qū)域進行更高清的拍攝等。系統(tǒng)中海量高清視頻需要在飛行器上實時加密存儲,以 免飛行器被敵手獲得,從而使視頻泄露。
[0015] 計算資源、電力資源等也是限制實時數(shù)據(jù)加密保護的受限因素。上述資源的增長 很可能無法趕上感知數(shù)據(jù)量的增長。首先,加密處理能力的增長與處理器的處理能力正相 關。按照摩爾定律,處理器速度每18個月翻一番,相當于每年增長約60%。其次,在數(shù)據(jù)量 的增長方面,硬盤存儲容量的增長超過了處理器增長速度,達到了每年100%的增長速度。 另一方面,廣域網(wǎng)寬帶、圖形能力增長更快。此外,一些電池供電的計算設備,其計算及加密 能力還受到電池能力的限制。電池技術的瓶頸已經(jīng)成為了計算機和移動設備的一個棘手問 題。因此電池供電的設備上資源約束會更加嚴重。
[0016]因此對于多媒體感知等系統(tǒng)中的數(shù)據(jù)安全將受到系統(tǒng)中資源約束的影響,并且這 種資源受限的特性不隨時間收斂。于是本發(fā)明還涉及如何在有限資源約束下對資源進行優(yōu) 化分配。
[0017] 對加密資源的優(yōu)化分配,需要從多媒體數(shù)據(jù)格式著手。對于多媒體數(shù)據(jù),尤其是視 頻數(shù)據(jù),其編碼格式特性使得其信息的價值分布不均勻。同時,在不同應用場景中,同樣的 信息價值截然不同。例如對于商業(yè)應用和軍事等敏感應用,視頻高頻和低頻分量價值不同。 因此需要研究一種優(yōu)化原則,分配有限的加密資源,以保證信息效用價值安全最大化。本申 請中的方法,不是全加密所有數(shù)據(jù),保證數(shù)據(jù)的每一個byte安全,而是在滿足系統(tǒng)實時性 的約束限制下,對數(shù)據(jù)進行優(yōu)化選擇,使系統(tǒng)中數(shù)據(jù)面對攻擊時信息效用價值泄漏更小。由 于前述效用價值與應用緊密相關,因此對于資源受限的視頻感知應用,需要根據(jù)特定的應 用場景對數(shù)據(jù)加密進行優(yōu)化。
[0018] 本發(fā)明中的加密方法主要側重點為:1)雖然原型系統(tǒng)中僅使用了 720線的采集設 備,但隨著4K等高清攝像頭的普及,未來感知視頻的帶寬將十分巨大,同時由于視頻采集 和飛行器平臺共享了電池的電能,電能資源十分有限,直接影響飛行器的工作時間,因此加 密方法應盡量節(jié)能。
[0019] 2)由于應用場景中可能存在強力的攻擊者對數(shù)據(jù)進行一定的分析攻擊,因此簡單 的部分加密算法可能會造成部分視頻信息的泄漏,例如通過分析部分未加密的視頻編碼數(shù) 據(jù)可以獲得輪廓等部分信息,難以滿足系統(tǒng)的高安全需求,因此加密方法需要能抵抗一定 分析攻擊。
[0020] 3)現(xiàn)有加密方案的加密吞吐量無法動態(tài)調(diào)整,對于本應用,系統(tǒng)實時感知視頻的 帶寬變化較大,因此加密方法的吞吐量要能夠根據(jù)數(shù)據(jù)量實時調(diào)整。
[0021] 4)現(xiàn)有加密方案過分依賴于視頻編碼算法,通用性差,由于本系統(tǒng)以及很多類似 系統(tǒng)中,采集編碼模塊和實現(xiàn)應用數(shù)據(jù)加密的控制模塊獨立工作,且需要獨立升級更換,通 用算法將使得系統(tǒng)可擴展性更強,因此我們研究的算法將將充分考慮加密方法的吞吐量可 調(diào)整性及通用性。
[0022] 前面根據(jù)應用需求指出加密方法的幾個重要因素,本發(fā)明將利用編碼后視頻數(shù)據(jù) 的統(tǒng)計特性,提出一種結合塊密碼與流密碼的吞吐量可調(diào)且節(jié)格式無關的加密方法。
[0023] 由于視頻感知數(shù)據(jù)在字節(jié)級別上與傳統(tǒng)加密方法面向的文本數(shù)據(jù)具有完全不同 的統(tǒng)計特性,因此我們提出如下算法,如附圖1所示,使用傳統(tǒng)塊加密方法F加密一