日期:2008.04.30 Wed.
版本:1
備註:1.尚有一些文句不是很通順,尚有一些圖片未附加,尚有一些細
節未寫詳細,請先視為草稿做閱讀,之後盡快修改。
2.2-5的問題與討論暫時先將問題無修飾全盤貼出,討論尚未撰
寫。
標題:2-1 研究動機ˋ背景及目的
2-2 論文簡介
(Detecting Steganographic Content on the Internet)
2-3 隱藏方法
2-3-1 JSteg
2-3-2 JPHide
2-3-3 OutGuess
2-4 破解方法
2-4-1 JSteg Detection
2-4-2 JPHide Detection
2-4-3 OutGuess Detection
2-5 問題與討論
內容:
2-1 研究動機ˋ背景及目的
自古以來秘密通訊在許多事證當中顯示,人們在軍事等方面有它的使用需求在。過去古希臘時代在頭皮上刻機密訊息,藉以毛髮遮避而讓人無從察覺。現今網路資訊發達,網路上頻繁流通的圖片、聲音等媒體也成了新一代秘密通訊的媒介。其中從秘密通訊研究中細分出的一門學問即是隱藏學(steganography)。最初接觸到隱藏學是在二年級的資訊隱藏選修課程中,課程是以圖片做為研究的素材,先針對格式較易為人能理解的GIF圖片格式,以分析bit plane為起始,循序漸進慢慢將秘密訊息嵌入。就在聽過一些有趣的例子與相關課程的學習這樣的背景下,進而激發出我們研究的興趣。而此研究的共通目的不外乎是找出更為人所無法偵測的隱藏方法,亦或是找出隱藏方法的缺失,我們的研究也期望針對目前流通率廣泛的JPEG圖片格式,做過去發表過的方法的研究與自身的發想。
2-2 論文簡介
這篇論文[1]是針對JSteg、JPHide、OutGuess這三個隱藏系統提出一個自動偵測架構,這個自動偵測架構包含從網際網路獲得圖片與偵測有無隱藏訊息兩部分。分析來源是ebay拍賣網站上的兩百萬張圖片與USENET網站上的一百萬張。在提出偵測架構前先簡介這三個隱藏系統的隱藏方法與偵測方式。
2-3 隱藏方法
2-3-1 JSteg
此系統是將欲隱藏的資料嵌入[2]至DCT係數[3],至於挑選哪幾個DCT係數來藏資料,這裡是從圖片的開頭開始連續藏,即將隱藏資料依序嵌入至第一個DCT係數、第二個DCT係數、第三個DCT係數……。
2-3-2 JPHide
此系統會先將欲隱藏的資料加密(在此先以隱藏概念為重,暫不討論如何加密。),再將欲隱藏的資料嵌入至DCT係數。有別於前面所敘述的JSteg,這裡不是從圖片開頭循序挑選DCT係數。挑選方法如下所述:
1. 將幾個DCT係數組成一個class,如此整張圖會有很多class。
2.一個固定的table定義各個class之間的順序。
3.依table裡定義的順序,順序在前的class裡的DCT係數優先被嵌入資料。
4.class裡的DCT未必全部挑選,是依PRNG[4]決定挑選或跳過。
特別注意的是這裡是對所有的DCT係數做處理,不因欲隱藏的資料量少而只針對少部分的DCT係數。
2-3-3 OutGuess
此系統是將欲隱藏的資料嵌入至DCT係數,使用PRNG挑選DCT係數來嵌入欲隱藏的資料。
2-4 破解方法
2-4-1 JSteg Detection
使用x^2-test。
2-4-2 JPHide Detection
使用x^2-test,但在計算x^2-test的機率前需先將DCT係數重置成所定義的順序。x^2-test對於JPHide有兩種例外,一是因為JPHide對DCT係數值為-1、0、1的有特殊處理,所以這三種係數無法被x^2-test所偵測。二是JPHide未必是將欲隱藏的資料嵌入LSB,也有可能是second-LSB[5],此種情況x^2-test也無法偵測。
2-4-3 OutGuess Detection
由於OutGuess是使用PRNG挑選DCT係數,所以使用x^2-test偵測也無法像JSteg一樣機率過高的會集中在圖片開端。進而使用extended x^2-test。而extended x^2-test的方法敘述如下:
1.定義一個固定的樣本數。
2.該樣本數裡的數值偵測完後,移動1%的位置,再重新針對在該樣本數裡的數值做偵測。
3.不是找數值相鄰的一對DCT係數算平均,取而代之的是毫無關係的兩DCT係數算平均。
2-5 問題與討論
以下是本篇論文的相關問題與討論。
1.JSteg在藏東西時沒有使用亂數選擇embed的位置(has no random bit selection?)
2.其中提到了"The Hunting of the Snark"has been bzip2似乎不會被X-test偵測到而JSteg會?
3.JSteg-Shell is a Windows user interface to JSteg意思是有不同於Jsteg的介面來發展?之後又提到了RC4(stream cipher),我的見解是Jsteg-Shell是套裝軟體,而RC4則是讓使用者設定的Key,傳訊者與收訊者擁有Key之類的。
4.論文中它說JSteg所選擇用來隱藏的Bit不是隨機的,而是藏在圖片的一開始,是不是就藏資料的時候都是從圖片的一開始開始藏直到所要藏的資料藏完?
5.有點搞不清楚JSteg 和 Jsteg-Shell 因為它在論文中說它是有關JSteg 在Windows的使用者介面,但它具有加密 還有壓縮,那是不是 JSteg and Jsteg-Shell 是兩個不同的方法?
6.A pseudo random number generator determines if coefficients are skipped. 這句話說隨機的數字產生器決定被忽略的係數?這句話是什麼意思?為什麼係數要被忽略?
7."跳過的機率取決於隱藏資訊的大小與已隱藏的bit數。"不知道為什麼?
8."also switch to a mode where the second-least significant bits are modified."想知道這句話是在說什麼樣的情境。
[1] Detecting Steganographic Content on the Internet, published by Niels Provos and Peter Honeyman.
[2] 舉一個嵌入的例子是:若欲隱藏的資料是1,則將要被嵌入機密訊息的數值的LSB(least-significant-bit)則修改為1。
[3] JPEG邊碼流程中的離散餘弦轉換所產生的係數,這裡所提到的DCT係數是特指已量化過的。
[4] PRNG(pseudo-random-number-generator),隨機亂數產生器。
[5]
2008年4月29日 星期二
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言