信息隱藏與數(shù)字水印matlab實現(xiàn)_第1頁
信息隱藏與數(shù)字水印matlab實現(xiàn)_第2頁
信息隱藏與數(shù)字水印matlab實現(xiàn)_第3頁
信息隱藏與數(shù)字水印matlab實現(xiàn)_第4頁
信息隱藏與數(shù)字水印matlab實現(xiàn)_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、網(wǎng)絡(luò)與信息安全專題研究題 目 信息隱藏與數(shù)字水印原理與matlab實現(xiàn) 姓 名 XXX 院 系 信息與技術(shù)學(xué)院 年級專業(yè) XX級計本班 指導(dǎo)教師 XXX 2015年6月15日 目 錄第一章 摘要1第二章 信息隱藏原理22.1信息隱藏技術(shù)的特點22.1.1不可感知性22.1.2魯棒性22.1.3隱藏容量32.2數(shù)字水印的特點42.2.1安全性:42.2.2隱蔽性:42.2.3魯棒性:42.2.4水印容量:42.3數(shù)字水印的基本原理5第三章 數(shù)字水印實現(xiàn)63.1matlab實現(xiàn)程序63.2水印前圖片73.3嵌入文件后的圖片8 3.4 RSA的MATLAB實現(xiàn)第四章 結(jié)語10【參考文獻(xiàn)】11【特別致

2、謝】1216- 16 - 信息隱藏與數(shù)字水印原理與matlab實現(xiàn)【關(guān)鍵詞】水印技術(shù) 隱藏 嵌入 【內(nèi)容摘要】隨著計算機應(yīng)用逐漸廣泛、網(wǎng)絡(luò)技術(shù)的迅速發(fā)展,使圖文、音頻、視頻等多媒體信息都能以數(shù)字形式傳輸、閱讀和播放,從而使大規(guī)模非授權(quán)拷貝成為了可能,而這樣會損害音樂、電影、書籍和軟件等出版業(yè)的健康發(fā)展。為了保護知識產(chǎn)權(quán),引發(fā)了一個很有意義的研究方向:信息隱藏。第一章 摘要本文首先介紹了數(shù)字水印技術(shù)的原理和分類所謂的信息隱藏是利用媒體信息普遍存在的冗余特性,將秘密信息隱藏在其他媒體信息中。其首要目標(biāo)就是使加入隱藏信息后的媒體目標(biāo)的質(zhì)量下降,盡可能地小,使人無法覺察到隱藏的數(shù)據(jù),或者知道它的存在,

3、但未經(jīng)授權(quán)者無法知道它的位置,并不像傳統(tǒng)加密過的文件一樣,看起來是一堆會激發(fā)非法攔截者破解機密資料動機的亂碼,而是看起來和其它非機密性的一般資料無異,因而十分容易逃過非法攔截者的破解。其道理如同生物學(xué)上的保護色,巧妙地將自己偽裝隱藏于環(huán)境中,免于被天敵發(fā)現(xiàn)而遭受攻擊。被人們譽為歷史學(xué)之父的古希臘歷史學(xué)家希羅多德(Herodotus,486-425),在其著作中講述了這樣一則故事:一個名叫Histaieus的人籌劃著與他的朋友合伙發(fā)起叛亂,里應(yīng)外合,以便推翻波斯人的統(tǒng)治。他找來一位忠誠的奴隸,剃光其頭發(fā)并把消息刺在頭皮上,等到頭發(fā)義長起來了,把這人派出去送“信”,最后叛亂成功了。第3章 信息隱藏

