微軟遭打臉:號稱圖像加密永不可破解,結(jié)果被MIT碩士逆向還原
本文經(jīng)AI新媒體量子位(公眾號ID:QbitAI)授權(quán)轉(zhuǎn)載,轉(zhuǎn)載請聯(lián)系出處。
微軟號稱“永不會被逆向”的圖像加密算法,現(xiàn)在被MIT一位碩士小哥輕松破解了。
只用幾行代碼,原本被加密為一串?dāng)?shù)字的圖片便“原形畢露”,可以看清其大致輪廓。
要知道,谷歌、Facebook、Twitter等大平臺對圖像加密,用的都是微軟這一方法。
如今這么輕松就能逆向?讓人細(xì)思極恐啊。

而無獨有偶,此前蘋果號稱不會被逆向的圖像加密算法,也曾被“破解”。
前不久,F(xiàn)acebook搞出了讓用戶上傳果照保護(hù)隱私的“清奇方法”,用到的也是類似原理。
這不禁讓人深思,F(xiàn)acebook上傳的果照,還安全嗎……
目前這一方法已經(jīng)在GitHub上開源。
利用泄露編譯碼破解
小哥破解的是微軟在2009年時提出的圖像加密算法PhotoDNA,是業(yè)內(nèi)最具代表性、最早出現(xiàn)的技術(shù)之一。
這一方法是微軟與達(dá)特茅斯學(xué)院Hany Farid教授共同研發(fā),以識別刪除網(wǎng)絡(luò)上流傳的兒童受害的照片。

通過將圖片數(shù)據(jù)打亂混合、重新創(chuàng)建一個哈希值(hash values),它可以給每張照片匹配一個獨特的“數(shù)字指紋”。
由此,系統(tǒng)只需將已經(jīng)標(biāo)記為兒童被侵害圖片的哈希值與其他圖片的值對比,一旦找到相同的數(shù)字串,便可判別其為非法圖片。
這種手段一方面可以很好保護(hù)用戶的隱私,同時還能快速甄別出網(wǎng)絡(luò)上流傳的違規(guī)圖片。
但其關(guān)鍵就在于:該方法不可逆向,否則所有圖片信息其實都在“裸奔”。
為此,微軟一直未透露PhotoDNA的算法細(xì)節(jié)。
不過隨著前段時間蘋果NeuralHash算法被逆向,一個可計算PhotoDNA哈希值的編譯庫也被泄露了。
在此基礎(chǔ)上,MIT的這位小哥提出了名為“Ribosome (核糖體)”的逆向方法。
它將PhotoDNA看作一個黑盒,然后用機(jī)器學(xué)習(xí)的方法攻擊哈希函數(shù)。
因為編譯庫已經(jīng)被泄露,所以可以生成圖像與哈希值對應(yīng)的數(shù)據(jù)集。
在這一數(shù)據(jù)集上訓(xùn)練神經(jīng)網(wǎng)絡(luò)后,該方法便能根據(jù)哈希值來逆向圖像了。
小哥表示,PhotoDNA的哈希值是144元素的字節(jié)向量,他使用了類似于DCGAN和Fast Style Transfer的神經(jīng)網(wǎng)絡(luò),在縮小卷積步長后使用殘差塊,從而轉(zhuǎn)換出100×100的圖像來。
在開源項目中,小哥已經(jīng)上傳了4個預(yù)訓(xùn)練模型。
現(xiàn)在只需通過一行訓(xùn)練命令,就能實現(xiàn)從哈希值到圖像的轉(zhuǎn)換。
python infer.py [--model MODEL] [--output OUTPUT] hash
具體結(jié)果如何?
小哥在不同數(shù)據(jù)集上都試驗了一下,可以看出大部分情況下都能還原出圖像輪廓。

而且先驗越好,結(jié)果就會越好。比如在CelebA人臉數(shù)據(jù)集中,還原人臉的效果明顯最好(第二行第一個),而它在還原別的圖像時,也會傾向于給出類似于人像的結(jié)果(如第一行第一個)。
不過此方法也有失敗的時候,比如Reddit數(shù)據(jù)集中,有些生成圖像會存在偽影。
One More Thing
事實上,除了微軟之外,還有不少科技巨頭都在用哈希算法來加密圖像。
比如我們前文提到的蘋果。
前段時間,他們推出了一種叫做NeuralHash的加密技術(shù)來遠(yuǎn)程掃描用戶照片,以此來控制色情、虐童照片的傳播。
彼時蘋果一再強(qiáng)調(diào)該技術(shù)的安全性和隱私性。
但是不到半個月的時間,該方法就被一位程序員破解,還被另一位英特爾的工程師發(fā)現(xiàn)了bug。

前段時間,Facebook聲稱要讓用戶上傳果照保護(hù)隱私,用到的也是這種方法。
Facebook表示,他們會將你自己上傳果照的哈希值標(biāo)記,如果在網(wǎng)上發(fā)現(xiàn)了相同的數(shù)值,就會對該圖片做刪除處理。
但隨著這類方法不斷被成功逆向,其安全系數(shù)或許還有待人們考證。
網(wǎng)友們還開了個腦洞,認(rèn)為Ribosome輸出的結(jié)果足以再用在分辨率提升的模型上。

難道說還原高清圖像也不是難題了???
不過,大家馬上想到此前曾把奧巴馬的低分辨率照片還原成白人面孔的算法。

嗯,這么看來,從哈希值得到原畫圖像,似乎還無法實現(xiàn)(doge)。
所以這一波破解等于是泄露,但沒有完全露?