信息隱藏實驗十一LSB信息隱藏的RS分析_第1頁
信息隱藏實驗十一LSB信息隱藏的RS分析_第2頁
信息隱藏實驗十一LSB信息隱藏的RS分析_第3頁
信息隱藏實驗十一LSB信息隱藏的RS分析_第4頁
信息隱藏實驗十一LSB信息隱藏的RS分析_第5頁
已閱讀5頁,還剩8頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、一, 實驗目的:了解RS隱寫分析的原理,掌握一種圖像LSB隱寫算法的分析方法,設計并實現一種基于圖像的LSB隱寫的RS隱寫分析算法。二, 實驗環(huán)境(1)Windows 7操作系統(tǒng);(2)MATLAB R2012b版本軟件;(3)圖像文件lena.bmp;(4)S-Tools工具;三, 實驗原理1. RS隱寫分析原理RS主要是針對采用偽隨機LSB嵌入算法進行攻擊的一種方法。RS方法不但能檢測出圖像是否隱藏信息,而且還能比較準確地估算出隱藏的信息長度。RS隱寫分析算法考慮圖像各個位平面之間具有一定的非線性相關性,當利用LSB隱寫算法隱藏秘密信息后,這種相關性就會破壞。只要能找出衡量這一相關性的方法

2、,并對隱藏秘密信息前后的情況加以對比,就有可能設計出隱寫分析方法。RS隱寫分析方法的理論核心是:任何經過LSB隱寫的圖像,其最低比特位分布滿足隨機性,即0、1的取值概率均為1/2,而未經過隱寫的圖像不存在此特性。對于一個像素的圖片,設各個像素的值取自集合,例如一個8bit的灰度圖像,。將這些像素分為有著個相鄰像素的子集,例如可以取值為4,記為。進一步利用如下函數表示圖像塊的空間相關性,即 (1)函數使得每一個集合都對應一個實數。中的噪聲越大,函數的值越大。的值越小,說明圖像相鄰像素之間的起伏越小,而圖像塊的空間相關性越強。然后,定義集合上的3個函數:(1)交換函數:。(2)偏移函數:。(3)恒

3、等變換:。復雜度分辨函數和三種變換函數定義以下三種類型的元素組。(1)Regular :,也就是說對中的元素進行 變換之后增大了元素之間的差別程度,表示正則組。(2)Singular :,也就是說對中的元素進行 變換之后減小了元素之間的差別程度,表示奇異組。(3)Unusable :,也就是對中的元素進行變 換之后元素之間的差別程度不變,表示無用組。引入偽裝,它的取值范圍是-1、0、1。對應著、三個變換函數。記對于偽裝的組的數量為,類似的組記為。例如=(27,28,26,25),=(1,0,1,0),則-=(-1,0,-1,0)。于是就得到=(26,28,27,25),=(28,28,25,2

4、5)。對于一個原始不包含隱藏信息的載體來說具有下面的規(guī)律: (2)但是當在載體中嵌入了秘密信息,就會有下面的式子成立: (3)也就是說對于一個待檢測的載體,只需要得到上述的統(tǒng)計量,然后通過對比這四個統(tǒng)計參數之間的大小關系就能夠判斷出載體中是否含有秘密信息。RS算法不但能夠判斷載體是否含有秘密信息,RS隱寫分析算法還能夠估計出隱寫容量。上面算出的一組、是在比例為(為隱寫率)的樣點值已經作了一次變換情況下得到的。將該隱寫體的所有樣點值應用變換,相對于原始載體則有比例為(1-)的樣點值作了變換,計算此時的、值。如下圖1所示,得到的是兩組統(tǒng)計量的數據。圖 1 RS曲線與像素更改比率間的關系示意圖具體步

5、驟如下:將待檢測圖像分成若干大小相等的圖像塊,通常定義 = 4,對每個小圖像塊定義一個掩膜算法函數,通常為(0,1,1,0),即,判斷此圖像小塊屬于Regular或Singular,遍歷整幅圖像,得到,。,定義為: (4) (5)改變掩膜算法函數,令為(0,-1,-1,0)重復上一步操作得到和。將圖像數據的lSB位取反,用獲得的數據重復上述操作得到,以及,。結合如下方程:(6)其中:解方程式(6),取絕對值較小的,計算嵌入概率為:。2. S-Tools工具簡介S-Tools是一個時(空)域數字水印軟件,支持WAV格式的音頻文件、GIF和BMP格式的圖像文件,下面介紹基于音頻文件的隱藏原理和使用

6、方法。WAV格式的音頻文件在Windows中存儲為8位或16位值,對于8位樣本,這意味著取值范圍介于0和255之間。16位的樣本取值范圍介于0和65535之間。S-Tools在WAV格式的音頻文件中隱藏信息時,首先用密碼加密,然后根據密碼決定要嵌入信息的位置,采用LSB(least significant bits)方法,把秘密信息代替載體音頻文件的最不重要比特位。例如,假設一個音頻文件有以下8個字節(jié)的信息,分別為132 134 137 141 121 101 74 38二進制表示為10000100 10000110 10001001 10001101 01100101 01001010 00

