《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > Flash動畫的加密方法
Flash動畫的加密方法
2016年微型機與應用第05期
呂光金
上海財經(jīng)大學浙江學院,浙江 金華 321015
摘要: 隨著Flash動畫商業(yè)價值的不斷提升,各種加密和解密軟件也應運而生,如何有效地保護動畫作品是一個值得探討的問題。首先對Flash文件進行了解析,然后闡述了幾種保護Flash動畫的加密方法,并對幾款相關的加密軟件進行了測試比較,得出用加殼打包類軟件進行加密比較安全。
Abstract:
Key words :

  呂光金

  (上海財經(jīng)大學浙江學院,浙江 金華 321015)

      摘要:隨著Flash動畫商業(yè)價值的不斷提升,各種加密和解密軟件也應運而生,如何有效地保護動畫作品是一個值得探討的問題。首先對Flash文件進行了解析,然后闡述了幾種保護Flash動畫的加密方法,并對幾款相關的加密軟件進行了測試比較,得出用加殼打包類軟件進行加密比較安全。

  關鍵詞:Flash動畫;知識產(chǎn)權保護;加密;特征提取

0引言

  Flash是Micromedia公司開發(fā)的一款動畫制作軟件。許多愛好者運用Flash制作出優(yōu)秀的動畫作品,并上傳至閃客帝國、TOMFlash動畫頻道等專業(yè)網(wǎng)站進行學習與交流,極大地推動了Flash等多媒體技術以及動畫的傳播與發(fā)展[1]。隨著Flash作品的商業(yè)價值的劇增,各種加密和解密軟件也應運而生,個別用戶非法運用解密軟件嚴重損害了用戶的知識產(chǎn)權。如運用碩思閃客精靈軟件,將SWF文件反編譯成FLA文件提取各個元素。為了防止作品未經(jīng)許可被盜用或惡意修改,有必要對SWF作品加密方法進行研究。

  關于動畫加密,國內外一些學者和公司進行了相應的研究,如Micromedia公司在Flash軟件中自帶了防止導入功能?;鄯逍旁纯萍加邢薰狙邪l(fā)的網(wǎng)刃平臺支持對SWF文件和FLA文件的加密。文獻[2]對Flash動畫的內容特征提取進行了深入的研究,并用VC++軟件開發(fā)了一個提取平臺。文獻[4]提出了基于Flash動畫的信息隱藏算法。文獻[5]對SWF文件的版權保護設計了一個加密器,在一定程度上防止了反編譯軟件的攻擊。文獻[6]對基于AES的Flash加密方式進行了研究。文獻[7]對運用AESCCM模式進行數(shù)據(jù)加密進行了研究。目前為止,雖然理論研究較多,但是實踐很少,對現(xiàn)有的軟件介紹幾乎沒有,因此,本文先對SWF文件進行解析,然后對現(xiàn)有的SWF加密軟件和方法進行探討與實踐。

1Flash文件解析

  Flash能把文本、圖形、圖像、動畫、聲音、視頻以及交互方式等融合為一個整體[1],制作成基于“流技術”的動畫。 Flash動畫的文件格式主要有兩種,即源文件格式(*.FLA文件)和播放文件格式(*.SWF文件),源文件可以通過Flash動畫制作軟件修改和編輯,播放文件需要通過其他專業(yè)軟件反編譯后才能修改,本文所指文件為SWF格式文件。

  SWF文件與XML文件的內部結構相似[2],采用二進制標簽對動畫文件中的各個對象、效果以及交互方式進行定義。SWF文件由三部分組成:文件頭(Header)、文件主體(Body,由多個Tag組成)、文件結束標簽(End Tag),其結構如圖1所示。

 

001.jpg

  文件頭定義了SWF動畫的基本信息,如文件的版本、文件大小、是否壓縮、幀頻、影格大小、總的幀數(shù)等[3]。SWF中的標簽又可以分為定義型標簽和控制型標簽兩種。標簽的組織順序可以任意排列,但必須遵循先定義后引用、先定義后控制的規(guī)則,聲音流標簽必須按順序播放,結束標簽只能有一個,而且必須是最后一個。部分加密軟件是通過修改SWF的文件頭,從而導致SWF解析器在對SWF文件解析時出錯來達到加密目的。

