<code id="m8pbv"><strong id="m8pbv"></strong></code>
    <meter id="m8pbv"><strong id="m8pbv"></strong></meter>
  1. <code id="m8pbv"></code>
    <big id="m8pbv"></big>

  2. <output id="m8pbv"><sup id="m8pbv"></sup></output>

    <output id="m8pbv"></output>
        <big id="m8pbv"></big>
      1. <acronym id="m8pbv"></acronym>
        <var id="m8pbv"><strong id="m8pbv"><dl id="m8pbv"></dl></strong></var>

        <blockquote id="m8pbv"></blockquote>

        <blockquote id="m8pbv"><ruby id="m8pbv"></ruby></blockquote>
      2. <output id="m8pbv"><ruby id="m8pbv"><div id="m8pbv"></div></ruby></output>

      3. <blockquote id="m8pbv"><ruby id="m8pbv"><rp id="m8pbv"></rp></ruby></blockquote>

      4. <var id="m8pbv"></var>

      5. <td id="m8pbv"></td>

        <big id="m8pbv"><strong id="m8pbv"></strong></big>
        <meter id="m8pbv"></meter>

      6. <dfn id="m8pbv"></dfn>

      7. <thead id="m8pbv"><sup id="m8pbv"><rp id="m8pbv"></rp></sup></thead>
        International       English      China       
        加密軟件網DRM Plus視頻加密方案
        首頁 SmartPhone DRM加密方案列表 DRM演示中心 軟件定制服務 加密狗 國際軟件 聯系我們
         
        幾種視頻加密算法介紹   返回

        1. 全部加密(Naive Algorithm)

        也就是使用標準 加密方法(比如DES)加密整個視頻流。將視頻比特流同傳統的文本數據同樣對待,沒有利用視頻壓縮后數據流的特殊結 構。這種方法顯然計算量巨大,很難保證視頻的實時傳輸。

        2. 選擇性加密(Selective Algorithm)

        選擇性 加密是基于信源特征的視頻加密方法的主要方向,其中可分為以下幾類:

        (1) 基本的選擇性加密算法是基于視頻 IPB幀結構的。這其 中*有代表性且*早提出的一種加密方法是僅僅加密I幀。然而, Agi and Gong 表明由于幀間的相關性和主要是由于P幀和B幀中的I-block沒有加密,這種僅加密I幀的方法不能達 到一個令人滿意的密級。這樣,有人提出加密I幀的同時還應加 密PB幀中的 I塊。但這樣增大 了計算量,同時視頻圖像中的運動信息也沒有被加密,保密性仍不夠好。

        于是,有人提出 利用提高視頻序列中I幀頻率的方法來 增加加密的內容從而提高密級。但這樣很明顯會增大加密的數據量,大大增加計算量,同時減小視頻壓縮率。

        (2) 僅加密頭信息的方法:MPEG、H26X序列都按一定結構組織圖像數據。例如,圖片組、圖片(幀)、片組、片、宏塊組、宏塊等 ,都由一個頭信息開始,后接圖像數據。經編碼后的視頻數據,要按標準規定的特定結構排列組織,收方按相同 的標準結構解碼,才能正確恢復原視頻圖像。

        該算法的原理是對這些頭信息數據加密,將其變成隨 機序列,再與其它數據混合,使接收方在不知道密鑰的情況下難以區分結構信息數據和視頻信息數據,更難以知 道數據結構和數據的具體內容,難以按原數據結構解碼接收到的視頻編碼數據,無法獲得原圖像,達到加密目的 。

        該算法僅加密頭信息,安全性較低。因為按照編碼標 準,頭信息具有固定的位置和內容,所以含信息量很小,加密的意義不大。只要能分辨出頭信息和視頻數據,就 可以恢復視頻圖像,并且一旦知道頭信息,密鑰和密碼算法也很容易破譯。事實上,基于MPEG、H26x等標準的視頻數據結構比較固定,視頻數據本身又有很強的特征,這種加密方式比較 容易破譯。

        該算法不降低壓縮率。增加計算量很小,適用于各種 標準視頻或圖像壓縮編碼數據。

        經過該算法加密的視頻編碼數據沒有通用的數據結構 信息,全部為隨機序列。為便于合法收方接收,需加入加密同步信息,或保留原來部分同步信息,只加密其它結 構信息。如果加密結構信息誤碼,合法收方恢復視頻圖像也很困難。

        (3) Meyer and Gadegast 設計了一種新的似MPEG比特流,稱之為 SECMPEG。SECAM既能使用標準加密算法DES和RSA又能實現不同級別的密級。但SECMPEG與標準的MPEG不兼容,需要設計專門的編解碼器。

        第一級:加密所 有的頭信息(Headers)

        第二級:加密所 有的頭信息(Headers)和I-Block中的DC和AC系數

        第三級:加密 I幀和 PB幀中的所有 I-Block

        第四級:加密所 有的數據

        (4) 選擇性加密的另一個主要的方向是由Bharat Bhargava等提出的加密DCT符號,運動矢量MV符號。文獻[5]中將僅加密I幀的DCT符號位的方法稱為VEA算法。第二種方 法除了加密I幀,還要加密 PB幀的 DCT符號位和運動矢量MV的符號位稱之為MVEA算法。相對保密性要好得多的第三種方法是使用 密鑰加密(如DES或IDEA)的密碼學算法來對DCT系數或運動矢量 MV符號位進行加密 ,作者稱之為RVEA算法。

        選擇性加密的保 密性根據具體使用什么方法而定,一般選擇性加密的計算量不大,且通常不會增大碼流大小(改變I幀頻率的選擇性 加密算法除外)。

        3. Zig-Zag置亂算法(Zig-Zag Permutation Algorithm)

        Zig-Zag置亂算法的基本思想:使用一個隨機的置亂序列來代替 Zig-Zag掃描順序,來將各個8×8塊的DCT系數映射成一個1×64矢量。

        基本算法由三步組成,步驟如下:

        (1)產生一個基數為64的置亂序列表;

        (2)把DC系數分成兩個較小值的數。假設 DC是二進制數d7d6d5d4d3d2d1d0,將它分成兩個數d7d6d5d4和d3d2d1d0,它們的范圍都在[0,15]。然后將DC系 數置為d7d6d5d4,將原*后一個AC系數置為d3d2d1d0。(這種分離處理是基于以下兩點:(1)通常DC系數值 遠大于AC系數值,因此亂序后很容易被識別。分離變小后就難于從AC系數中區分出來;(2)*末一個AC系數作 用很小,通常為0,可以用其存放d3d2d1d0,恢復時取0值,不影響圖象質量,也不增加數據量。)

        (3)用隨機置亂序列表將經分離處理的8× 8塊映射成1×64序列(vector)。

        該算法設計者自己指出,上述基本 算法對已知?墓セ魘譴噯醯模虼頌峁┝肆街指郊臃椒ㄔ鑾克惴ǖ陌踩裕╯ecurity):

        方法1: 將每8個塊分成一組,把8個DC系數組合在一起(每系 數8位,恰好64位),然后運用DES加密。加密的結果按字節映射回到8個塊中,然后(按上面1~3步驟)用分離 過程和置亂對每塊進行加密。

        方法2: 產生兩張不同的置亂序列表(表1和表2),對每個8×8 塊拋擲硬幣,反面用表1,正面用表2。拋幣產生的正反序列和兩張表?藶搿?

        Zig-Zag置亂算法有嚴重的安全性問題[1]。文獻[1]提供兩種可以成功破解該算法的方法。Zig-Zag置亂算法速度很 快,不影響視頻的實時傳輸。但是經過加密的視頻壓縮后碼流大小將顯著增加。因為運用非zig-zag順序將8×8塊映射到1×64的矢量,將會極大減少連續零個數,從而減少壓縮率。文獻[1]表明 視頻流大小經加密后增加可達46%(表中*大值)。考慮到MPEG視頻流數據量的巨大,這種大小增量是很難容 忍的。

        4.改變 Huffman碼表算法

        改變Huffman碼表的視頻加密算法原理是:對于熵 編碼用Huffman編碼的視頻編碼標準,將通用Huffman碼表修改后使用,修改后的特殊 Huffman碼表?茉俊7欠ń郵輾轎藪頌厥飴氡恚荒苷方飴朧悠擔ㄍ枷瘢┬畔ⅰ?

        該算法的安全性取決于保持壓縮率不變的前提下, Huffman碼表的可變空間(密碼空間)。文獻[8]做了定量的分析。

        改變Huffman碼表,一般會降低 壓縮率。Huffman編碼是對數據流中出現頻率高的位組合模式對應短碼字,出現頻率低的位組合模式對應長碼字, 達到縮短平均碼字,壓縮數據的目的。Huffman碼表通過統計碼流中各種位組合模式出現的概率制作。本算法在改 變各組合模式對應的Huffman碼字時,保持對應碼字長度不變,即保持了特定出現概率的組合模式對應的特定碼字 長度不變,也就保持了原壓縮率不變。

        該算法完全不增加計算量。適用于使用Huffman編碼的各種視頻和圖像壓縮編碼標準和算法。其缺點是安全性較差(密鑰空間小)。

        5. 基于統計規律的視頻加密算法

        基于統計規律的 視頻加密算法在文獻[1]中稱 之為VEA算法(Video Encryption Algorithm)。文獻[1]認為,壓縮和 加密之間具有共同點,即兩者都致力于去除冗余信息(Redundant information)。經MPEG壓縮編碼的碼流具有一定的隨機性。文獻[1]把碼流分成以字節為單元的流,每字節單元的 值為整數0~255。按字節測試統計(Byte-by-Byte),編碼后字節值在0~255上的分布接近均勻,*高的字節出現 頻率低于0.0178, 方差為10-6。*高相鄰字節對(digrams:pairs of two adjacent numbers)的出現頻率低于10-4,因此提出以下設想:將I幀分為8或16(通常16)大塊( chunk),在任何chunk中,沒有重復的字節模式。依據這個設想提出下面的VEA算法。

        (1)設一I幀的某個chunk為如下形式:a1 ,a2,a3,a4,...,a2n-1,a2n。

        (2)選擇奇數號的字節組成奇隊列(Odd List),選擇偶數號的字節組成偶隊列(Even List)。

        (3)將兩個新數據流異或

         

        (4)選擇一種加密函數(例如DES)來加 密偶隊列a2,a4,...,a2n。得到的密文為:c1,c2,…,cn, E(a2,a4,…,a2n).

        容易看出:如果a2a4…a2n沒有 重復模式(repeated pattern),VEA算法密級就決定于function E。 因為a2,a4,…,a2n對a1,a3,…,a2n-1雖是簡單異或,卻是一次一 密亂碼本(one-time pad)加密密鑰,這是公認非常保密的。

        該方法不加密頭信息結構格式等數據,只加密圖像數 據本身。將待加密數據分為兩半,一半用密碼方法(函數E)加密,另一半用簡單異或,因 此總體減少了計算量,提高了計算速度。前一半的計算速度取決于E。

        該方法不影響壓縮率。適用于壓縮的視頻(或圖像) 編碼數據,而且壓縮效果越好,加密效果也越好。

        6. 純置亂算法 (Pure Permutation Algorithm)

        基于上一節中的 統計結果,我們知MPEG視頻的字節流有一個非常低的字節對出現頻率。因此,通常的利用數據頻率,字節對頻率特性等密碼 分析方法對此沒有用(至少很難)。

        Pure Permutation Algorithm 應運而生:Pure Permutation Algorithm簡單的置亂字節流。置亂密碼序列的基數是根據密級和應用需求動態 可變的。比如我們可以用64個數的置亂序列 或 一個長的 I幀的 1/8的置亂序列。

        Pure Permutation Algorithm的問題在于它對已知?墓セ鞣淺4噯酢?

        一旦通過比較密文和已知原始幀數據,獲取了隨機置亂序列,所有的幀將很容易被破譯。為了找出隨機置亂序列 ,我們需要已知隨機序列長度倍數大小的?摹H歡⒁獾組PEG數據流的單一性(unicity)和幀 大小在同一個數量級上,因此基于Shannon’s Theorem,如果已知一個I幀數據足以破譯整個隨機序列。




        China-DRM.com All Rights Reserved.
        十一选五最简单技巧