2010-07-10 59 views
2

在閱讀了關於使用Java/.NET的隱寫術的一些教程之後,我覺得你從祕密圖像抓取每個單獨的像素,然後將它放置在每個像素的最低位來自封面圖像的單個像素。一個關於隱寫在圖像編程方面的問題

我正確嗎?

+0

我假設你正在談論[Steganography](http://en.wikipedia.org/wiki/Steganography)? – 2010-07-10 14:11:37

+0

速記或隱寫?第一個是關於短手記錄,第二個關於隱藏數字圖像中的信息。 – Oded 2010-07-10 14:12:13

+0

[stenography] [steganography](http://www.thefreedictionary.com/steganography) – 2010-07-10 14:12:47

回答

1

Steganography是隱藏在另一個信息中的信息。這裏的目標是保持隱藏的信息。

這樣做的一種方法是通過將祕密存儲在每個像素的最低位來隱藏圖像中的祕密信息。 雖然這可能騙你小子哥哥是隱藏的信息,因爲一個非常貧窮的方式:

  • 任何人誰在乎知道它,所以就知道檢查的最低位。

  • 它改變了圖像的概率屬性,它會向另一個尋找'祕密'的人發出紅旗。例如,參見Stegdetect - 一種用於檢測圖像中隱寫內容的自動化工具。

更安全的隱寫形式可以採取寫一個筆記的形式,其中一些字母的位置包含祕密消息。 訣竅是使用隱寫術來隱藏電腦在分析(人類語言,符號,歌曲的意義或重要性)方面不好的東西。 位處理非常容易被計算機檢測到。

請記住在將祕密信息放入隱寫消息之前對其進行加密。這樣,如果他們發現消息,他們就不會知道你正在嘗試發送的內容,因爲如果有人正在調查消息,他們可能會誤認爲是大多數密碼從非隨機輸入(人類語言,圖像等)產生相當隨機的輸出隨機噪聲。

如果您想了解更多我們在此提供一些隱祕好論文:

0

是的,使用最低(冗餘/噪聲)位。

0

隱寫術實際上是關於數據隱藏,而不管數據是隱藏的,還是提供封面的東西都是圖片。任何具有足夠冗餘的數據格式都可以使用。 X86指令集就是一個很好的例子。其他地方包括文件系統的未使用部分。

你是正確的,在使用圖像來存儲隱藏的數據,低位顏色位是正確的地方來存儲它們。不過,我建議不要嘗試關聯圖像之間的像素。大多數圖像格式都會提供來自原始像素演示的某種壓縮。最好直接從文件系統讀取隱藏圖像的比特流,並將這些比特與主機圖像中的像素相關聯。這將需要較小的主機映像。