2Flash動畫加密方法

  傳統(tǒng)的數(shù)字版權保護主要有以下幾種:(1)通過在產(chǎn)品中內置注冊體系的軟件保護方式。(2)在外面加一個加密外殼,從而保證程序不被別人盜用或改寫。(3)通過硬件方式對軟件產(chǎn)品進行保護,主要采用USB卡、加密狗等。前兩種一般統(tǒng)稱為軟保護。第(3)種為硬件加密方法,一般認為硬件加密最安全,但是必須用光盤分發(fā),不能通過互聯(lián)網(wǎng)大范圍傳播,在SWF動畫加密中一般不采用。

  2.1運用Flash自帶的防止導入功能

  Flash作品的保護或加密,最原始的辦法就是防止導入。即防止將SWF導入到Flash軟件中提取各種特征元素。比如,當把一份優(yōu)秀的SWF動畫發(fā)布到網(wǎng)上后,經(jīng)過一段時間,會發(fā)現(xiàn)動畫中的各種元素(Flash中稱為元件)出現(xiàn)在了別人的動畫中。為了防止導入Flash動畫提取元素,可以通過Flash軟件本身的“防止導入”功能實現(xiàn)簡單的加密。具體方法是,在Flash “文件”菜單下,選擇“發(fā)布設置”命令,然后選擇“Flash” 選項卡,選取“防止導入”,在下面的密碼區(qū)輸入“防止導入”的密碼進行發(fā)布。該密碼只有在源文件中可以看到。

  2.2運用ActionScript編程

  在Flash軟件中,可以運用ActionScript編寫代碼控制動畫的播放以及與用戶實現(xiàn)交互,也可以通過編寫代碼對動畫進行加密。ActionScript是一種程序設計語言,它的語法結構與JavaScript的語法結構基本相似,在播放時,由Flash Player中的ActionScrip虛擬機來解釋并執(zhí)行[8]。Flash的最新版本是FlashCS6,腳本語言為ActionScript3.0,簡稱AS3。在用Flash制作動畫時,可以運用AS3腳本語言在程序代碼中設置口令、時間鎖、地址限制、屏蔽右鍵和限制下載等功能。

  2.2.1設置口令或時間限制

  例如,下面的代碼實現(xiàn)了根據(jù)口令或在限定時間內播放動畫的功能。

  stop();

  Daylimit=new Date(2016,1,1);

  todayDate=new Date();

  _root.onEnterFrame =function(){

  if(Key.isDown(13)){

  if(a=="password")||(todayDate<Daylimit)

  { fscommand("fullscreen","true");gotoAndPlay(2);}

  else fscommand("quit","true");}}

002.jpg

  圖2Flash讀取XML文件過程這種代碼編寫方法通俗易懂,安全性也較低??梢赃M一步改進,將密碼與時間存儲在獨立存放的XML文件中,然后通過讀取XML文件內容生成密碼和比對時間,但是程序編寫要復雜得多。Flash讀取XML文件的內容需要有路徑的定義、URL的請求和加載過程,與讀取外部圖片或聲音的方法類似但調用的類不同。讀取XML的過程如圖2所示。

  2.2.2運用LoadMovie()命令

  在把Flash作品發(fā)布成SWF文件之前,可以將源文件分割成多個子文件,然后把各個.fla子文件分別發(fā)布成播放文件(如“child1.swf”、“child2.swf”等),并放在不同的路徑下,以相互嵌套的方式調用,可以起到保護作品的作用。因為當該作品被其他用戶下載時,用戶只能下載它的主文件,而其他子文件不能被下載。運用LoadMovie()函數(shù)調用Flash子文件的方法為:LoadMovie(“某路徑下的子文件childx.swf”,“mySWF”)。其中的路徑可以是相對路徑或絕對路徑,x必須為具體數(shù)字,如child1.swf。

  2.3運用Flash專業(yè)加密軟件

  運用專業(yè)軟件對Flash作品進行加密更安全,但是一般都需要付費,如 GeneralEncryptor 、Swfkit、DoSWF等。這些軟件對SWF加密主要使用了動態(tài)內存修改技術(DMM)、ActionScript 混淆技術、加殼打包技術、綁定硬件(CPU、網(wǎng)卡、硬盤)技術等。

  2.3.1動態(tài)內存修改技術

  動態(tài)內存修改技術類加密軟件有DoSWF、Flashincrypt和SWFEncrypt等,它們都是SWF文件加密工具,能防止SWF文件被反編譯成源文件,通常使用動態(tài)內存修改技術和腳本混淆技術進行保護。DoSWF軟件采用一些工具做代碼混淆,降低了程序的可讀性,即使被破解了,也很難看懂,這種方法其實可以稱之為加密代碼。但是加密后的文件會明顯變大,為了避免加密后文件過大的問題,可以在加密前先將FLA源文件分解并生成多個SWF文件,然后再進行逐個加密。

  2.3.2加殼打包技術

  Swfkit是一款優(yōu)秀的加殼打包軟件,它不僅能創(chuàng)建 Flash播放程序或屏幕保護程序,而且能為它們建立安裝程序。用該軟件打包的EXE文件不容易被還原,因為它打包的格式不同于Flash軟件中打包的EXE,而且調用IE中的Flash控件進行播放,因此,F(xiàn)lashtool、Exe2swf等軟件無法將其反編譯;利用碩思閃客精靈、ImperatorFLA、閃客精靈之錘等破解軟件也不能提取作品中的元素。常用的加殼打包類加密軟件還有網(wǎng)刃數(shù)字版權保護平臺、FlashJestor、Swfkit、Iceprojector、Swishstudio等。

  2.3.3硬件綁定模式

  GeneralEncryptor不僅支持SWF文件加密,而且也支持FLA文件加密。用戶可以選擇不同的硬件綁定模式對用戶機器進行綁定,如選定CPU、主板、Flash硬盤、網(wǎng)卡等設備進行“一機一碼”方式的授權;它還支持水印效果、播放次數(shù)限制、有效期設置。常用的硬件綁定類加密軟件還有FlashEncryptor、EasySWF、SWFprojection等。

