信息隱藏實(shí)驗(yàn)二BMP圖像信息隱藏_第1頁
信息隱藏實(shí)驗(yàn)二BMP圖像信息隱藏_第2頁
信息隱藏實(shí)驗(yàn)二BMP圖像信息隱藏_第3頁
信息隱藏實(shí)驗(yàn)二BMP圖像信息隱藏_第4頁
信息隱藏實(shí)驗(yàn)二BMP圖像信息隱藏_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、實(shí)驗(yàn)二 BMP 圖像信息隱藏一, 實(shí)驗(yàn)?zāi)康?, 了解BMP圖像文件格式2, 了解利用BMP圖像文件隱藏信息的原理3, 設(shè)計(jì)并實(shí)現(xiàn)一種基于24位真彩色BMP圖像的文件信息隱藏方法。二,實(shí)驗(yàn)環(huán)境 1, Windows XP 操作系統(tǒng) 2, Ultra Edit 文本編輯工具 3, Matlab 7.1版本軟件4, BMP格式圖片文件三,實(shí)驗(yàn)原理1, 在圖像文件尾部添加任意長度的數(shù)據(jù),秘密信息存放在文件尾部可以減少修改文件頭的數(shù)據(jù)量,僅需修改文件頭中的文件長度的值即可。2, 在調(diào)色板或者位圖信息頭和實(shí)際的圖像數(shù)據(jù)之間隱藏?cái)?shù)據(jù),如果將秘密數(shù)據(jù)放在文件頭與圖像數(shù)據(jù)之間,則至少需要修改文件頭中文件長度、數(shù)

2、據(jù)起始偏移地址這兩個(gè)域的值。3, 修改文件頭和信息頭中保留字段隱藏信息。4, 在圖像像素區(qū)利用圖像寬度字節(jié)必須是4的倍數(shù)額特點(diǎn),在補(bǔ)足位處隱藏?cái)?shù)據(jù)。四,實(shí)驗(yàn)過程1, 在實(shí)際的圖像數(shù)據(jù)后隱藏信息(1)將載體baboon.bmp和秘密信息hidden.txt放置在同一目錄下,在Windows的MS-DOS方式下執(zhí)行命令copy baboon.bmp /b + hidden.txt /a baboon1.bmp,如下圖所示:圖一 DOS界面(2)生成的新圖像baboon1.bmp,表面上看上去與原圖像幾乎完全一樣 圖二 隱藏前后對比圖(3)在Ultra Edit看兩幅圖像的結(jié)構(gòu),發(fā)現(xiàn)有所差別。圖三

3、baboon.bmp圖四 baboon1.bmp(4)在Matlab中通過比較文件的實(shí)際長度和文件中保存的文件長度,就可以發(fā)現(xiàn)該圖像是否隱藏秘密信息。代碼如下所示:clc;clear;fid=fopen('baboon1.bmp','r');%讀入偽裝載體圖像文件a,length=fread(fid,inf,'uint8');%length是文件的實(shí)際長度fclose(fid);fid=fopen('baboon1.bmp','r');%讀入偽裝載體圖像文件status=fseek(fid,2,'bof&#

4、39;);fileb=fread(fid,4,'uint8');filelength=fileb(1)*1+fileb(2)*256+fileb(3)*256*256+fileb(4)*2563;%文件圖像中保存的文件長度diff=length-filelength;%diff表示隱藏的信息長度如果相同,表示圖像沒有隱藏任何信息fclose(fid);從Workspace中可以讀出diff數(shù)據(jù)為8圖五 Workspace(5)在Ultra Edit中手動(dòng)修改文件長度,再運(yùn)行上述程序,發(fā)現(xiàn)diff=0,表示圖像隱藏并修改文件長度后,通過該方法無法發(fā)現(xiàn)圖像有隱藏信息。2, 文件頭與

5、圖像數(shù)據(jù)之間隱藏信息(1)在數(shù)據(jù)區(qū)開始之前隱藏信息,也就是在54個(gè)和55個(gè)字節(jié)之間隱藏信息。代碼如下所示:clc;clear;wm=randsrc(1,300,0 1);%產(chǎn)生隨機(jī)水印fid=fopen('baboon.bmp','r');%讀入載體圖像文件a,length=fread(fid,inf,'uint8');fclose(fid);msgfid=fopen('hidden.txt','r');%打開秘密文件msg,count=fread(msgfid);fclose(msgfid);wa=a; %a為圖

6、像變?yōu)閡int8類型后的一維矩陣j=1;wa(11)=54+count;%修改偏移量,其中count為7wa(3)=wa(3)+count;%修改圖像數(shù)據(jù)的文件長度for i=55:61 %隱藏7位信息 wa(i)=uint8(msg(j,1);%隱藏密碼信息 j=j+1;endfor i=55:length wa(i+7)=a(i);endfigure;wa=uint8(wa);fid=fopen('watermarked.bmp','wb');fwrite(fid,wa);fclose(fid);subplot(1,2,1);imshow('babo

7、on.bmp');%顯示原始圖像subplot(1,2,2);imshow('watermarked.bmp')%顯示新圖像(2)從圖像看,兩幅沒有什么區(qū)別圖六 隱藏前后對比圖3, 在圖像文件頭和信息頭的保留字段中隱藏信息BMP圖像中第7,8,9,10字節(jié)是保留的,必須為0,所以可以在這四個(gè)字節(jié)中隱藏秘密信息。下面代碼即隱藏了0,1,2,3這四個(gè)信息。clc;clear;wm=randsrc(1,300,0 1);%產(chǎn)生隨機(jī)水印fid=fopen('baboon.bmp','r');%讀入載體圖像文件a,length=fread(fid,

8、inf,'uint8');fclose(fid);wa=a;%在BMP的7,8,9,10保留字中隱藏秘密信息0 1 2 3,ASCII值為)Ox30 Ox31 Ox32 Ox33wa(7)=48;wa(7)=49;wa(7)=50;wa(7)=51;figure;wa=uint8(wa);fid=fopen('watermarked.bmp','wb');fwrite(fid,wa);fclose(fid);subplot(1,2,1);imshow('baboon.bmp');%顯示原始圖像subplot(1,2,2);imshow('watermarked.bmp')

溫馨提示

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

評論

0/150

提交評論