0
不久前,雷鋒網宅客頻道編輯聽到一個消息,說是我們的老熟人阿里安全獵戶座實驗室的安全專家五達中選了世界著名黑客大會 Black Hat USA 2018 的一個議題,據說還是去碼神器什么的。
編輯想起用過很多次的一張“流量型圖片”:

如果這項技術真的存在,有些司機不需要靠想象力看片了。
不過,五達連連擺手,不是一個東東,你想多了。
原來,圖片或者視頻經打碼之后,許多信息已經丟失,目前也有超分辨率的方法進行恢復。但讓傳說中議題中選率只有20% 的黑客大會 Black Hat 青睞的是,五達提出了一項去除視頻水印的技術,他的理論很簡單,有一些服務提供商的水印可以被主動消除,如原創視頻作者可以在自己的視頻流中預置一個反向水印,抵消服務提供商的水印。讓議題評審團驚訝的是,幾乎誰都能想到的理論在他手中變成了工程化產品。
從另一個角度看,這也是一種看片神器,我們不用再忍受上面這種虐待眼睛的視頻了。
8 月 9 日深夜,五達在議題開講前兩小時,隔著一個太平洋和編輯探討了這個看片神器的神奇之處。

現在,沒點兒其他才藝傍身,都不好意思說自己是黑客。五達在清華上學時曾是樂團的一員,主要負責拉二胡,當然,現在換成了“敲鍵盤”。幾個月前,工作后分散到各地的團友們來了一次樂團聚會,五達相當重視這次重聚,拿著專業設備錄制了樂團的合奏表演視頻,為了內部分享更方便,五達將這個視頻上傳到了某視頻網站留存,結果精心制作的視頻卻被搬運到其他平臺,并被打上了不同平臺的水印。
前二胡演奏者、現任黑客五達秉承“追求完美”的藝術精神,覺得這事沖擊了自己的閾值,于是決定開始反擊。
他想出了兩種理論上存在的消除水印的技術:
1.預處理:在內容一側,預置一些反向水印,這樣傳上視頻平臺后,如果再被蓋上水印,就被擦掉了。
2.后處理:收到視頻之后,在用戶側設置一個客戶端,把水印擦掉。
預處理借鑒了通信領域“預失真”的概念:人為地加入一個特性與包括功放在內的系統非線性失真恰好相反的系統,進行互相補償,不存在穩定性問題,并有較大的頻帶寬度。
如圖所示,輸入信號在進入功率放大器前,通過使用預失真技術,在整個功率變化范圍內進行放大增益和相位變化的補償。如果這種預失真特性能夠隨功率放大器輸出功率的變化而變化,那么由溫度、電源電壓、管子老化等因素引起的性能變化就可以得到補償。

簡單來說,就是紅娘小五介紹小張和姑娘小王相親,小五自己判斷了下小王的心理預期,發現小張在某些點上不符合小王的預期,但經過了紅娘小五的包裝后,這些“不足”得到了“修正”,小王與小張一見面,小王對小張很滿意。
所以,五達要做的就是“紅娘”的工作,找出原始視頻像素點以及水印“Logo”像素點,兩者相減,就得出了一個可以修正的值。

[圖1]

[圖2]

[使用圖1和圖2提取出的高精度的、帶透明度信息的水印]

[預處理示意圖:原視頻-打上水印后的視頻-預先準備的補丁-兩相抵消后的視頻]
后處理技術則沒有這么復雜,它相當于已經把原視頻下載下來,已經知道原來視頻的像素點,所以即使視頻被打上了水印,還原一下就好。
通過五達的實驗,他發現,后處理消除水印的效果幾乎能到100%,但是預處理的優勢在于“未卜先知”式的實時處理,在處理速度和受眾體驗上,有不可比擬的優勢。
在上一個案例中,后處理的效果是這樣的:

在上面這個案例中,預處理和后處理效果差不多。但在其他案例中,預處理的效果和后處理的效果可能就有差別了。

[五達貢獻了自己的大頭照,演繹水印還原效果,第一排最右為預處理效果,第二排為后處理效果]

[在這種底色上打上 skype 的水印后,預處理和后處理效果差不多]

[在“五達”的大頭視頻上打上 skype 的水印后,預處理的結果上還是可以看到模糊的水印]
這衍生了第一個問題:水印的深淺與可被消除的效果有關,水印多深可被消除呢?
以不同的位置“姿勢”再來試幾次:打上預設水印-上傳到視頻平臺被覆蓋上水印-預處理效果VS后處理效果





看到上述對比,你一定發現了第二個問題——水印在不同的位置(色彩)上,預處理的效果不一樣?那么到底像素點如何決定預處理的“消除水印”效果?
為了回答上面兩個問題,下面進入公式階段,不要怕,五達認為,這是小升初的考試水平。
每個像素點的取值范圍是0-255,如果值=(0,0,0) ,則代表黑色,值=(255,255,255),則代表白色。
五達在提取logo像素點信息時,用到了一個公式:

[P’:預處理像素;P:原像素; X:提取的logo 的像素; α:提取的 logo 的像素的系數(代表水印的不透明度)]
通過計算,α 取值與可被還原的色彩區域的關聯如下:

簡單來說,就是視頻平臺強行加上的水印越不透明,那么原視頻的信息丟失得越多,使用預處理技術,水印可被消除的幾率越小。
再通過一番計算,五達給出了一個可以恢復的源頭像素點的取值范圍(127-255,127-255,127-255)。

左圖中沒有被標白的剩余色彩部分就是可以恢復的源頭像素點。也就是說,只要在這些區域打上的水印,大概率上可以經過預處理技術被消除。



“ 給大家一個建議,就是如果你是一個視頻的原創作者,并且你想要把這個視頻的水印通過預失真的方式抵消掉,你要怎么做,像上面這張圖一樣‘在天空之下’,你錄制的時候留出上面一片天,我把它稱之為‘天下錄’。”五達說。
如果打水印的視頻平臺對此不爽,要反制一把,可以怎么做?五達提出,這種“邪惡”的平臺完全可以用兩種疊加的透明度不一的水印覆蓋在一起。

“計算出來的結果如上圖所示,沒有交集,不管你選一個什么樣的顏色,都沒有辦法把這個圖片完全給抵消掉。要么可以把三角形全抵消掉,留下黑色的。要不就可以全用白的,把那個黑的…”
這種“邪惡的反制”,自己都感覺怕怕噠,五達思考了一夜,也沒想出“盡善盡美”的二次消除的好辦法。

甚至還會出現一種更可怕的情況。五達說:“如果我錄一個視頻,視頻的第一幀是這么預抵消的,我把這個視頻發到平臺上,這時用戶會以為我這個視頻是一張靜態圖片,用戶再一點,點開之后是視頻,但這個視頻的后續內容完全可以替換成其他內容。”
這意味著,一張看上去靜態的圖片下可能“包羅萬象”,黃賭毒、廣告等內容可以藏身其中。
技術原理闡述完畢,編輯心中還是有一個疑問。
比如,視頻原創者有時為了保護自己的權益,甚至和第一發布平臺合作,會主動在原視頻上打上水印。說白了,消除水印到底有沒有必要?
五達:“所以在這種情況下,我們應該提倡使用不可見水印技術,該有版權保護就用版權保護。國外的一些視頻網站上早就用上了這種現代化的視頻版權保護的手段,而不是我們這么粗暴,直接蓋上那么大一塊,別的網站轉載就蓋上更大的一塊,蓋來蓋去,用戶的體驗差。數字版權保護發展了幾十年,結果沒有人去用,反而去用這么惡心的辦法。”
唉,說起“蓋來蓋去”,還真有位皇帝是此惡習的集大成者:

不過,如五達所說,不可見的數字水印其實在專業領域早已不是什么新鮮技術,它不僅能夠幫助內容生產商追蹤盜版信息,甚至還在軍事情報戰領域發揮著作用。這種水印需要用信號處理的方法在數據中嵌入隱蔽標記(肉眼不可見),只有通過專用的檢測器或特殊方法才能提取出有效信息。

而離我們最近的生活體驗是,一些企業內網為了防止員工泄密。。。。或者通過不可見水印追蹤泄密者。
不追求更好的技術,強迫視頻原創者和用戶接受“蓋章”的極差的用戶體驗,讓黑客五達忍不了,在他心中,用戶應該有“覺醒”的意識,主動擁抱更好的變化。他相信,這也是 BlackHat 選擇讓他第三次站上這個舞臺分享研究成果的原因。
我問五達,這個成果是否會在阿里內部進化成商業化產品,他給出了一個否定的答案。
我再問他,這個研究接下來還會有其他進展嗎?他答,其實沒什么可做的了。
我不甘心,問:你對自己哪一項技術研究最滿意。
五達興奮地說:“我還真有一個。你再問一次,我鄭重地回答你。”
我:“五達老師,請問到目前為止,你對自己哪項研究最滿意,覺得做得最好?”
五達:“下一個。”
(五達引用了他的供應商前老板喬布斯的話)
我聽到了五達在電話那頭得意的笑聲。
--
如果你想獲取五達此次在Black Hat USA 2018上演講的完整 PPT 或是欣賞他所在樂團錄制的合奏視頻,歡迎關注雷鋒網宅客頻道的微信公眾號“宅客頻道”,回復“看片神器”即可下載。
雷鋒網注:部分信息參考自“我們都愛黑科技”。
雷峰網原創文章,未經授權禁止轉載。詳情見轉載須知。