7、100110如果要隱藏二進制字節(jié)11010101(213)在這個序列里。簡單地取代了音頻文件的LSB(最低有效位)進行信息隱藏。因此上述順序將變更為133 135 136 141 120 101 74 39用二進制表示為10000101 10000111 10001000 10001101 01111000 01001010 00100111這樣,秘密信息就隱藏在載體音頻文件中,音頻文件在聽覺效果上和原始文件幾乎沒有區(qū)別。四, 實驗分析1. 隱藏信息并分析源代碼RS.m如下:clc,clear allorg = imread('lena.bmp');org = double(o

8、rg);org = org(:)'row sample_len = size(org);rs = zeros(2, 4);cor = zeros(1, 3);m = floor(sample_len / 4);M = randsrc(4, 1, 0 1);tmp = zeros(4, 1);% 使用LSB,準備待檢測圖像,隱寫率為40% msg_len = floor(sample_len * 0.4);msg = randsrc(msg_len, 1, 0 1; 0.5 0.5);stg =org;for i = 1 : msg_len stg(i) = bitset(stg(i),

9、 1, msg(i);end% 對待檢測圖像應用非負和非正翻轉,統(tǒng)計翻轉前后的空間相關性i = 1;for j = 1 : m tmp = stg(j - 1) * 4 + 1 : j * 4); %把圖像分為四個像素一組 cor(1) = SpaceCor(tmp); cor(2) = SpaceCor(fpos(tmp, M); cor(3) = SpaceCor(fneg(tmp, M);if cor(2) > cor(1)% Rm rs(i, 1) = rs(i, 1) + 1; endif cor(2) < cor(1)% Sm rs(i, 2) = rs(i, 2) +

10、 1;endif cor(3) > cor(1)% R-m rs(i, 3) = rs(i, 3) + 1;endif cor(3) < cor(1)% S-m rs(i, 4) = rs(i, 4) + 1;endend% 對待檢測圖像所有像素應用正翻轉stg = fpos(stg, ones(sample_len, 1);% 對待檢測圖像應用非負和非正翻轉,統(tǒng)計翻轉前后的空間相關性i = 2;for j = 1 : m tmp = stg(j - 1) * 4 + 1 : j * 4); cor(1) = SpaceCor(tmp); cor(2) = SpaceCor(fpo

11、s(tmp, M); cor(3) = SpaceCor(fneg(tmp, M);if cor(2) > cor(1)% Rm rs(i, 1) = rs(i, 1) + 1; end;if cor(2) < cor(1)% Sm rs(i, 2) = rs(i, 2) + 1;end;if cor(3) > cor(1)% R-m rs(i, 3) = rs(i, 3) + 1;end;if cor(3) < cor(1)% S-m rs(i, 4) = rs(i, 4) + 1;end;end;rs = rs / m;% d0 = Rm(p/2)-Sm(p/2),

12、 d1=Rm(1-p/2)-Sm(1-p/2)dpz = rs(1, 1) - rs(1, 2); dpo = rs(2, 1) - rs(2, 2);% d-0 = R-m(p/2)-S-m(p/2), d-1=R-m(1-p/2)-S-m(1-p/2)dnz = rs(1, 3) - rs(1, 4); dno = rs(2, 3) - rs(2, 4);P = 2.5 * 1e-2; %設定門限值,對于RS分析一般為2%-3%if dnz > 0 && dpo > 0 %用于判斷Rm是否大于Sm,R-m是否大于S-m disp('待檢測圖像lena.b

13、mp中沒有經過LSB替換隱寫!');判定待檢測圖像是否經過LSB替換隱寫endif dnz - dpo > P %用于判定R-m - S-m > Rm - Sm disp('待檢測圖像lena.bmp經過LSB替換隱寫!');end% get roots of polynomialC = 2 * (dpo + dpz), (dnz - dno - dpo - 3 * dpz), (dpz - dnz);z = roots(C);p = z ./ (z - 0.5);fprintf(1, 'Fridrih Algorithm:expective emb

14、edding rate is %fn', p(2);運行上述代碼,得到隱寫率為0.476476。由于模板是隨機產生的,對此可以采取多次執(zhí)行代碼,依據所得結果計算平均隱寫率。具體結果如下表1所示。圖 7 代碼執(zhí)行結果表 1 多次執(zhí)行代碼后的隱寫率估算值與誤差分析執(zhí)行次數初始設定隱寫率值隱寫率估算值相對誤差(%)平均誤差(%)平均隱寫率119.12 224.00 310.92 425.57 518.24 620.96 依據表1所示結果,可以發(fā)現:經過多次執(zhí)行代碼后,運用RS分析方法對載體隱寫率進行估算的平均誤差約為19.80%,即估算正確率為80.20%,近似達到了估算準確度要求。這也就表

15、明RS方法在分析低隱寫率的載體圖像時,其檢測誤差較大,所得結果的可靠性較低。為進一步研究RS分析方法能否比較正確地判斷載體是否進行LSB替換隱寫,在實驗中繼續(xù)修改原設定的隱寫率(分別設定隱寫率為3%、5%、10%、20%、30%、40%、50%、60%、70%、80%、90%、100%),分析不同設定隱寫率下利用RS方法所估算的載體嵌入率誤差,所得結果如下表2、圖8所示。表 2 不同設定隱寫率下利用RS方法得到的隱寫率估算值與誤差分析初始設定隱寫率值隱寫率估算值相對誤差(%)平均誤差(%)35.95 34.81 7.80 8.59 19.91 19.12 4.31 -2.22 -2. 利用S-

16、Tools工具在原始載體中隱藏秘密信息隱藏的秘密信息文件為hidden.txt,載體圖像為Lena.bmp。(1)把載體圖像拖入S-Tools界面,并隱藏秘密信息(圖9所示)。圖 9 利用S-Tools工具隱藏秘密信息(2)隱藏后,出現原始圖片(圖10示)和攜密圖像(圖11示),將攜密圖像另存為Lenahidden.bmp。 圖 10 原始圖片 圖 11 攜密圖片由上圖10與圖11,可以發(fā)現:利用S-Tools工具在載體圖像文件中加載隱秘信息后,攜密圖片在視覺上和原始圖片幾乎無差別。通過查看攜密圖片文件信息,將隱秘信息提出出來,保存為LenaHidden.txt,利用UltraCompare工

17、具比較隱秘信息文件hidden.txt和提取的含有隱秘信息的文件LenaHidden.txt,所得結果如下圖12所示。表明兩個文件相同,無差異圖 12 原始隱秘信息文件與提取的含有隱秘信息文件的比較3. 利用上述算法估計隱寫率源代碼RS1.m如下:clc,clear all;org=imread('lenahidden.bmp');org=double(org);org=org(:)'row sample_len=size(org);stg =org;rs = zeros(2, 4);cor = zeros(1, 3);m = floor(sample_len / 4)

18、;M = randsrc(4, 1, 0 1);tmp = zeros(4, 1);% 對待檢測圖像應用非負和非正翻轉,統(tǒng)計翻轉前后的空間相關性i = 1;for j = 1 : m tmp = stg(j - 1) * 4 + 1 : j * 4); %把圖像分為四個像素一組 cor(1) = SpaceCor(tmp); cor(2) = SpaceCor(fpos(tmp, M); cor(3) = SpaceCor(fneg(tmp, M);if cor(2) > cor(1)% Rm rs(i, 1) = rs(i, 1) + 1; end;if cor(2) < cor

19、(1)% Sm rs(i, 2) = rs(i, 2) + 1;end;if cor(3) > cor(1)% R-m rs(i, 3) = rs(i, 3) + 1;end;if cor(3) < cor(1)% S-m rs(i, 4) = rs(i, 4) + 1;end;end;% 對待檢測圖像所有像素應用正翻轉stg = fpos(stg, ones(sample_len, 1);% 對待檢測圖像應用非負和非正翻轉,統(tǒng)計翻轉前后的空間相關性i = 2;for j = 1 : m tmp = stg(j - 1) * 4 + 1 : j * 4); cor(1) = Spa

20、ceCor(tmp); cor(2) = SpaceCor(fpos(tmp, M); cor(3) = SpaceCor(fneg(tmp, M);if cor(2) > cor(1)% Rm rs(i, 1) = rs(i, 1) + 1; end;if cor(2) < cor(1)% Sm rs(i, 2) = rs(i, 2) + 1;end;if cor(3) > cor(1)% R-m rs(i, 3) = rs(i, 3) + 1;end;if cor(3) < cor(1)% S-m rs(i, 4) = rs(i, 4) + 1;end;end;rs

21、 = rs / m;% J. Fridrih方法% d0 = Rm(p/2)-Sm(p/2), d1=Rm(1-p/2)-Sm(1-p/2)dpz = rs(1, 1) - rs(1, 2); dpo = rs(2, 1) - rs(2, 2);% d-0 = R-m(p/2)-S-m(p/2), d-1=R-m(1-p/2)-S-m(1-p/2)dnz = rs(1, 3) - rs(1, 4); dno = rs(2, 3) - rs(2, 4);P = 2.5 * 1e-2; %設定門限值,對于RS分析一般為2%-3%if dnz > 0 && dpo > 0 %用于判斷Rm是否大于Sm,R-m

溫馨提示

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

評論

0/150

提交評論