關於OutGuess的Embedding Process
整段文章中,最常使用的關鍵字為「redundant bits」,關於「redundant bits」,在老師的blog有一段文章如下:
『冗餘位元(redundant bits) 就是經過修改也不會在掩護媒體中產生會被偵測出來的品質下降現象(degrading)。』而OutGuess的理念就是將
機密訊息嵌入到Redundant Bits。寫在隱藏之前,作者提到了他將Embedding Process切割成兩個步驟:
1. Identification of redundant bits. (將redundant bits辨別出來)
2. The selection of bit in which the hidden information should be placed.(挑選適合放置隱藏訊息的地點)
關於切割成這兩個步驟的理由,老師的blog提到:
『切割成兩個步驟的好處是容易取代(easy replacement), 如果要將本篇論文提出的方法在別的資料格式中實作出來, 只要將 identification algorithm 換掉, 然後用新的選擇策略(selection strategy)即可。』也就是說,由於cover medium的並非只有JPEG這種格式,雖然本篇論文是以針對JPEG格式來撰寫的,切割成這兩個步驟的狀況下,只要修改一下演算法,也可在其他不同格式的cover medium實做OutGuess的理念。
3.1 Identification of Redundant Bits一份資料的redundant bits建立在cover medium的輸出格式上,不同格式的cover medium所能計算出的redundant bits不同。此外,也必須思考「cover medium在轉換成最終格式時的資料壓縮如何做到最低程度的修改。」
引用自老師的blog:
作者闡述了一個觀念, 用來嵌入機密訊息的冗餘位元通常和影像的儲存格式相關。整個嵌入程序自然也和輸出格式有關。通常壓縮程序也包含其中。要最小化對掩護媒體(cover- medium)的修改(modification), 必須具備有關冗餘位元的相關知識才做得到, 作者提到 OutGuess 實作了整個輸出影像的運算。在3.1的最後一段提到了:
A bit is locked when the bit has already been used to carry hidden information. This can occur when more than one message is hidden in the cover medium.
這段文字剛好是我長久以來的問題,「如果已經有人針對一個cover medium做了information hiding,但是有人並不知道這件事情,而繼續對同一個cover medium做information hiding的事情,那麼原本的訊息是會被修改掉,還是並存?」
這篇論文提到,他會將已經嵌入資料的部分上鎖,因此如果同一個cover medium都使用OutGuess隱藏訊息的狀況下,資料是有可能並存的(?)
3.2 Selection of Bits這小節主要是介紹如何挑選redundant bits。
該文章提到,在選擇redundant bits之前,OutGuess先將我們要隱藏的機密訊息用
RC4來進行加密,此外也使用
RC4的演算法來建立一個PRNG。
在隱藏機密訊息之前,OutGuess會先藏入一個32 state bits來做紀錄之用,其中16-bit用於紀錄亂數seed,另外16-bit用於紀錄隱藏訊息的長度。
關於Seed。
在計算出該cover medium的redundant bits後,將Seed丟入上述利用RC4所產生的PRNG之中,來挑選嵌入訊息的redundant bits的random offsets(隨機距離)。
問題:
在老師的blog中提到,經由文章中所提到的公式計算之後,嵌入的機密訊息的長度會被有效的控制在可嵌入空間的50%之內?
未完 - 待續 (?)