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 視窗中。當然, 這樣做會增加嵌入程序的執行時間, 不過卻可以改善為偽裝影像的品質。值得一提的是執行時間並不是使用者所最關切的, 一般使用者所關心的是所產生出來的偽裝影像品質是否可以接受。

沒有留言: