密碼,不只是你打開手機時輸入的那幾個數字,它還關系到你銀行里的存款、電腦里的裸照,甚至,世界和平。
電影《模仿游戲》(The Imitation Game)講述的就是關于著名密碼系統恩尼格瑪(Enigma)的故事。這里不討論電影中情節的真實性,但二戰時納粹德國正是利用了這套密碼系統,隱秘而高效地傳遞著軍事情報。恩尼格瑪的最終破譯成功地扭轉了戰局。人們普遍認為,它的破譯使盟軍在西歐的勝利提早了兩年。
電影《模仿游戲》的海報。圖片來源:wikipedia
一直以來,設計和破解密碼都是人類的專利。然而隨著密碼學理論的提升與計算機能力的增強,現代的密碼變得越來越復雜,人們開始尋求讓機器替代人類的辦法。不過這就涉及到一個問題:用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需要自己想辦法猜測信息的內容。
方框分別代表著三個獨立的神經網絡,P是明文,K是密鑰,C是密文,PBob和PEve分別是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解密信息的錯誤率隨實驗次數的變化曲線。橫軸是訓練次數,縱軸是錯誤的字節數。紅線與綠線分別代表著Bob與Eve錯誤字節數的變化情況。在進行到10000次左右的時候,Bob迷之反擊了Eve。
訓練剛開始的時候,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生成的公鑰。公鑰是由密鑰按照一定規則生成的,它包含了密鑰的部分信息。
與之前的研究相比,該結構中多了公鑰,Alice、Bob與Eve都能接收到該公鑰。
經過同樣的訓練后,研究者們得到了非對稱加密模型的解密準確率。這次的保密效果沒有預想中的好,測試結果也比對稱加密模型更難解讀。在絕大多數的測試中,Eve的錯誤字節都在8以下,甚至與Bob的錯誤率相當。也就是說在非對稱加密模型中,Eve幾乎總能竊取到Alice和Bob的秘密信息。下圖展示的是一個保密效果較好(也就是Eve錯誤率較高)的測試結果,圖中Eve的錯誤字節數也下降到了7:
Bob和Eve解密信息的錯誤率隨實驗次數的變化曲線(非對稱),即使在保密效果較好的情況下,Eve仍能獲取少量信息。
這個結果說明,將對稱模型改為非對稱加密模型對于對抗神經網絡的訓練結果有著很大的影響。對于這樣的變化,研究員們計劃通過兩種途徑來增強在非對稱模型下Alice的保密效果,分別是使用新的神經網絡或者是新穎的訓練方式。但進一步的研究將會如何進行,我們還要等待谷歌大腦的新論文。
除了更換保密模型,研究員還將對稱模型中明文和密鑰的數據位數由16位變成32位以及64位。位數變化后測試的結果與原來的結果是相同的,即Alice發出的信息依然能夠被很好的保護起來。這就說明該對抗神經網絡能夠加密更多的信息。如果擴展到128位、256位,甚至成千上萬位呢?如果結果依然相同,那么Alice的加密能力就有希望用于海量數據的加密與保護。
在這里我們不禁要問,在對稱模型下,只用“0”和“1”思考的神經網絡為何能夠表現的如此優秀。
遺憾的是我現在無法給出答案。目前所有這方面的研究中對此并有沒有很明確地解釋??梢哉f神經網絡對于科學家們來講依舊是一種難解釋的“黑箱模型”。對于現在的神經網絡來說,尚缺乏一套完整系統的理論指導。在神經網絡研究快速發展起來之前,我們還需要更多像谷歌大腦這樣的探索。
為什么要讓機器學習數據加密?
你是否還記得阿爾法圍棋(AlphaGo)和它的升級版“大師”(Master)在圍棋界攪起的血雨腥風?我們暫且不談論阿爾法圍棋的框架結構,只是簡單地說說它對我們的影響。阿爾法圍棋在對弈的過程中會落下與我們固有思想不同的棋子,這種機器的“思維”在一定程度上會給我們提供不一樣的思考方式,幫助我們更好地探究圍棋的技巧。
谷歌大腦的這次新穎且大膽的研究則是一次密碼學中的嘗試,期待著機器的思維能夠為傳統的信息加密技術提供新穎的想法。在訓練神經網絡的過程中,研究人員并沒有將密碼學相關的算法放進模型中,而是通過神經網絡之間的對抗,讓Alice自己獲得了高超的加密能力。當然這并不是說我們已經能拋開密碼學,轉而依賴神經網絡的自身學習能力了??紤]到神經網絡的安全性與穩定性,Alice的“密碼術”還不能立刻用于生活中的信息加密。但是另一方面,一旦我們能夠穩定的使用神經網絡對數據進行加密且確保加密內容難以被破解,便可以將其利用在日常的信息加密中,甚至用于國家安全信息的保護。
也許,機器密碼術的時代已經不遠了。
1024你懂的国产日韩欧美_亚洲欧美色一区二区三区_久久五月丁香合缴情网_99爱之精品网站
責任編輯:韓希宇
免責聲明:
中國電子銀行網發布的專欄、投稿以及征文相關文章,其文字、圖片、視頻均來源于作者投稿或轉載自相關作品方;如涉及未經許可使用作品的問題,請您優先聯系我們(聯系郵箱:cebnet@cfca.com.cn,電話:400-880-9888),我們會第一時間核實,謝謝配合。