更高階的藏檔案法:數碼隱寫術

類別: 新奇

之前我們提到過怎樣把檔案藏在圖片裡怎樣往音訊裡藏圖片這兩種方法。

前一種弱爆了,僅僅只是把圖片壓縮包合體一下;後一種太過麻煩,還藏不了複雜的圖,而且影象的還原度並不高。今天我們來介紹一種高階一些的方法:數碼隱寫。

更高階的藏檔案法:數碼隱寫術

上面這張圖就是一張很有內涵的超載雞(順帶一提搬到雲伺服器之後大家沒見過超載頁面了吧,是不是很想它?),裡面藏了……嘿嘿我先不說,看看有沒有同學會去解密。

先解釋一下原理:圖片裡每個畫素是由紅綠藍三色組成的,每色分別有8位元的位置存放資料,然而它們用不了這麼多空間:紅佔5位元,綠是6位元,藍也是5位元,因此每個畫素我們都能再多塞3+2+3=8個位元(1位元組)的資料進去。說到這裡你大概也明白了,沒錯,我們要做的就是把需要隱藏的檔案拆散,塞進這些沒有被使用的空間裡去。


這段就是用於解碼的Ruby程式碼,執行之前請確保你安裝了ImageMagick、cURL、mplayer以及Ruby:

執行以後就會出現一個3gp檔案。“3gp”絕對不是三級片的意思,這我會隨便告訴你麼?

同時也附上加密用的程式碼,這段比較長所以我就不貼出來了,要的同學點這裡下載

[ivanchaos via Chris McKenzie's blog]

更高階的藏檔案法:數碼隱寫術原文請看這裡

推薦文章