2007年3月28日 星期三

Week 5: S-Tools Steganalysis

本週課程主題有二:
1. 探討如何寫程式判斷一張黑白影像是屬於 random pattern。

 基本上, 位元平面(bit-plane) 如果看起來是 random 的, 兩兩相鄰的值為相同的機率之期望值為 0.5。

2. 探討 S-Tools 的破解方式。

關於 S-Tools 的破解, 延伸閱讀資料為:
針對調色盤影像的快速隱藏分析技術

S-Tools 最大的缺點就是將調色盤修改的非常不自然, 而露出破綻。因此, 下週我們將探討不修改調色盤的嵌入技術。請同學先思考如何將訊息嵌入到索引值中。

2007年3月21日 星期三

Week 4: Visual Attack

不少同學討論到是否可以將影像的最後一個位元抽取出來, 拼湊成一張黑白影像, 如果這張影像看起來有些不尋常, 就可以斷定這是一張嵌有機密訊息的偽裝影像(stego-image)了。因此, 我們介紹了 Andres Westfeld 在 IHW99 論文 "Attacks on Steganographic System" 所提出的視覺攻擊法(visual attack)。

所謂的視覺攻擊法乃是將機密訊息可能隱藏的位置的二元值抽取出來, 依其相關位置組成一個位元平面, 然後是用人類視覺來判斷是否有機密訊息隱藏其中。

2007年3月14日 星期三

Week 3: S-Tools Steganalysis

今天的主題延續上週關於 S-Tools 隱藏軟體的討論, 探討如何從修改過後的調色盤破解這個隱藏軟體(steganographic tool)。我們提供一個可以讀取 GIF 影像調色盤的工具給同學, 讓同學可以自行去分析S-Tools 所產生的 GIF 偽裝影像(stego-images), 希望同學可以找出一個演算法, 破解 S-Tools。
A Steganalytic Tool for S-Tools

在課程中, 我們曾經聊到一位攝影大師的故事, 這是我從下列文章看來的: 為何你的相機不重要 - 給想要拍出好作品的攝影同好。這篇文章雖然和課程不太相關, 不過文章主題倒是值得一讀, 同學可以作為延伸閱讀的題材。

2007年3月7日 星期三

Week 2: S-Tools

S-Tools
今天的課程主題是 S-Tools Exploring, 請同學自行探索 S-Tools 這個軟體, 然後將探索結果寫到部落格中, 第三節課則是分享大家的探索結果。

S-Tools 可以將訊息嵌入到儲存為 GIF 格式的影像之中。GIF 格式屬於調色盤類型(palette-based format)影像資料。一張高品質的全彩影像其顏色總數與像素總數的比例, 通常至少為1:2。這麼多的顏色要轉換成 GIF 調色盤影像模式, 必須從中選出 256 個代表顏色出來, 採用分群法(clustering) 的技術, 將這些顏色分成不同的 256 群, 然後在每一群估算一個顏色為代表。將這 256 個代表色放到調色盤中, 每個像素的顏色被轉換成調色盤的索引值 (index)。最後, 再針對這些索引值, 使用 LZW 壓縮演算法進行壓縮, 達到影像壓縮的目的。

調色盤類型的影像, 機密訊息最早是藏在調色盤本身的色彩值或其次序上, 但受限於所能隱藏的資訊量有限, 因此許多研究者便陸續發展出容量更高, 偽裝影像品質更好的隱藏技術。

S-Tools 是最早被開發出來, 針對調色盤類型影像所開發出來的軟體, 最新版本為V4.00。早期的版本採用的嵌入技術非常簡單。首先, 將影像從 256 色降到 32 色, 然後將二元機密訊息嵌入影像中每個像素 R, G, B 三個顏色的最低位元, 所以一個像素可嵌入 3 個位元。由於調色盤中每個色彩的 R, G, B 最低位元可能因為嵌入機密訊息而改變, 因此每個色彩最多會衍生出 8 個相近的色彩, 原本為 32 色的調色盤, 最多將衍生出 256 個色彩總數, 滿足了調色盤類型影像色彩總數不可超過 256的限制。

這個方法的缺點就是影像的調色盤被修改的非常不自然, N. Johnson 與 S. Jajodia 發表在 1998 年IHW 的論文中指出, 透過對每張影像的調色盤色彩亮度(luminance) 做簡單的排序分析, 被嵌入機密訊息的影像, 調色盤的色彩會形成 32 個群集, 這是一般自然影像所沒有的特徵。

S-Tools 降低影像的顏色總數, 也同時降低了影像品質。為了改善這項缺失, S-Tools 的作者根據 P. Heckbert 的論文, 在S-Tools V4.0 提供了進階選項, 讓使用者設定降低顏色的參數設定, 可以多少彌補一些這方面的缺憾。由於因嵌入產生的顏色是和所嵌入機密訊息為何息息相關的, 8 種色彩並不一定會完全出現在偽裝影像中。換句話說, 偽裝影像的顏色總數(以 Cs 表示), 會少於 256。這種情況在嵌入少量的機密訊息時, 尤其明顯 (Cs << 256)。因此, S-Tools V4.00 版本並不會直接將顏色降到 32 色, 而是會隨著機密訊息量而調整出一個最理想的顏色數, 整個調整過程會顯示在 S-Tools 的 Actions 視窗中。當然, 這樣做會增加嵌入程序的執行時間, 不過卻可以改善為偽裝影像的品質。值得一提的是執行時間並不是使用者所最關切的, 一般使用者所關心的是所產生出來的偽裝影像品質是否可以接受。

2007年3月1日 星期四

Week 1: What's Information Hiding?

第一週的課程主題我設定的是讓同學對 Information Hiding 領域有初步的概念。因此, 第一節課說明完課程進行方式後, 我請同學自己上網查看看這們課有沒有合適的教科書可以用, 然後在第二節課進行討論。

第二堂課, 我們用 information hiding 當關鍵字, 從 Google 搜尋Fabien A. P. Petitcolas 的網頁中提到 The first book on information hiding techniques..., 因此, 我們就從這個網頁為起點, 開始探討什麼是 Information Hiding ?

在查詢的過程中, 我發現 Google 也提供了網頁翻譯的服務, 因此我們也嘗試讓 Google 直接翻譯網頁, 然後再對照下列原文, 並解釋真正的意涵給同學聽。
Until recently, information hiding techniques received very much less attention from the research community and from industry than cryptography. This situation is, however, changing rapidly and the first academic conference on this topic was organized in 1996. The main driving force is concern over protecting copyright; as audio, video and other works become available in digital form, the ease with which perfect copies can be made may lead to large-scale unauthorized copying, and this is of great concern to the music, film, book and software publishing industries. At the same time, moves by various governments to restrict the availability of encryption services have motivated people to study methods by which private messages can be embedded in seemingly innocuous cover messages.
同學必須體認要學習新科技、新技術, 就一定要讓自己習慣閱讀原文, 剛開始起頭一定很痛苦, 但只要堅持下去, 痛苦就會慢慢舒緩, 甚至消失!

從上述的文章中, 我們延伸討論到的專有名詞如下:
1. cryptography & encryption
2. copyright protection
3. digital form
4. perfect copy
5. embedding
6. innocuous cover message
7. steganography

除此, 我們還聊到預計 3 月 9 日在台灣上映的 "300壯士: 斯巴達的逆襲" 電影, 就是歷史上記載最早使用隱藏技術來傳遞訊息的史實