3幾種加密軟件的比較

  為了驗證SWF加密軟件的功能,制作了一個Flash動畫,并選用了幾種常用加密和解密軟件的試用版進行了相關實驗,結果如表1所示。

003.jpg

  通過實驗發(fā)現(xiàn),(1)Exe2swf解密軟件功能較強,能將Flash播放器生成的EXE文件解密成SWF文件,并通過解析SWF文件讀取文件頭,顯示文件的基本信息,包括:文件版本、文件大小、是否壓縮、影格大小、影格比例、總幀數(shù)。(2)SWFEncrypt、DoSWF等軟件的加密功能一般,加密后生成的SWF文件明顯變大,而且能被碩思閃客精靈解密并提取元素;(3)加殼打包類軟件的加密功能比較強大,不能被Exe2swf解密,只是加密后生成的EXE文件明顯變大。由此可知,從安全角度考慮,加密時建議選取加殼打包的方法。

4結束語

  本文針對Flash動畫的加密方法進行了探討與實踐。雖然市場上出現(xiàn)了各種各樣的SWF加密軟件,但是仍無法抵制一些著名的專業(yè)解密軟件和破解方法。因此,只有不斷增強全民的知識產(chǎn)權保護意識,倡導購買或使用經(jīng)過授權的作品或軟件,才能將盜版現(xiàn)象降低到最低限度。

參考文獻

 ?。?] 詹青龍,吳學會,宗哲玲. Flash二維動畫設計與制作[M]. 北京:清華大學出版社,2010.

 ?。?] 徐振國,孟祥增.Flash動畫的內容特征提取研究[J].電化教育研究,2015(6):5560.

  [3] 倪應華,金炳堯.SWF矢量動解析框架設計[J].計算機系統(tǒng)應用,2010(3):202205.

 ?。?] 張曉彥,張曉明.基于Flash動畫的信息隱藏算法[J].計算機工程,2010(1):181183.

  [5] 王繼州,袁雪霞.一種SWF文件保護簡單實現(xiàn)方案[J].數(shù)字技術與應用,2012(8):169171.

 ?。?] 鄒蕾. 基于AES的Flash加密實現(xiàn)[J].電腦編程技巧與維護,2014(22):115116.

 ?。?] 仇國慶,包俊杰,曹冬梅,等. 基于AES算法的ZigBee網(wǎng)絡加密方法研究[J].電子技術應用,2014,40(4):5658.

 ?。?] 陳銀鳳. Flash中利用Action Script3.0實現(xiàn)圖像的扭曲效果[J].微型機與應用,2012,31(16):3537.


