AI已殺入密碼界:密碼攻堅不再是人類的專利!
密碼,不只是你打開手機時輸入的那幾個數字,它還關係到你銀行里的存款、電腦里的裸照,甚至,世界和平。
電影《模仿遊戲》(The Imitation Game)講述的就是關於著名密碼系統恩尼格瑪(Enigma)的故事。這裡不討論電影中情節的真實性,但二戰時納粹德國正是利用了這套密碼系統,隱秘而高效地傳遞著軍事情報。恩尼格瑪的最終破譯成功地扭轉了戰局。人們普遍認為,它的破譯使盟軍在西歐的勝利提早了兩年。
一直以來,設計和破解密碼都是人類的專利。然而隨著密碼學理論的提升與計算機能力的增強,現代的密碼變得越來越複雜,人們開始尋求讓機器替代人類的辦法。不過這就涉及到一個問題:用0和1思考的「機器大腦」能學會對信息進行加密嗎?
在谷歌大腦(Google Brain)的最新的研究成果《讓對抗神經網路學習保護通信》(Learningto Protect Communications with Adversarial Neural Cryptography)中,人們就試圖教會機器加密與解密信息[1]。這次,思考密碼術的不再是人類的大腦,而是「神經網路」與生「成對抗網路」(Generative Adversarial Network)結合而成的機器之「腦」。
神經網路,生成對抗網路與密碼術
神經網路全稱人工神經網路,是一種模仿動物神經系統結構和功能的計算模型。在經歷過歷史中的幾度沉浮後,如今它已成為科研界與工業界的新寵,在人工智慧及相關領域中炙手可熱。
神經網路由大量的「感知機」(Perceptron)相互連接構成。感知機類似於生物神經系統中的神經元,是神經網路中最基本的單元。
神經網路並非生來就具備強大的功能,它也需要訓練才能掌握技能。比如我們希望神經網路通過西瓜的外形判斷瓜的甜度,一開始神經網路並不懂如何去判斷,這時就需要分別把西瓜的外形和對應的甜度分別輸入神經網路,以訓練它去學習兩者之間的對應關係。訓練神經網路的過程實際上就是通過學習數據來調整每一個感知機參數的過程。神經網路讀取數據樣本後,感知機們會先根據現有模型參數進行計算,然後把輸出的值與真實值進行比較,再將兩者的差距反饋回去,以調整參數。經過反覆多次「計算-比對-反饋-調整」的循環後,神經網路就能夠準確地判斷瓜甜還是不甜了。
生成對抗網路
很多時候訓練數據的真實結果信息難以獲得——比如不能把每個瓜切開嘗嘗。生成對抗網路利用模塊間的對抗,巧妙地避開了這個問題。
生成對抗網路中主要有兩個模塊:負責生成的模塊G和負責判別的模塊D。我們用模仿畫作的例子來說明兩個模塊的作用。G是一位初出茅廬的畫家,想要通過模仿名畫的來提升自身能力。在每次模仿名畫之後,G畫家會將自己的贗品與真品一同送給鑒定師D。D的主要任務便是鑒定送來的畫哪一幅是真品哪一幅是贗品。剛開始,G畫家的水平一般,D鑒定師能夠很輕鬆的鑒定出真偽。隨著G畫家的模仿水平的提高,D鑒定師無法分辨真偽。這個時候,我們便可以說G畫家的模仿水平相當的優秀了。這也是我們想要的結果,模仿能力卓絕的生成模塊G。
人類的密碼術
說完網路,再說說密碼術。在密碼術中,能夠直接代表原文含義的信息稱為明文;經過加密處理之後隱藏原文含義的信息稱為密文。加密與解密便是明文與密文相互轉換的過程,而密鑰是用來加密與解密的工具。密鑰好比一本雙語字典,你既可以用它把明文翻譯成密文,也可以通過它查找密文所對應的明文是什麼。在信息保密過程中,密鑰的安全格外重要。因為找到秘鑰就是找到了加密和解密的方法,密碼也就迎刃而解。早期的密碼設計有替換法與位移法。替換法就是有規律的使用一組字母來代替原有字母,例如每個字母用上一個字母取代,「abc」替換為「zab」;移位法就是將字母順序重新排列,例如「Key」變成「yeK」。這樣的密碼可以分別使用窮舉法和統計法進行破解。後來密碼的書寫發生了手寫到機器書寫的轉變,這也使得密碼的編寫變得千變萬化。
不過,這是人類的密碼術。作為機器之腦的神經網路也能「想」出類似的技術對信息進行加密嗎?
機器能學會加密信息嗎?
回到谷歌大腦最新的研究上。研究者向神經網路A中投入明文和密鑰數據,它的計算結果會作為密文,與密鑰一起交給另一個神經網路B,並由B進行解密。而A、B組成的生成對抗網路,則會試圖在對抗中使解密出的數據趨近原始明文。當然,整個過程中神經網路並不懂「明文」「密文」的概念,因為研究人員絲毫沒有向它們透露人類密碼術的相關知識。它們只知道自己收到了數據,又要輸出數據。研究者通過這樣的方式,探究神經網路能否自己「思考」出機器的密碼術來實現對信息加密、解密的功能。
實際操作中,研究者設計了一種通用的保密情況,叫做對稱加密模型。對稱加密是指溝通雙方有公共的密鑰,而竊聽者沒有。研究者在該模型中加入了三個獨立的神經網路模塊,分別取名為Alice、Bob和Eve。這三個神經網路模塊共同構成了對抗神經網路的主體。
我們可以把它們想像成是三個人:Alice想和Bob進行秘密溝通,而Eve想要竊取他們的通信。為了防止秘密被Eve知道,Alice制定了密鑰並共享給Bob。通信的時候,Alice首先通過密鑰將信息進行加密,然後將加密後的信息發送出去。這時Bob和Eve都能接收到信息,不同的是,Bob可以通過共享的密鑰對信息解密,而Eve需要自己想辦法猜測信息的內容。
如圖所示,K是Alice和Bob共享的密鑰,P便是要進行加密的信息。C是Alice轉換出的密文,它會被Eve和Bob收到並進行解密,兩人各自解密得到的結果則為PBob和PEve。研究者通過統計PBob和PEve中與P相同的數據有幾位來計算解密結果的準確性。
當然,我們希望PBob與P越接近越好,而PEve與P值差距越大越好。這表示通過Bob解密的信息是準確的,而竊聽者難以通過Eve得到被加密的信息。
基於以上這些設置,研究者開始對這個加密模型訓練。每一次的訓練過程中,神經網路Alice會接收到4096套K和P作為訓練樣本。K、P都是16位二進位數據,Bob和Eve輸出的解密文件也是16位二進位數據。通過統計每次訓練後Bob和Eve解密結果的與明文P的對應數位的數字,研究人員得到了如下圖的結果:
訓練剛開始的時候,Bob和Eve的錯誤位數都是8,對於一個16位的二進位文本來說,隨便生成的16位數字在概率上錯誤位數就是8——這時Bob和Eve都還沒有具備解密的能力。伴隨的神經網路之間的對抗,每個神經網路不斷的調整其中感知機參數的數值,Alice和Bob也逐漸獲得了極強的加密與解密能力。當迭代進行到7000次的時候,Bob預測明文的錯誤率大幅度的下滑。在15000次訓練之後,Bob預測的錯誤位數已經幾乎為0,而此時Eve的錯誤位數為仍徘徊在8左右。也就是說Eve的破解密碼的能力基本上仍然等於瞎猜,這時Alice發出的信息非常安全。
經過這樣的訓練後,研究人員得到了一個具有極強加密能力的神經網路Alice。雖然研究人員並沒有教給Alice任何密碼術的知識,但Alice已經在對抗中習得了保密信息的技巧。
在研究了對稱加密模型之後,研究者們還對非對稱的加密模型進行了研究。與對稱加密模型不同的是,這一次只有Bob擁有密鑰K,Alice和Eve擁有由K生成的公鑰。公鑰是由密鑰按照一定規則生成的,它包含了密鑰的部分信息。
經過同樣的訓練後,研究者們得到了非對稱加密模型的解密準確率。這次的保密效果沒有預想中的好,測試結果也比對稱加密模型更難解讀。在絕大多數的測試中,Eve的錯誤位元組都在8以下,甚至與Bob的錯誤率相當。也就是說在非對稱加密模型中,Eve幾乎總能竊取到Alice和Bob的秘密信息。下圖展示的是一個保密效果較好(也就是Eve錯誤率較高)的測試結果,圖中Eve的錯誤位元組數也下降到了7:
這個結果說明,將對稱模型改為非對稱加密模型對於對抗神經網路的訓練結果有著很大的影響。對於這樣的變化,研究員們計劃通過兩種途徑來增強在非對稱模型下Alice的保密效果,分別是使用新的神經網路或者是新穎的訓練方式。但進一步的研究將會如何進行,我們還要等待谷歌大腦的新論文。
除了更換保密模型,研究員還將對稱模型中明文和密鑰的數據位數由16位變成32位以及64位。位數變化後測試的結果與原來的結果是相同的,即Alice發出的信息依然能夠被很好的保護起來。這就說明該對抗神經網路能夠加密更多的信息。如果擴展到128位、256位,甚至成千上萬位呢?如果結果依然相同,那麼Alice的加密能力就有希望用于海量數據的加密與保護。
在這裡我們不禁要問,在對稱模型下,只用「0」和「1」思考的神經網路為何能夠表現的如此優秀。
遺憾的是我現在無法給出答案。目前所有這方面的研究中對此並有沒有很明確地解釋。可以說神經網路對於科學家們來講依舊是一種難解釋的「黑箱模型」。對於現在的神經網路來說,尚缺乏一套完整系統的理論指導。在神經網路研究快速發展起來之前,我們還需要更多像谷歌大腦這樣的探索。
為什麼要讓機器學習數據加密?
你是否還記得阿爾法圍棋(AlphaGo)和它的升級版「大師」(Master)在圍棋界攪起的血雨腥風?我們暫且不談論阿爾法圍棋的框架結構,只是簡單地說說它對我們的影響。阿爾法圍棋在對弈的過程中會落下與我們固有思想不同的棋子,這種機器的「思維」在一定程度上會給我們提供不一樣的思考方式,幫助我們更好地探究圍棋的技巧。
谷歌大腦的這次新穎且大膽的研究則是一次密碼學中的嘗試,期待著機器的思維能夠為傳統的信息加密技術提供新穎的想法。在訓練神經網路的過程中,研究人員並沒有將密碼學相關的演算法放進模型中,而是通過神經網路之間的對抗,讓Alice自己獲得了高超的加密能力。當然這並不是說我們已經能拋開密碼學,轉而依賴神經網路的自身學習能力了。考慮到神經網路的安全性與穩定性,Alice的「密碼術」還不能立刻用於生活中的信息加密。但是另一方面,一旦我們能夠穩定的使用神經網路對數據進行加密且確保加密內容難以被破解,便可以將其利用在日常的信息加密中,甚至用於國家安全信息的保護。
也許,機器密碼術的時代已經不遠了。
※什麼?我的CPA白考了?——機器人大舉殺入金融行業,眾多傳統職位將被替代
※你會去超市買衣服嗎?對標ZARA、MUJI,永輝殺入時尚戰局
※中葡股份:主力大資金殺入,散戶把握最佳良機!
※Anker又將殺入一個新領域,還引入了一位重磅股東
※A股將有大行情,大股東都增持了,散戶趁現在殺入,坐等飆漲!
※中國股市突迎三大利好:A股將有大行情,散戶滿倉殺入
※這個殺入NBA的汽修工人,站著就能將整個聯盟帽到哭!
※殺入敵陣,親手砍死一個敵人的皇帝是什麼畫風?
※莫雷強勢殺入保羅爭奪戰,火箭舍四核心為哈登爭冠添碼或得不償失
※此人是豪放派著名詩人,卻勇猛無比曾殺入孤身敵營斬殺叛徒
※炒股冠軍紅利,一旦出現這4大買入信號,散戶滿倉殺入分分鐘暴利
※重磅大事件:A股接下來要瘋了 下周散戶滿倉殺入!
※悟空舊部殺入天庭,結果反被一人誅殺殆盡
※三星殺入iPhone老家,為什麼蘋果在自己門口慘敗?
※雙節前利好公告:這四隻股可長線持續關注!空倉者殺入,不再猶豫!
※該股主力資金瘋狂流入,你還蒙在鼓裡?散戶重點關注滿倉殺入
※監管層發出收緊信號 菜鳥殺入ICO能否全身而退?
※此人是宋朝著名詩人:卻勇猛無比,曾孤身殺入敵營斬殺叛徒
※周末,A股緊急利好措施出台:下周各大遊資蠢蠢欲動,看好時機滿倉殺入!