4、的原理2.1信息隱藏技術(shù)的特點2.1.1不可感知性 信息隱藏技術(shù)利用信源數(shù)據(jù)的自相關(guān)性和統(tǒng)計冗余特性,將秘密信息嵌入數(shù)字載體中,而不會影響原載體的主觀質(zhì)量,不易被觀察者察覺。如果載體是圖像,所做的修改對人類的視覺系統(tǒng)應(yīng)該是不可見的;如果載體是聲音,所做的修改對人類的聽覺系統(tǒng)應(yīng)該是聽不出來的。秘密信息的嵌入在不改變原數(shù)字載體的主觀質(zhì)量的基礎(chǔ)上,還應(yīng)不改變其統(tǒng)計規(guī)律,使得運用統(tǒng)計檢查工具檢查到隱秘載體文件中秘密信息的存在性也是非常困難的。2.1.2魯棒性魯棒性反映了信息隱藏技術(shù)的抗干擾能力,它是指隱藏信息后數(shù)字媒體在傳遞過程中,雖然經(jīng)過多重?zé)o意或有意的處理信號,但仍能夠在保證較低錯誤率的條件下將秘

5、密信息加以恢復(fù),保持原有信息的完整性和可靠性,它也稱為自恢復(fù)性或可糾錯性對隱藏信息的處理過程一般包括數(shù)/模、模/數(shù)轉(zhuǎn)換;再取樣、再量化和低通濾波;剪切、位移;對圖像進(jìn)行有損壓縮編碼,如變換編碼、矢量量化;對音頻信號的低頻放大,等等。2.1.3隱藏容量將信息隱藏技術(shù)應(yīng)用于隱蔽通信中時,為了提高通信的效率,往往希望每一個數(shù)字載體文件能夠攜帶更多的秘密數(shù)據(jù)。隱藏容量是反映這種能力的一個指標(biāo),它是指在隱藏秘密數(shù)據(jù)后仍滿足不可感知性的前提下,數(shù)字載體中可以隱藏秘密信息的最大比特數(shù)。隨著數(shù)字隱藏技術(shù)的發(fā)展,在特定的應(yīng)用方面對其技術(shù)性能又提出了更高、更具體的要求。在一般的信息隱藏方法中,這些特性都是相互沖突

6、、互相矛盾的。例如,有的方法隱藏容量大,但魯棒性較差;有的方法魯棒性很好,但不可感知性較差;有的方法魯棒性較差,但運算量較小,等等。應(yīng)根據(jù)實際的需求對各種性能做出選擇和擇中,從而找到最合適的信息隱藏方法。在信息隱藏算法中,主要有空間域算法和變換域算法。最典型的空間域信息隱藏算法為LSB算法。LFTurnet與RGVan利用LSB算法將信息隱藏在音頻和數(shù)字圖像中。Bender提出了通過修改調(diào)色板統(tǒng)計信息來嵌入秘密數(shù)據(jù)庫的隱藏算法。Patchwork方法采用隨機技術(shù)選擇若干對像素,通過調(diào)節(jié)每對像素的亮度和對比度來隱藏信息,并保證這種調(diào)整不影響圖像的整體觀感。丁瑋從數(shù)字圖像的透明疊加方法出發(fā),提出了

7、基于融合的數(shù)字圖像信息隱藏算法。并根據(jù)七巧板的游戲原理,提出了隱藏數(shù)字圖像的Tangram算法,Marvel將數(shù)字圖像看作嗓聲,提出了空間域中的擴頻數(shù)據(jù)隱藏方法。Lippman使用信號的色度,提出了在國家電視委員會的色度信道中隱藏信息的方法。Liaw和Chen提出了將秘密圖像嵌入到載體圖像中的灰度值替方法,為了適合灰度值替換,Wu和Tsai提出了使用圖像差分的改進(jìn)方法;Wu和Tsai還在人類視覺模型的基礎(chǔ)上,提出了在數(shù)字圖像中嵌入任何類型數(shù)據(jù)的數(shù)據(jù)隱藏方法;Tseng和Pan提出了一種安全的、大容量的數(shù)據(jù)隱藏算法;Provos通過隨機嵌入和糾錯編碼的方法改進(jìn)了信息隱藏的性能,Solanki等從

