樊 宇
海口經濟學院,海南海口 570000
二維矢量動畫數字水印保護方案研究
樊 宇
海口經濟學院,海南???570000
本文通過深入分析二維矢量動畫的文件結構,提出一種能夠保護二維SWF矢量動畫作品版權的數字水印方案,并引入了第三方注冊的思想,經實驗數據證明,該方案基本可以抵抗常規(guī)攻擊,水印信號的嵌入在視覺上也不影視矢量動畫的播放效果。
矢量動畫;數字水??;第三方注冊
矢量動畫構思巧妙、形式靈活、手法多樣等特點被廣泛應用于各領域,目前較為常見的矢量動畫多為SWF動畫,矢量動畫的廣泛應用使得版權保護問題顯得尤為重要。
SWF矢量文件從縱向角度進行解析,分為文件頭和頭部之后的一系列Body標簽組成。SWF文件從橫向分析將文件分為描述型標簽、控制型標簽和字典三個對象。
描述型標簽用以定義矢量動畫中所需的不同對象,如形狀、文本等,且后定義的內容可以引用前面所定義內容的相關屬性,每一個描述標簽都為對象定義一個ID號,ID在同一個文件中都是唯一的。播放器將每個對象的ID號存儲在字典中。描述型標簽只負責定義對象,但不能控制對象的顯示和播放順序。
控制型標簽控制與動畫播放相關的設置,控制型標簽可以把字典中已經定義好的內容調入到播放列表中等待顯示或控制渲染與播放。
字典就像一個庫,用于存儲描述標簽定義的內容及其多對應ID,允許描述標簽讀取字典中已有的內容后重新定義更為復雜的對象,也允許控制標簽從中提取引用相關對象及其對應的ID。
通過深入分析SWF文件的內部結構和工作原理發(fā)現,SWF矢量動畫文件存在有以下幾個特點。
1)SWF動畫文件除了文件頭和結束標簽兩個標簽分別固定在文件結構頭和尾之外,其他絕大多數標簽的位置不影響SWF矢量動畫的播放效果。
2)只有當播放器讀取到“顯示幀”標簽時,播放列表中的內容才能渲染輸出,因此,播放器顯示的每一個幀的效果,都是當前幀中“顯示幀”標簽之前的所有標簽內容的疊加,而凡是出現在“顯示幀”標簽之后的內容將不能輸出到播放器中。
綜上分析可知,我們可以把水印信息分組隨機添加到幀內“顯示幀”標簽之后,這即可注明版權所有,同時不影響SWF矢量動畫的播放效果。
4.1 水印的嵌入
設置水印文件,通過密鑰K對水印信息進行分組處理,通過MD5算法計算密鑰K的128為信息摘要,得到16位字節(jié)的M序列,再通過計算得出每個字節(jié)的權值,然后再對水印信息進行分組。將兩組數據通過圖1的方式把水印分組信息嵌入到動畫的標簽分組中,標簽分組的“顯示幀”標簽后插入了新的水印分組信息,此信息不影響文件的播放但是會影響標簽的長度。
為了對SWF文件可能受到的攻擊進行明確定位,我們可以通過計算SWF文件標簽的信息量,因為標簽的順序同樣不影響動畫的播放效果,我們將通過標簽的信息量進行排序,當SWF矢量動畫文件被攻擊時,標簽信息會發(fā)生變化,那么標簽排序必然會有改變,以此可以準確定位被破壞或修改的標簽對象。
為了進一步明確版權信息,可以在第三方注冊,出現糾紛時版權所有人提供密鑰即可由第三方準確判斷原始信息遭受到的攻擊。
SWF矢量動畫數字水印的嵌入過程如圖1所示。
4.2 水印的提取
數字水印的提取過程是嵌入水印的一個可逆的過程,根據嵌入的數字水印信息的總長度和密鑰K的MD5得出水印信息的分組,然后找出SWF文件標簽的分組信息,然后找出所有的水印分組信息,最終提取出水印文件。在水印提取過程中由第三方提供水印嵌入數據和文件的標簽排序情況快速驗證水印信息的準確性。
針對SWF矢量動畫數字水印的攻擊可能有以下幾種情況。
5.1 修改標簽內容
初級盜版攻擊可能會修改SWF矢量動畫標簽的內容,此類攻擊多半是盜版者為了獲取文件,對文件內的標簽做了大量修改,這樣會破壞原有的水印信息,但我們通過密鑰K和第三方的配合可以快速準確的確認版權水印信息,從而進行維權行為。
5.2 更改標簽的順序
盜版者可能采取更改標簽順序的方式進行攻擊,更改標簽順序可能會對水印信息的提取造成一定的影響,但嵌入水印時,我們已經通過計算SWF文件標簽的信息量并進行了排序存儲于第三方,假如盜版者更改了標簽順序,但標簽的信息并沒有改變,水印信息的完整性沒有破壞,所以從視覺效果上對水印信息的影響不大。通過第三方提供的水印信息分組與標簽分組的嵌入關系可以再準確提取出水印信息。
5.3 插入、刪除標簽
插入和刪除標簽的攻擊對SWF矢量動畫會有一定的影響,可能會使部分帶有水印信息的標簽對象被刪除,但是,插入和刪除標簽的操作對SWF矢量動畫視覺播放效果影響也很大,此類操作對于隨機選擇的標簽分組添加水印的算法來講微乎其微,對數字水印的提取不會產生太大影響。
本文詳細介紹SWF矢量動畫數字水印的嵌入與提取方案。為了確保方案的實用性,本文重點提出了一個第三方注冊的概念,我們將提取的水印分組信息到第三方進行注冊,提高了方案的可行性。
[1]熊富琴.多媒體數字水印技術綜述[J].科技信息,2010.
[2]王麗俠.數字水印技術的研究[J].計算機安全,2010.
[3]鄧華,司瑾,王光宇.基于Flash動畫的數字水印設計方法[J].電腦編程技巧與維護,2011.
J2
A
1674-6708(2015)138-0069-01
樊宇,碩士研究生,講師,研究方向:多媒體技術