LSB信息隱藏試驗報告_第1頁
LSB信息隱藏試驗報告_第2頁
LSB信息隱藏試驗報告_第3頁
LSB信息隱藏試驗報告_第4頁
LSB信息隱藏試驗報告_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、Centr中南大,攀al South University信息隱藏實驗報告學院:信息科學與工程學院班級:信息安全1201學號:0909121724姓名:呂秋言 時間:2018 年6月實驗一:基于圖像的LSB信息隱藏一、 實驗目的該實驗為驗證性實驗。目的是通過實驗使學生掌握經(jīng)典信息隱藏算法,在Matlab環(huán)境下,編寫基于圖像的LSB信息隱藏算法程序。用Matlab函數(shù)實現(xiàn)LSB信息隱藏及提取,并進行分析。b5E2RGbCAP二、實驗要求1、實驗前要做好充分準備,包括:復習實驗所涉及的知識點,掌握Matlab編程語言和調(diào)試環(huán)境。2、實驗時注意記錄實驗過程中產(chǎn)生的數(shù)據(jù)、出現(xiàn)的問題及解決問題的方法。3

2、、理論聯(lián)系實際,認真分析實驗結(jié)果,回答思考題。4、實驗后完成實驗報告,并附相關(guān)截圖。三、實驗環(huán)境計算機 <安裝Visual C+ 6.0 和Matlab 6.5 以上版本)四、實驗原理隱秘算法核心是將我們選取的像素點的最不重要位依次替換成 秘密信息,以達到信息隱秘的目的。嵌入過程包括選擇一個圖像載體 像素點的子集(j1, ,jl(m>,然后在子集上執(zhí)行替換操作像素 cji->mi,即把cji的LSB與秘密信息mi進行交換(mi可以是1或 0>。一個替換系統(tǒng)也可以修改載體圖像像素點的多個比特,例如,在一個載體元素的兩個最低比特位隱藏兩比特、三比特信息,可以使得信息嵌入量大

3、大增加但同時將破壞載體圖像的質(zhì)量。在提取過程中 , 找出被選擇載體圖像的像素序列,將LSB(最不重要位 >排列起來重構(gòu) 秘密信息,算法描述如下:p1EanqFDPw嵌入過程:for(i=1 。1<=像素序列個數(shù)。i+> si cifor(i=1 。1<=秘密消息長度。i+>/將選取的像素點的最不重要位依次替換成秘密信息sji cji ->mi提取過程:for(i=1 。1<=秘密消息長度。i+> i -ji 序選取 mi-LSB(cji>)五、 實驗內(nèi)容與步驟基本演示環(huán)境:matlabLSB,Least Significant Bits ,

4、最低有效位,將圖像加密處 理。這次將通過位平面的切割之后,嵌入一張隱私圖片,一些 人的隱私交流很有可能通過這個,比如美國的某某人,當然這個只 是最簡單的。DXDiTa9E3d位平面切割是將數(shù)字圖像分解為位平面,比如上一篇文 章講到的圖片的8位的數(shù)據(jù)類型,可以讓我們每一位所起的作用。 一邊學的時候也帶著疑問,為什么用 bitget呢。RTCrpUDGiT 經(jīng)過實驗也證明自己的想法是正確的,首先 bitget(X,Y>是拿到X二進制的值的Y位。plain view plaincopy c1. >> bitget(1,1>2.3. ans =4.5. 17. >>

5、 bitget(1,2>8.9. ans =10.11. 012.13. >>那么我們可以想想,一幅8位的數(shù)字圖像 <無符號類型),最高是 11111111J進制),即2八8 - 1,255,用大腿一想,當然是第八位 起決定性作用,假如有一百萬零一這個數(shù)字,少了最前面的一個一和最后面的一個一可是兩碼事。5PCzVD7HxA舉個例子,我切除圖像的一部分:plain view plaincopy c.1. >> q = f(122:130,122:130> 。2. >> imwrite(q,'verysmall.jpg'>

6、 。3. >> f = imread('verysmall.jpg'>4.5. f =6.7. 1551541491411341291291301278.1711691661611571541549.10.11.12.13.14.15.541481731711701701711711696816316516416416717017217169165166166167169171172172711681741751751741701691697017517918218117416415916064172184186185174160152155601611821

7、8518016715414914848149每個像素點的值這么大。接下來:plain view plaincopy1. >> tbitget(f,8>3. t =5.1111111106.1111111117.1111111118.1111111119.11111111110.11111111111.11111111112.11111111113.11111111114.最高位是決定性作用的一層。所以,要嵌入圖像,就要嵌入到第一層,影響最小。plain view plaincopy c1. >>f=imread('lina.jpg'>。2.

8、>>g=bitget(f,8> 。這樣g雖然是第八層的圖像,但是都是二進制最高位的值,非 0即1,而在為灰度圖像看來,都是黑色。需要轉(zhuǎn)換成二值圖像。jLBHrnAILgplain view plaincopy C1. t = logical(g> 。接下來,我把自己的話嵌入到照片中plain view plaincopy c.2. >> b = imread('love.jpg'>3. >> c = im2bw(b>。這次是反過來,我們是要把一幅8位數(shù)據(jù)類型的圖像嵌入到位圖中,那首先要把8位的數(shù)據(jù)轉(zhuǎn)換成二進制,用上面的

9、im2bw。xHAQX74J0X先看看嵌入到影響最大的一層的效果如何:plain view plaincopy1. >> w = bitset(a,8,c>2. >> imshow(w>接下來,嵌入到第一層:plain view plaincopy c1. >> w = bitset(a,1,c>2. >> imshow(w>幾乎是看不到什么的,當你想看看你嵌入什么圖像時,只需要把被替換的第一層取出。plain view plaincopy 亡1. >> y = bitget(w,1> 。2. >&

10、gt; imshow(logical(y>>1、隨機選取圖像載體像素,實現(xiàn)隱秘消息的嵌入與提取<1)隱秘消息的嵌入版件名:randlsbhide.m網(wǎng)數(shù)功能:本函數(shù)將完成隨機選擇LSB的信息隱秘,載體選用灰度BMP®glenna.bmp' , messa喻入格式舉 例:ste_cover,len_total=randlsbhide(ge.txt ' ,' scover.bmp ' ,20 01>LDAYtRyKfE%參數(shù)說明:%input是信息隱蔽載體圖像%file是秘密消息文件%output是信息隱秘后的生成圖像%key是隨機

11、間隔函數(shù)的密鑰functionste_cover,len_total=randlsbhide(input,file,output,key>Zzz6ZB2Ltk獻入圖像矩陣cover=imread(input> 。ste_cover=cover。ste_cover=double(ste_cover> 。%各文本文件轉(zhuǎn)換為二進制序列f_id= fopen(file, ' r' >。msg,len_total=fread(f_id, ' ubit1 ' >。喏斷嵌入消息量是否過大m,n=size(ste_cover> 。If len

12、_total>m*nerror('嵌入消息量過大,請更換圖像>。end%昨為消息嵌入位數(shù)計數(shù)p=1。須用隨機間隔函數(shù)選取像素點row,col=randinterval(ste_cover,len_total,key>。流LSB隱秘消息for i=1:len_totalste_cover(row(i>,col(i>>=ste_cover(row(i>,col(i>>-mod(ste_cover(row(i>,col(i>>,2>+msg(p,1> 。 dvzfvkwMI1if p=len_totalbre

13、ak。endp=p+1。endste_cover=uint8(ste_cover> 。imwrite(ste_cover,output> 。煩示實驗結(jié)果subplot(1,2,1> 。 imshow(cover>。title('原始圖像>。subplot(1,2,2> 。imshow(output> 。 title('隱藏信息的圖像<2)編寫函數(shù)比較兩幅圖像區(qū)別煩件名:compare.m加數(shù)功能:本函數(shù)完成顯示隱秘前后兩幅圖像的區(qū)別喻入格式舉例:F=compare(' blenna.bmp' , ' sco

14、ver.bmp' >%參數(shù)說明:%original是原始載體圖像%hided是隱秘后的圖像%FM差值矩陣functionF=compare(original,hided>取原始載體圖像矩陣W=imread(original> 。W=double(W>/255獻取隱秘后圖像矩陣E=imread(hided>。E=double(E>/255。%各兩圖像關(guān)!陣相減,顯示效果旭意,MATLAB矩陣相減只支持double型imshow(mat2gray(F> ><3)隱秘消息的提取煩件名:randlsbget.m%0數(shù)功能:本函數(shù)將完成提取隱

15、秘于LSB上的秘密消息喻入格式舉例:result=randlsbget( ' scover.jpg ' ,56, ' secret.txt,2001>rqyn14ZNXI%參數(shù)說明:%output是信息隱秘后的圖像%len_total是秘密消息的長度%goalfile是提取出的秘密消息文件%key是隨機間隔函數(shù)的密鑰%result是提取的消息functionresult=randlsbget(output,len_total,goalfile,key>EmxvxOtOcoste_cover=imread(output> 。ste_cover=doubl

16、e(ste_cover> 。喏斷嵌入消息量是否過大m,n=size(ste_cover> 。frr= fopen(goalfile, ' a' >。%p乍為消息嵌入位數(shù)計數(shù)器,將消息序列寫回文本文件p=1。須用隨機間隔函數(shù)選取像素點row,col=randinterval(ste_cover,len_total,key>。for i=1:len_totalifbitand(ste_cover(row(i>,col(i>>,1>=1fwrite(frr,1, ' bit1 ' >。result(p,1>=

17、1 。elsefwrite(frr,0, ' bit1 ' >。result(p,1>=0endif p=len_totalbreak。endp=p+1。endfclose(frr> 。2、順序選取圖像載體像素,實現(xiàn)隱秘消息的嵌入與提取<1)隱秘消息的嵌入版件名:lsbhide.m網(wǎng)數(shù)功能:本函數(shù)將完成在LSB上的順序信息隱秘,載體選用灰度BMP®喻入格式舉例:ste_cover,len_total=lsbhide( ' glenna.bmp' , message.txt',scover.bmp ' >Si

18、xE2yXPq5%參數(shù)說明:%input是信息隱蔽載體圖像,為灰度BMPffl%file是秘密消息文件%output是信息隱秘后生成圖像%ste_cover是信息隱秘后圖像矩陣%len_total是秘密消息的長度,即容量functionste_cover,len_total=lsbhide(input,file,output>6ewMyirQFL獻入圖像矩陣cover=imread(input> 。ste_cover=cover。ste_cover=double(ste_cover> 。%各文本文件轉(zhuǎn)換為二進制序列f_id=fopen(file, ' r' &

19、gt;。msg,len_total=fread(f_id, ' ubit1 ' >。喏斷嵌入消息量是否過大m,n=size(ste_cover> 。iflen_total>m*nerror('嵌入消息量過大,請更換圖像>。end%昨為消息嵌入位數(shù)計數(shù)難成信息隱秘后圖像imwrite(ste_cover,output> 。煩示實驗結(jié)果subplot(1,2,1> 。 imshow(cover>。title('原始圖像>。subplot(1,2,2> 。imshow(output> 。 title('隱藏信息的圖像<2)

溫馨提示

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

評論

0/150

提交評論