專利名稱:選擇性數(shù)據(jù)加密的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明總體上涉及數(shù)據(jù)加密,具體涉及以分組化比特流形式組織的圖像數(shù)據(jù)的加
滋
r t [ ο
背景技術(shù):
本節(jié)旨在向讀者介紹與以下描述和/或要求保護(hù)的本發(fā)明的各方面有關(guān)的現(xiàn)有 技術(shù)的各方面。相信此處的討論有助于向讀者提供背景知識,以便更好地理解本發(fā)明的各 個方面。因此,應(yīng)當(dāng)理解的是應(yīng)該據(jù)此閱讀這些說明,而不應(yīng)將這些說明視為對現(xiàn)有技術(shù)的 認(rèn)可。作為示意示例,下面的描述涉及分組化視頻數(shù)據(jù)流的保護(hù),諸如那些通過例如 JPEG2000編碼而獲得的視頻數(shù)據(jù)流。然而,技術(shù)人員將認(rèn)識到本發(fā)明的數(shù)據(jù)保護(hù)也可以用 于在具有必要屬性的分組中傳輸數(shù)據(jù)的類似領(lǐng)域。一直以來已知通過加密來對數(shù)據(jù)進(jìn)行保護(hù),特別是在條件訪問電視系統(tǒng)中。圖1 示出了內(nèi)容訪問控制的傳統(tǒng)現(xiàn)有技術(shù)方法。首先使用標(biāo)準(zhǔn)壓縮編碼器對視頻信號CNT進(jìn)行 編碼110,并且然后通過對稱加密標(biāo)準(zhǔn)(例如DES、AES、或IDEA)對所產(chǎn)生的比特流CNT’進(jìn) 行加密120。然后通過接收器接收已加密比特流[CNT’ ],該接收器對已加密數(shù)據(jù)進(jìn)行解密 130以獲得編碼比特流CNT’,對此編碼比特流CNT’進(jìn)行解碼140從而獲得至少從理論上來 說與原始視頻信號一樣的視頻信號CNT。在這種方法中,所謂的完全分層、壓縮以及加密是 完全獨立的過程。假設(shè)明文中的所有符號或比特是具有同等重要性的,即,符號是均勻分布 的,該媒體比特流作為傳統(tǒng)的明文數(shù)據(jù)進(jìn)行處理。當(dāng)內(nèi)容的傳輸不受約束時,這種方案是適當(dāng)?shù)?,但是,在資源(例如存儲器、功率 或計算能力)有限的情況下看起來就不適當(dāng)了。例如,另一種方式是有時希望提高例如處 理器處理已加密數(shù)據(jù)的能力。此外,許多研究表明了圖像和視頻內(nèi)容的具體特征(高傳輸速率和有限的允許帶 寬),判定針對這樣的內(nèi)容的標(biāo)準(zhǔn)密碼技術(shù)的不足。這已經(jīng)使得研究者探索一種新的保護(hù)內(nèi) 容安全的方案(命名為“選擇性加密”、“部分加密”、“軟加密”或“感知加密”),通過比特流 的子集應(yīng)用加密,以期望在沒有對已加密子集進(jìn)行解密的情況下所得到的部分加密的比特 流是無用的。一般方法是將內(nèi)容分成兩個部分第一部分是信號的基本部分(例如離散余 弦變換DCT分解中的直流DC系數(shù),或離散小波變換DWT分解中的低頻率層),這允許重構(gòu) 原始信號的清晰但是低質(zhì)量的版本;以及第二部分,可以被稱作“增強”部分(例如,圖像的 DCT分解中的交流AC系數(shù),或DWT中的高頻層),這允許恢復(fù)圖像的精細(xì)細(xì)節(jié)并重構(gòu)原始信 號的高質(zhì)量版本。根據(jù)這種新方案,僅加密基本部分,而以未加密的形式來發(fā)送增強部分, 或在一些情況中以具有輕量加擾的形式發(fā)送增強部分。目的在于保護(hù)內(nèi)容而不是二進(jìn)制流 本身。圖2示出了根據(jù)現(xiàn)有技術(shù)的選擇性加密。如圖1所示來執(zhí)行編碼和解碼。在選擇 性加密中,根據(jù)選擇性加密參數(shù)240對編碼比特流CNT’進(jìn)行加密220。如上所述,例如,這些參數(shù)可以表明僅應(yīng)對DC系數(shù)或低頻層進(jìn)行加密,而應(yīng)保持編碼比特流CNT’的其余部分 未加密。然后根據(jù)選擇性加密參數(shù)240來(部分地)解密230部分加密的比特流[CNT’]。T. Kunkelmann 禾口 R. Reinema 在"A Scalable Security Architecture for Multimedia Communication Standards";Multimedia Computing and Systems ' 97。 Proceedings,IEEE International Conference on Ottawa,Ont. ,Canada,3-6 June 1997, Los Alamitos,CA,USA,IEEE Comput. Soc,US,3 June 1997,pages 660-661,XP010239268, ISBN :978-0-8186-7819-6中描述了示例性的選擇性加密方案。為了加密8X8塊,選擇 兩個小于64的整數(shù)值;一個值用于DC分量,另一個值用于AC分量。然后加密各個單獨 塊,例如使用具有密鑰長度為64比特的DES(例如Scheier B ,Applied Cryptography, Description of DES,,Applied Cryptography, Second Edition, Protocols, Algorithms and Source Code in C, John Wiley & Sons, Inc, New York, 1 January 1996, pages 270-277,XP002237575, ISBN :978-0-471-11709-4所描述的)。顯然,也可以使用其他諸如 US 2001/0033656中所描述的適當(dāng)?shù)膲K加密方法。將該過程進(jìn)行迭代,直到已經(jīng)對多個AC 和/或DC分量進(jìn)行加密為止。換句話來說,不是對所有分量進(jìn)行加密,而是對每一個分量 進(jìn)行完全加密。由于本發(fā)明特別適合于JPEG2000,JPEG2000也用作本發(fā)明的非限制性實施例,現(xiàn) 在將給出這個標(biāo)準(zhǔn)的相關(guān)部分的簡要介紹,例如它的碼流結(jié)構(gòu)。將JPEG2000碼流組織到分組中,碼流分組是傳送來自稱作分辨率、層、分量和區(qū) 的實體特定組合的數(shù)據(jù)的基本單元。壓縮圖像具有R個分辨率、L個層、P個分區(qū)以及C個 分量,因此產(chǎn)生RXLXCXP個分組。JPEG2000利用嵌入的比特流可以在分組的任意給出的結(jié)尾處截去碼流,不會對 先前已編碼的碼流有不良的影響。圖3示出了主碼流結(jié)構(gòu),包括 主報頭310,包括碼流起始(S0C = 0xFF4F)標(biāo)記段312和主報頭標(biāo)記段314。SOC 標(biāo)記指示碼流的起始并且用作第一標(biāo)記。主報頭標(biāo)記段指示多個用戶定義的壓縮參數(shù),例 如,進(jìn)行順序、主編碼類型、分量編碼類型以及拼接塊(tile)大小?!?一個或多個拼接塊部分報頭320a、320b,每個拼接塊部分報頭包括拼接塊部 分標(biāo)記起始(SOT = 0xFF90)322、拼接塊部分信息32 、似4b以及數(shù)據(jù)標(biāo)記起始(SOD = 0xFF93)3^。將認(rèn)識到,SOT 322和SOD 3 具有標(biāo)準(zhǔn)值,而拼接塊部分信息32^、324b包 括與拼接塊有關(guān)的信息;例如,拼接塊部分信息32 指示該拼接塊屬于拼接塊0,而拼接塊 部分信息324b指示該拼接塊屬于拼接塊1。在每個拼接塊部分的起始處需要至少一個拼接 塊部分報頭320a、320b,所述拼接塊部分包括拼接塊部分報頭320a、320b以及通常包括隨 其后的比特流330a、330b,其中SOD標(biāo)記指示包含壓縮數(shù)據(jù)在內(nèi)的比特流330a、330b的起 始?!ごa流結(jié)束340 該標(biāo)記(E0C = 0xFFD9)指示碼流的結(jié)束??梢钥闯觯忍亓髦饕煞纸M報頭以及形成分組的分組數(shù)據(jù)構(gòu)成。圖4示出了包 括分組報頭420以及分組數(shù)據(jù)440在內(nèi)的示例性JPEG2000分組。根據(jù)用戶定義的選項,分 組報頭可以用在比特流中或用在主報頭中。圖4示出了比特流內(nèi)這種報頭的使用分組報 頭起始410 (SOP = 0xFF91)和分組報頭結(jié)束430 (EPH =起始和結(jié)束。應(yīng)注意,對于分組數(shù)據(jù),在JPEG2000中保留了一些碼字(在范圍
內(nèi)的碼字)。這種保留的碼字用作為流的主構(gòu)建塊定界的標(biāo)記或標(biāo)記段。例如, S0T(0xFF90)、SOD(0xFF93)和E0C(0xFFD9)是這種保留的碼字。當(dāng)對碼流進(jìn)行加密時,重 要的是確?!!?即,非保留的)碼字不會導(dǎo)致其值被保留的加密碼字。對分組數(shù)據(jù)進(jìn) 行熵編碼,并且這個特征使得他們非常適合后面所描述的密碼安全選擇性加密。分組報頭420包括解碼器正確解析和解碼分組數(shù)據(jù)所需的信息·零長度分組指示當(dāng)前分組是否為空?!ごa塊包含針對每個分區(qū),使用標(biāo)簽樹對所包含的碼塊的包含信息進(jìn)行編碼?!ち惚忍仄矫嫘畔⑨槍γ總€分區(qū),標(biāo)簽樹對第一非零比特平面進(jìn)行編碼。·編碼通道的數(shù)目使用霍夫曼型碼字對針對每個碼塊而包含的編碼通道的數(shù)目 進(jìn)行編碼。 來自每個碼塊的壓縮數(shù)據(jù)的長度。M. Van Droogenbroeck 禾口 R. Benedett 在“Techniques for a Selective Encryption of Uncompressed and Compressed Images”, Proceedings of Advanced Concepts for Intelligent Vision Systems (ACIVS)2002, Ghent, Belgium, September 9-11,2002,提出了將選擇性加密應(yīng)用于哈夫曼編碼器。實際上,JPEG哈夫曼編碼器使用碼 字/符號終止零的運行以近似于熵。將附加比特添加至這些碼字,來充分指定非零系數(shù)的 幅度和符號,僅使用DES或IDEA對這些附加比特進(jìn)行加密。在"Selective Encryption of Wavelet-Packet Encoded Image Data”, ACM Multimedia Systems Journal, Special Issue on Multimedia Security in 2003 中, A. Pommer和A. UhI提出了基于圖像編碼的小波分組的報頭信息的AES加密的算法,該報頭 指定子帶樹結(jié)構(gòu)。在"Compliant Encryption of JPEG2000 Codestreams,,,IEEE International Conference on Image Processing(ICIP 2004), Singapore, October 2004 中,Y. Wu 禾口 R. H. Deng提出了符合JPEG2000的加密算法,該加密算法迭代地加密對分組的碼塊貢獻(xiàn) (CCP)。加密過程使用流密碼或塊密碼(優(yōu)選地,采用算數(shù)模加法的流密碼)作用于(分組 數(shù)據(jù)中的)CCP上。使用Rivest密碼4(CR4)來產(chǎn)生密鑰流。迭代地加密每個CCP,直到該 CCP不具有禁用碼字(即,在
范圍內(nèi)的任何碼字)為止。^"Selective Encryption of the JPEG2000 Bitstream", in A. Lioy and D. Mazzocchi, editors, Communications and Multimedia Security. Proceedings of the IFIP TC6/TC11 Sixth Joint Working Conference on Communications and Multimedia Security, CMS ' 03, volume 2828 of Lecture Notes on Computer Science, pages 194-204,Turin, Italy, Oct. 2003. Springer-Verlag 中,R. Norcen 和 A. Uhl 觀察到 JPEG2000 是一種嵌入式比特流,按照J(rèn)PEG2000壓縮圖像的進(jìn)行順序,在比特流的起始發(fā)送最重要的 數(shù)據(jù)?;谶@一點,所提出的方案在于對所選分組數(shù)據(jù)的AES加密。該算法使用兩個可選 標(biāo)記SOP和EPH (如圖5所示)來標(biāo)識分組數(shù)據(jù)。然后在CFB模式下使用AES來加密該分 組數(shù)據(jù),這是因為該分組數(shù)據(jù)具有可變的長度。以不同的進(jìn)行順序(分辨率和層進(jìn)行順序) 對兩種圖像(有損壓縮和無損壓縮的圖像)進(jìn)行實驗。評估準(zhǔn)則是針對給定量的加密數(shù)據(jù)而得到的視覺退化。發(fā)現(xiàn)對于有損壓縮的圖像,層進(jìn)行給出更好的結(jié)果。對于無損壓縮的 圖像,分辨率進(jìn)行給出較好的結(jié)果。歐洲專利申請EP 08300093. 5提供了一種改進(jìn)的解決方案,該方案針對每一個分 組使用失真率比值,以按照遞減比值對分組進(jìn)行排序,并且加密分組,直到實現(xiàn)預(yù)定累加的失真。然而,該申請人已經(jīng)發(fā)現(xiàn)當(dāng)對分組數(shù)據(jù)進(jìn)行加密時仍然有改進(jìn)的空間。因此,應(yīng)當(dāng)理解,需要一種允許進(jìn)一步改進(jìn)加密而不會不可接受地降低加密內(nèi)容 的安全性的解決方案。本發(fā)明提供了這樣的解決方案。
發(fā)明內(nèi)容
在第一方面中,本發(fā)明涉及一種使用密鑰長度k的加密密鑰K對均勻分布的符號 的至少一個消息M進(jìn)行加密的方法。對至少一個消息M中k比特長度的每一個消息MWk 個比特進(jìn)行加密,并且對至少一個消息M中長度大于k比特的每一個消息M的小于消息M 總長度的至少k個比特進(jìn)行加密。在第一優(yōu)選實施例中,延長長度小于k比特的至少一個消息M,以獲得至少k比特 長的延長的消息。如果延長的消息為k比特長,則對延長的消息的k個比特進(jìn)行加密;以及 如果延長的消息長于k比特,則對延長的消息的小于總長度的至少k個比特進(jìn)行加密。有 利的是,通過填充或與至少一個其他消息拼接,來延長至少一個消息M。在第二優(yōu)選實施例中,對長度大于k比特的消息的正好k個比特進(jìn)行加密。有利 的是,均勻分布的符號進(jìn)一步是有因果關(guān)系的。在第三優(yōu)選實施例中,對至少一個消息M進(jìn)行JPEG2000編碼。在第二方面中,本發(fā)明涉及一種使用密鑰長度為k的加密密鑰K對對均勻分布的 符號的至少一個消息M進(jìn)行加密的裝置。該裝置包括處理器,適于對至少一個消息M中長 度為k比特的每一個消息M的k個比特進(jìn)行加密,以及對至少一個消息M中長度大于k比 特的每一個消息M的小于消息M總長度的至少k個比特進(jìn)行加密。在第三方面中,本發(fā)明涉及一種使用密鑰長度為k的解密密鑰K對至少一個已加 密消息[M]進(jìn)行解密的方法。解密設(shè)備對至少一個已加密消息[M]中長度為k比特的每一 個已加密消息[M]的k個比特進(jìn)行解密;并且對至少一個消息M中長度大于k比特的每一 個消息M的小于消息M總長度的至少k個比特進(jìn)行解密。在第四方面中,本發(fā)明涉及一種使用密鑰長度為k的加密密鑰K對至少一個已加 密消息[M]進(jìn)行解密的裝置。該裝置包括處理器,適于對至少一個消息M中長度為k比特 的每一個消息M的k個比特進(jìn)行解密;并且對至少一個消息M中長度大于k比特的每一個 消息M的小于消息M總長度的至少k個比特進(jìn)行解密。
現(xiàn)在參考附圖,作為非限制示例,對本發(fā)明的優(yōu)選特征進(jìn)行描述,其中圖1示出了內(nèi)容訪問控制的傳統(tǒng)現(xiàn)有技術(shù)方法;圖2示出了根據(jù)現(xiàn)有技術(shù)的選擇性加密;圖3示出了現(xiàn)有技術(shù)的JPEG2000主碼流結(jié)構(gòu);
圖4示出了示例現(xiàn)有技術(shù)JPEG2000分組;圖5示出了根據(jù)現(xiàn)有技術(shù)從圖像編碼中發(fā)出的JPEG2000分組;圖6示意性示出了使用本發(fā)明實施例的構(gòu)思已加密消息M ;圖7示出了根據(jù)本發(fā)明優(yōu)選實施例的選擇性加密的加密裝置;圖8示出了根據(jù)本發(fā)明優(yōu)選實施例的選擇性加密方法;以及圖9示出了根據(jù)本發(fā)明優(yōu)選實施例的解密設(shè)備。
具體實施例方式本發(fā)明使用JEPG2000編碼的固有特征作為開始點以達(dá)到令人驚訝的目的。在 JPEG2000中,對分組的碼塊貢獻(xiàn)(CCP)是有因果關(guān)系的。實際上,通過基于上下文的 CABAC(上下文自適應(yīng)二進(jìn)制算數(shù)編碼)編碼器對碼塊進(jìn)行編碼。換句話講,不訪問數(shù)據(jù)的 開頭對CCP進(jìn)行正確的解碼是不可能的,數(shù)據(jù)的開頭使得對比整個分組少的數(shù)據(jù)進(jìn)行加密 以保證加密安全性成為可能。圖5示出了根據(jù)現(xiàn)有技術(shù)與編碼圖像相對應(yīng)的多個JPEG2000編碼分組。對這些 分組進(jìn)行排列,使得與特定質(zhì)量層(L)相對應(yīng)的分組在同一行。圖6示出了 η個字節(jié)的消息Μ,其中要對ne個字節(jié)進(jìn)行加密。例如在JPEG2000的 情況下,M由多個可能有因果關(guān)系的均勻分布符號組成。應(yīng)該注意的是,將消息M認(rèn)為是有 效載荷,例如,它不包括任何報頭,然而整個消息M用于接收器。為了確定消息M中要加密 的數(shù)據(jù)量(即,ne),考慮使用以下加密比ER進(jìn)行已加密消息M(代表CCP)艦=f =命其中|M|是M的比特數(shù)。為了找到保證加密安全性的最小加密比,使用一個度量來測量已加密消息的不可 預(yù)知性。本發(fā)明的主要構(gòu)思是考慮優(yōu)化的窮舉(brute attack)攻擊,攻擊者具有語言符號 可能性分布的全部的知識。設(shè)X為在語言中使用其值的離散隨機(jī)變量。^,Xe^X^X^攻擊者通過按所有可能值的概率的降序排列嘗試這些可能值,以試圖猜測X的 值> Ρ2....> Ργ,^這里給出猜測(guesswork)WW(X) = ^i-Pi
i=l其中,W(X)是攻擊者在找到正確值消息之前必須嘗試的猜測的期望數(shù)目。注意,因此使用輸出均勻分布數(shù)據(jù)的算數(shù)編碼對碼塊貢獻(xiàn)進(jìn)行編碼p>= YLn' = X^\ne
其中,Σ是碼塊貢獻(xiàn)的字母表示。這里給出猜測值
權(quán)利要求
1.一種使用密鑰長度為k的加密密鑰K對均勻分布的符號的至少一個消息M進(jìn)行加密 的方法,在加密設(shè)備(710)處,該方法包括以下步驟-對所述至少一個消息M中長度為k比特的每一個消息M的k個比特進(jìn)行加密;其特征在于,該方法還包括以下步驟-對所述至少一個消息M中長度大于k比特的每一個消息M的小于消息M總長度的至 少k個比特進(jìn)行加密。
2.根據(jù)權(quán)利要求1所述的方法,還包括以下步驟-延長短于k比特的至少一個消息M,以獲得至少k比特長的延長的消息;-如果延長的消息M為k比特長,則對延長的消息的k個比特進(jìn)行加密;以及-如果延長的消息M長于k比特,則對延長的消息的小于延長消息總長度的至少k個比 特進(jìn)行加密。
3.根據(jù)權(quán)利要求2所述的方法,其中,通過填充對至少一個消息M進(jìn)行延長。
4.根據(jù)權(quán)利要求2所述的方法,其中,通過與至少一個其他消息相拼接來延長至少一 個消息M。
5.根據(jù)權(quán)利要求1所述的方法,其中,對長于k比特的消息的正好k個比特進(jìn)行加密。
6.根據(jù)權(quán)利要求5所述的方法,其中,均勻分布的符號也是有因果關(guān)系的。
7.根據(jù)權(quán)利要求1所述的方法,其中,至少一個消息M是JPEG2000編碼的。
8.一種使用密鑰長度為k的加密密鑰K對均勻分布的符號的至少一個消息M進(jìn)行加密 的裝置(710),該裝置包括處理器(730),所述處理器(730)適于-對所述至少一個消息M中長度為k比特的每一個消息MWk個比特進(jìn)行加密;其特征在于,所述處理器(730)還適于-對所述至少一個消息M中長度大于k比特的每一個消息M的小于消息M總長度的至 少k個比特進(jìn)行加密。
9.一種使用密鑰長度為k的解密密鑰K對至少一個已加密消息[M]進(jìn)行解密的方法, 在解密設(shè)備(930)處,該方法包括以下步驟-對所述至少一個已加密消息[M]中長度為k比特的每一個已加密消息[M]的k個比 特進(jìn)行解密;其特征在于,該方法還包括以下步驟-對所述至少一個消息M中長度大于k比特的每一個消息M的小于消息M總長度的至 少k個比特進(jìn)行解密。
10.一種使用密鑰長度為k的解密密鑰K對至少一個已加密消息[M]進(jìn)行解密的裝置 (910),該裝置包括處理器(930),所述處理器(930)適于-對所述至少一個消息M中長度為k比特的每一個消息MWk個比特進(jìn)行解密;其特征在于,所述處理器(930)還適于-對所述至少一個消息M中長度大于k比特的每一個消息M的小于消息M總長度的至 少k個比特進(jìn)行解密。
全文摘要
一種使用密鑰長度為k的加密密鑰K對至少一個包括均勻分布的符號的消息M進(jìn)行加密的方法,對至少k比特長的消息M的k個比特進(jìn)行加密(830),而對于較短的消息進(jìn)行延長,例如通過填充或拼接以獲得在加密之前至少k比特長的延長消息。因此,優(yōu)化了加密的效率而保持加密的安全性。此加密方法特別適合于包括消息M的JPEG2000編碼的分組。還提出了一種加密裝置(710),一種解密方法以及一種解密裝置(910)。
文檔編號H04N7/167GK102077592SQ200980125105
公開日2011年5月25日 申請日期2009年6月30日 優(yōu)先權(quán)日2008年6月30日
發(fā)明者弗雷德里克·勒菲弗, 阿尤布·馬蘇迪 申請人:湯姆森許可貿(mào)易公司