8、信息論的角度出發(fā),將視覺標(biāo)準(zhǔn)引入到通過量化來嵌入信息的方法,并由此提出了一種高容量的信息隱藏算法。在變換域算法中,正交變換的形式可以有離散傅立葉變換(DFT),離散余弦變換(DCT),小波變換(Wavelet)等。由于變換域算法利用了人眼對于不同空間頻率的敏感性,在適當(dāng)?shù)奈恢们度胄畔⒕哂懈玫聂敯粜院筒豢捎X察性。容量也較高,所以變換域隱藏算法比空間域算法復(fù)雜。最具代表性的變換域算法是Cox在1995年提出的擴頻算法。Andreas Westfel和Pitas分別提出了通過模擬圖像水平或者垂直移動將秘密數(shù)據(jù)嵌入到圖像的DCT系統(tǒng)的數(shù)據(jù)隱藏算法,管曉康提出了Pitas算法的改進(jìn)算法,克服

9、了該算法中嵌入數(shù)據(jù)量小的缺點。丁瑋成功地將該算法修改并在小波域中運算該算法,并通過置亂技術(shù)改進(jìn)了Pitas算法中的隨機數(shù)策略,消除了誤判的可能性。  2.2數(shù)字水印的特點2.2.1安全性:數(shù)字水印的信息應(yīng)是安全的,難以篡改或偽造,同時,應(yīng)當(dāng)有較低的誤檢測率,當(dāng)原內(nèi)容發(fā)生變化時,數(shù)字水印應(yīng)當(dāng)發(fā)生變化,從而可以檢測原始數(shù)據(jù)的變更;當(dāng)然數(shù)字水印同樣對重復(fù)添加有很強的抵抗性2.2.2隱蔽性:數(shù)字水印應(yīng)是不可知覺的,而且應(yīng)不影響被保護數(shù)據(jù)的正常使用;不會降質(zhì);2.2.3魯棒性:是指在經(jīng)歷多種無意或有意的信號處理過程后,數(shù)字水印仍能保持部分完整性并能被準(zhǔn)確鑒別。可能的信號處理過程包括信

10、道噪聲、濾波、數(shù)/模與模/數(shù)轉(zhuǎn)換、重采樣、剪切、位移、尺度變化以及有損壓縮編碼等。主要用于版權(quán)保護的數(shù)字水印易損水?。‵ragile Watermarking),主要用于完整性保護,這種水印同樣是在內(nèi)容數(shù)據(jù)中嵌入不可見的信息。當(dāng)內(nèi)容發(fā)生改變時,這些水印信息會發(fā)生相應(yīng)的改變,從而可以鑒定原始數(shù)據(jù)是否被篡改。2.2.4水印容量:是指載體在不發(fā)生形變的前提下可嵌入的水印信息量。嵌入的水印信息必須足以表示多媒體內(nèi)容的創(chuàng)建者或所有者的標(biāo)志信息,或購買者的序列號,這樣有利于解決版權(quán)糾紛,保護數(shù)字產(chǎn)權(quán)合法擁有者的利益。尤其是隱蔽通信領(lǐng)域的特殊性,對水印的容量需求很大。2.3數(shù)字水印的基本原理 目的是將特定的

11、信息加入到需要保護的媒體信息中,加入的信息一般是能夠代表媒體信息版權(quán)的內(nèi)容,如公司標(biāo)志、媒體作者、特定代碼等,而且要保證數(shù)字水印能夠抵抗一定的攻擊,而不被輕易的破壞和修改,同時數(shù)字水印要能夠被提取或者能夠被檢測到。數(shù)字水印的具體內(nèi)容、算法、提取或檢測過程根據(jù)實際應(yīng)用有不同的要求。數(shù)字水印的嵌入和提取過程如圖1,圖2所示。水印信息密鑰載體圖片水印圖片加密算法 圖1 數(shù) 字水印的嵌入過程水印圖片密鑰水印信息解密算法 圖2 數(shù)字水印的提取過程圖1是數(shù)字水印的嵌入過程,加入密鑰可以提高數(shù)字水印的隱蔽性、抗攻擊性,而并非是必須的。根據(jù)用途不同,嵌入的水印有些是需要還原的,而有些則只需驗證水印的存在性,前

