天天看點

去 “馬賽克” 工具橫空出世, 一秒還原!

如果你認為将密碼或其他私密文本資料像素化就能保護它們不被窺見,那你真是太天真了,你的資訊并沒有你想象的那麼安全。像素化(也稱為馬賽克)是一種常用的手段,可以大幅降低圖像敏感區域的分辨率來隐藏資訊。

去 “馬賽克” 工具橫空出世, 一秒還原!

近年來馬賽克這項技術被廣泛使用,但它的好日子已經不多了,最近一個新型的人工智能工具“Depix”橫空出世,短短時間就在Github上标星15.5K,Github位址:

https://github.com/beurtschipper/

Depix的開發人員Sipke Mellema是一個資訊安全顧問,他表示:“我見過一些公司把内部檔案中的密碼像素化,沒有工具可以從這些圖像中恢複密碼,于是我建立了一個。”該工具适用于使用線性方框濾波器(linear box filter)建立的像素化圖像。

Depix的使用

要準備一個用于Depix處理的像素化文本序列,首先以單個矩形格式從截圖圖像中剪切相關的像素化塊,然後将帶有預期字元的De Bruijn序列粘貼到具有相同字型(文本大小、字型、顔色等)編輯器中。接下來,對序列進行截圖,最好使用之前的序列截圖,盡可能使用和像素化圖像相同的截圖工具。

最後,簡單地運作 python depix.py -p [pixelated rectangle image] -s [search sequence image] -o output.png

恢複之後的效果和原圖的對比結果:

去 “馬賽克” 工具橫空出世, 一秒還原!

但是,項目作者沒有選擇建立潛在字型的查找表,隻是簡單使用待處理字元的德布魯因序列,将其粘貼到相同的編輯器中,然後截圖。該截圖可以用作相似 block 的查找圖像,例如:

去 “馬賽克” 工具橫空出世, 一秒還原!

德布魯因序列包括待處理字元的所有雙字元組合。在以下測試圖像中,Depix算法無法找到(o)的一部分。這是因為在搜尋圖像中,搜尋block還包含下一個字母(「d」)的一部分,但在原始圖像中這裡有個空格。

去 “馬賽克” 工具橫空出世, 一秒還原!

不過對于大多數像素化的圖像,Depix都可以找個單個的比對結果,它假定這些都是正确的。然後将周圍的多個比對塊比對,然後再與馬賽克圖像相同的幾何距離進行比較。這些比對也被認為是正确的。

當正确的塊沒有更多的幾何比對後,它将直接輸出所有正确的塊。對于多比對塊,它輸出所有比對的平均值。它的輸出還遠遠不夠完美,但它的性能相當好。下圖顯示了一個帶有随機字元的測試圖像,大多數字元都可以正确破解出來。

去 “馬賽克” 工具橫空出世, 一秒還原!

Sipke Mellema還表示Depix技術類似于哈希破解,利用ECB的使用和已知明文攻擊的使用。他建議人們對于敏感資料還是盡量不要用Depix。