此內容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
av不卡在线观看| 久久精品人人做人人爽| 午夜精品久久久久久| 在线亚洲免费| 日韩网站在线看片你懂的| 亚洲福利专区| 亚洲高清久久网| 在线不卡中文字幕| 黄色免费成人| 1204国产成人精品视频| 亚洲电影av| 亚洲青涩在线| 日韩亚洲不卡在线| 夜夜嗨av一区二区三区免费区| 亚洲精品一区中文| 亚洲裸体视频| 一区二区三区精品| 亚洲午夜激情网站| 欧美激情一区二区| 精品88久久久久88久久久| 欧美体内she精视频在线观看| 欧美日韩另类视频| 欧美网站在线观看| 国产精品美女在线| 国产乱码精品| 国产在线观看91精品一区| 黄色欧美日韩| 亚洲国产精品高清久久久| 91久久夜色精品国产网站| 亚洲美女在线一区| 亚洲午夜91| 午夜在线精品| 国产精品一区在线观看| 国产欧美一区二区色老头| 韩国免费一区| 亚洲人人精品| 亚洲视频综合| 欧美专区亚洲专区| 亚洲激情av| 亚洲午夜视频在线| 久久大逼视频| 欧美大片一区二区三区| 欧美日韩一区二区高清| 国产噜噜噜噜噜久久久久久久久| 韩国福利一区| 亚洲乱码国产乱码精品精| 亚洲欧美变态国产另类| 亚洲第一精品夜夜躁人人躁| 亚洲区国产区| 亚洲永久字幕| 久久在线免费观看| 欧美日韩在线看| 国产婷婷色一区二区三区| 在线看欧美视频| 夜夜夜精品看看| 欧美一区二区三区喷汁尤物| 亚洲精品国产无天堂网2021| 亚洲欧洲av一区二区| 狼狼综合久久久久综合网| 欧美美女福利视频| 国产欧美精品国产国产专区| 亚洲国产精品久久久久秋霞不卡| 国产精品99久久久久久久vr| 欧美资源在线| 亚洲一区日韩| 免费视频亚洲| 国产精品男人爽免费视频1| 一区二区自拍| 亚洲午夜高清视频| 亚洲人成在线观看| 性色av一区二区三区| 欧美xxx成人| 国产偷国产偷精品高清尤物| 亚洲精品久久久久久久久久久| 午夜久久一区| 亚洲午夜精品久久久久久app| 久久五月天婷婷| 国产精品色午夜在线观看| 亚洲高清免费视频| 欧美伊久线香蕉线新在线| 亚洲一区二区三区乱码aⅴ蜜桃女| 久久综合色一综合色88| 国产九区一区在线| 99精品视频一区| 亚洲精品乱码久久久久久蜜桃麻豆| 欧美一区二区日韩一区二区| 欧美久久久久久久久久| 国语自产在线不卡| 午夜精品三级视频福利| 在线视频日本亚洲性| 麻豆九一精品爱看视频在线观看免费| 国产精品视频网站| 亚洲最快最全在线视频| 亚洲区一区二区三区| 久久久精品免费视频| 国产精品久久99| 亚洲九九精品| 亚洲精品日韩在线| 另类成人小视频在线| 国产亚洲一级高清| 午夜精品久久久| 午夜亚洲精品| 国产精品播放| 日韩午夜在线播放| 99视频精品在线| 欧美黄色视屏| 伊人一区二区三区久久精品| 欧美资源在线| 久久精品中文字幕免费mv| 国产精品无人区| 亚洲天天影视| 亚洲欧美不卡| 国产精品你懂的在线| 一本久道久久久| 在线天堂一区av电影| 欧美国产三区| 亚洲国产另类精品专区| 亚洲日本在线视频观看| 蘑菇福利视频一区播放| 1024亚洲| 亚洲乱码国产乱码精品精可以看| 欧美福利影院| 亚洲人成网站在线播| 一本色道久久综合狠狠躁的推荐| 欧美国产视频在线观看| 亚洲激情视频在线| 一区二区欧美日韩视频| 欧美视频一区二| 一本色道久久综合亚洲精品不卡 | 亚洲综合精品| 欧美午夜三级| 亚洲一区二区在线看| 欧美一区日韩一区| 国内精品久久久久伊人av| 亚洲电影中文字幕| 欧美福利视频在线观看| 亚洲乱码国产乱码精品精可以看 | 欧美激情a∨在线视频播放| 亚洲高清在线观看| 日韩午夜高潮| 欧美日韩在线播放| 亚洲在线成人精品| 久久久噜噜噜| 亚洲国产精品va在线看黑人 | 亚洲天堂av在线免费| 国产精品视频久久| 久久aⅴ国产欧美74aaa| 欧美电影免费观看高清| 99精品国产一区二区青青牛奶| 亚洲女爱视频在线| 国精产品99永久一区一区| 亚洲国产精品123| 欧美日韩国产首页| 亚洲一区二区三区四区视频| 久久久久久久999精品视频| 在线日本成人| 亚洲午夜黄色| 国内久久精品| 在线亚洲伦理| 国产一区二区精品久久91| 91久久精品www人人做人人爽| 欧美另类人妖| 性做久久久久久久久| 欧美成在线观看| 亚洲视频每日更新| 久久夜色精品| 99xxxx成人网| 久久久中精品2020中文| 亚洲精品永久免费精品| 欧美在线高清| 亚洲欧洲精品一区二区三区波多野1战4 | 亚洲精品国产精品国自产在线| 亚洲一区二区三区四区五区黄| 国产亚洲激情| 一本色道久久综合亚洲91| 国产午夜精品理论片a级大结局| 亚洲激情网站| 国产精品视频一二| 最近看过的日韩成人| 国产精品视频一| 99精品热视频| 国产一区二区福利| 亚洲五月六月| 亚洲国产成人av| 久久电影一区| 一区二区三区免费观看| 免费视频一区| 欧美亚洲三区| 国产精品不卡在线| 亚洲精品视频一区| 国产日韩精品一区观看| 中文精品视频一区二区在线观看| 国产一区二区中文| 亚洲综合精品四区| 亚洲精品激情| 毛片一区二区三区| 午夜精品影院| 欧美午夜精品久久久久免费视| 亚洲大片在线| 国产欧美亚洲精品|