12、者需要數(shù)字水印的提取算法,而圖2需要數(shù)字水印的檢測算法,根據(jù)具體的水印算法,嵌入或提取的過程可能有所不同。第4章 基于Matlab的數(shù)字水印算法3.1matlab實現(xiàn)程序 clear  clc M =512;%原圖像長度 N =64;%水印圖像長度 K =8; I=zeros(M,M);J=zeros(N,N);BLOCK=zeros(K,K); %顯示原圖像 subplot(2,3,1); I=imread('C:Documents and Se

13、ttingsAdministrator桌面圖像.jpg','jpg');imshow(I);title('原始公開圖像'); %顯示水印圖像 subplot(2,3,2); J=imread('C:Documents and SettingsAdministrator桌面水印.jpg','jpg');imshow(J);title ('水印圖像'); %水印嵌入 for p=1:N for q=1:

14、N x=(p-1)*K+1; y=(q-1)*K+1;   BLOCK =I(x:x+K-1,y:y+K-1);BLOCK=dct2(BLOCK); if J(p,q)=0   a=-1;else   a=1; end BLOCK(1,1)=BLOCK(1,1)*(1+a*0.03);BLOCK=idct2(BLOCK); I(x:x+K-1,y:y+K-1)=BLOCK; end end %顯示

15、嵌入水印后的圖像 subplot(2,3,3); imshow(I);title('嵌入水印后的圖像');imwrite(I,'C:Documents and SettingsAdministrator桌面圖像.jpg','jpg'); %從嵌入水印的圖像中提取水印 I=imread('C:Documents and SettingsAdministrator桌面圖像.jpg','jpg'); J=imread('C:

16、Documents and SettingsAdministrator桌面水印.jpg','jpg'); J=imnoise(J,'gaussian',0,0.01); subplot(2,3,4);imshow(J,);title('加入高斯噪聲'); I=imread('C:Documents and SettingsAdministrator桌面圖像.jpg','jpg'); J=imread('C:Documen

17、ts and SettingsAdministrator桌面水印.jpg','jpg'); J=imnoise(J,'gaussian',0,0.01); subplot(2,3,4);imshow(J,);title('加入高斯噪聲'); for p=1:N for q=1:N x=(p-1)*K+1; y=(q-1)*K+1; BLOCK1 =I(x:x+K-1,y:y+K-1); BLOCK2 

18、=J(x:x+K-1,y:y+K-1); BLOCK1=dct2(BLOCK1); BLOCK2=dct2(BLOCK2); a = BLOCK2(1,1)/BLOCK1(1,1)-1; if a<0 W(p,q)=0; else W(p,q)=1; end end end %顯示提取的水印 subplot(2,3,5); imshow(W); title('從含水印圖像中提取的水印')3; 3

19、.2水印前圖片嵌入的文件3.3嵌入文件后的圖片3.4 RSA的MATLAB實現(xiàn)1. 模n求逆函數(shù) function d=moni(u,n)  n1=n; n2=u; b1=0; b2=1; for i=0:1000      q=floor(n1/n2);      r=n1-q*n2;      i=i+1;

20、0;     if r=0n1=n2;           n2=r;           t=b2;           b2=b1+q*b2;     &#

21、160;     b1=t;      else           break      end end if n2=1 warning(所求的模逆不存在); end if n2= =1    &#

22、160;  if 0= =mod(i,2)           b2=-b2;       else           b2=b2;       end    

23、;   d=mod(b2,n);       %return; end 2.求模n的大數(shù)冪乘函數(shù) function dashuchenmi=dashuchenmi(x,r,n); a=x; b=r; c=1; for i=1:1000 if b= =0 dashuchenmi=c; end if mod(b,2)=0 b=b-1

24、;      c=mod(c*a,n); else      b=b/2;      a=mod(a*a,n); end end dashuchenmi=c; 3.主函數(shù) clc clear fid=input(輸入待加密的明文:,s); f=abs(fid); p=input(輸入第一個大素數(shù):); q=input(輸入第二個大素數(shù):); e=input(輸入加密密鑰:); n=p*q; fain=(p-1)*(q-1); d=moni(e,fain); for i=1:length(f)       miwen(i)=setstr(dashuchenmi(f(i),e,n); end for i=1:length(f)       mingwen(i)=setst

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論