亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于seq2seq模型的深度學(xué)習(xí)密碼破譯方法*

        2019-10-09 05:22:50孫曉麗宋曉祥
        通信技術(shù) 2019年9期
        關(guān)鍵詞:模型

        孫曉麗,郭 艷,李 寧,宋曉祥

        (中國(guó)人民解放軍陸軍工程大學(xué),江蘇 南京 210007)

        0 引 言

        古希臘時(shí)期,人們嘗試使用簡(jiǎn)單的加密方法對(duì)信息進(jìn)行加密,以此來(lái)防止信息被竊取。隨著時(shí)代的進(jìn)步與發(fā)展,人們對(duì)個(gè)人信息的保密問(wèn)題變得越來(lái)越重視。密碼學(xué)以密碼通信的研究為目的,通過(guò)對(duì)傳輸信息進(jìn)行加密,防止第三方對(duì)信息的竊取[1]。密碼技術(shù)的多樣性為信息加密和信息安全提供了多樣選擇。密碼技術(shù)因其能夠在潛在威脅的環(huán)境中保證通信的安全獲得了更多關(guān)注,廣泛應(yīng)用于軍事通信保密、數(shù)據(jù)加密以及信息保密等方面。

        明文和密文是一組存在復(fù)雜映射關(guān)系的數(shù)據(jù)對(duì),密碼破譯是要找到密文所對(duì)應(yīng)的明文。神經(jīng)網(wǎng)絡(luò)的出現(xiàn)為密碼理論提供了全新的思路,促成了神經(jīng)密碼學(xué)的發(fā)展[1],同時(shí)神經(jīng)網(wǎng)絡(luò)也成為保密通信的一種新的實(shí)現(xiàn)途徑。傳統(tǒng)密碼破譯技術(shù)基于窮舉法、字典法等,需要大規(guī)模完全數(shù)據(jù)庫(kù)進(jìn)行嘗試實(shí)現(xiàn),需要耗費(fèi)大量的時(shí)間,效率低下。而基于神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)密碼破譯,規(guī)避了傳統(tǒng)密碼破譯方式的弊端。利用神經(jīng)網(wǎng)絡(luò)解決密碼破譯問(wèn)題的關(guān)鍵在于尋找一種合適的神經(jīng)網(wǎng)絡(luò)。

        文獻(xiàn)[2-3]使用簡(jiǎn)單BP神經(jīng)網(wǎng)絡(luò)分別對(duì)橢圓曲線密碼和公鑰密碼進(jìn)行破譯。文獻(xiàn)[4]提出了一種新的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)——生成式對(duì)抗網(wǎng)絡(luò)(GAN)。文獻(xiàn)[5]在此基礎(chǔ)上提出了一種新的模型——PassGAN,并將此網(wǎng)絡(luò)應(yīng)用于密碼猜測(cè)的問(wèn)題上,改變了利用傳統(tǒng)破譯工具進(jìn)行字典學(xué)習(xí)破譯的弊端。文獻(xiàn)[6]受CycleGAN的啟發(fā),提出了一種新的網(wǎng)絡(luò)——CipherGAN,并對(duì)vigerene密碼進(jìn)行破譯,取得了較好效果。以上幾種算法都證明所提模型在字符級(jí)密碼破譯方面有優(yōu)異效果,但GAN模型的超參數(shù)對(duì)模型效果有較大影響。因此,需要找到一個(gè)合適的網(wǎng)絡(luò),使其能夠高效、穩(wěn)定地實(shí)現(xiàn)密碼破譯。

        明文和密文是一組存在復(fù)雜映射關(guān)系的數(shù)據(jù)對(duì),通過(guò)對(duì)其學(xué)習(xí)得到映射關(guān)系,與序列處理問(wèn)題類似,因此可以使用合適的序列處理模型[7-11]解決密碼破譯問(wèn)題。

        基于此,本文采用一種基于深度學(xué)習(xí)的密碼破譯方法。首先,文章采用詞嵌入的編碼方式對(duì)輸入數(shù)據(jù)進(jìn)行編碼,從而將明文和密文轉(zhuǎn)化為可學(xué)習(xí)的存在某種內(nèi)在關(guān)系的數(shù)據(jù)對(duì),使其在確定數(shù)據(jù)輸入形式的同時(shí),保留序列之間的相關(guān)信息。其次,充分利用seq2seq(sequence to sequence)模型[12]實(shí)現(xiàn)多對(duì)多的特點(diǎn)進(jìn)行網(wǎng)絡(luò)學(xué)習(xí),成功解決了明文密文長(zhǎng)度匹配的問(wèn)題。最后,使用多表置換密碼的不同加密算法驗(yàn)證了模型的性能。仿真結(jié)果表明,無(wú)論哪種加密方式,所用模型都具有很好的破譯效果,破譯的準(zhǔn)確率高達(dá)99%。本文所提的破譯方法對(duì)研究其他密碼破譯問(wèn)題具有重要的參考意義。

        1 相關(guān)知識(shí)

        1.1 seq2seq模型

        seq2seq模型是一類端到端的算法框架,即序列到序列的轉(zhuǎn)換模型框架,在機(jī)器翻譯、自動(dòng)應(yīng)答等應(yīng)用場(chǎng)景上經(jīng)常出現(xiàn)。

        Seq2Seq由編碼器-解碼器[13](Encoder-Decoder)框架實(shí)現(xiàn)。Seq2seq模型包含3部分——編碼器、解碼器和固定長(zhǎng)度的語(yǔ)義向量(Context Vector),如圖1所示。從圖1可以看到,編碼是將源序列轉(zhuǎn)化為一個(gè)長(zhǎng)度固定的語(yǔ)義向量,而解碼的過(guò)程是將語(yǔ)義向量轉(zhuǎn)化為目標(biāo)序列。其中,語(yǔ)義向量中間語(yǔ)義編碼是編碼器最后一個(gè)時(shí)間步的狀態(tài),以此作為整個(gè)句子的語(yǔ)義向量。

        圖1 seq2seq結(jié)構(gòu)

        Seq2seq模型可以解決一對(duì)多、多對(duì)多的問(wèn)題,將其應(yīng)用于密碼破譯中,即無(wú)論明文密文的長(zhǎng)度是否相等,理論上都可以實(shí)現(xiàn)密碼的破譯,有利于將模型推廣到其他加密算法。

        1.2 詞嵌入

        數(shù)據(jù)以何種形式輸入網(wǎng)絡(luò),成為網(wǎng)絡(luò)設(shè)計(jì)的又一問(wèn)題。因此,結(jié)合現(xiàn)有的編碼形式,摒棄獨(dú)熱碼(One-hot)編碼方式,選擇詞嵌入(Word Embedding)[13]的方式處理數(shù)據(jù)。在數(shù)據(jù)量較大的情況下,使用One-hot編碼會(huì)造成較大的空間浪費(fèi),且One-hot編碼會(huì)導(dǎo)致序列相關(guān)信息的缺失。詞嵌入的方式可以通過(guò)網(wǎng)絡(luò)學(xué)習(xí)詞嵌入矩陣存儲(chǔ)數(shù)據(jù)的相關(guān)信息,能夠更多地保留源序列的特征值。訓(xùn)練網(wǎng)絡(luò)的過(guò)程中,每個(gè)嵌入的向量都會(huì)更新。使用詞嵌入進(jìn)行編碼,可以發(fā)現(xiàn)很多字符與字符之間的相似性,且能夠可視化字符之間的關(guān)系。相較下,選擇詞嵌入的方式處理數(shù)據(jù)更貼近需求。詞嵌入能夠把一個(gè)維數(shù)為所有詞的數(shù)量的高維空間嵌入到一個(gè)維數(shù)低得多的連續(xù)向量空間中,每個(gè)單詞或詞組被映射為實(shí)數(shù)域上的向量。結(jié)構(gòu)如圖2所示。

        圖2 詞嵌入關(guān)系

        1.3 多表置換密碼

        維吉尼亞密碼(Vigenere)是使用一系列凱撒密碼組成密碼字母表的加密算法,屬于多表密碼的一種簡(jiǎn)單形式。

        自動(dòng)密鑰密碼(Autokey Cipher)也是多表替換密碼,與維吉尼亞密碼密碼類似,但使用不同的方法生成密鑰。通常來(lái)說(shuō),它比維吉尼亞密碼更安全。自動(dòng)密鑰密碼主要有2種:關(guān)鍵詞自動(dòng)密鑰密碼和原文自動(dòng)密鑰密碼。

        Enigma是通過(guò)enigma機(jī)產(chǎn)生的一種多表替換密碼,明文密文之間的相互轉(zhuǎn)換需要對(duì)應(yīng)相同的轉(zhuǎn)子初始位置。相較于vigenere和autokey,enigma的生成過(guò)程更復(fù)雜。enigma是一種復(fù)式置換密碼。

        本文選擇3種安全程度不同的置換密碼進(jìn)行實(shí)驗(yàn),以此證明所用模型的正確性。

        2 模 型

        本文采用基于seq2seq的算法解決密碼破譯問(wèn)題,通過(guò)對(duì)現(xiàn)有明文密文對(duì)的分析,學(xué)習(xí)明文密文對(duì)之間復(fù)雜的映射關(guān)系,從而實(shí)現(xiàn)對(duì)密文的破譯。本文中,編碼器與解碼器均采用傳統(tǒng)的遞歸神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)實(shí)現(xiàn),具體采用GRU神經(jīng)單元搭建模型的架構(gòu)。

        模型的編碼器和解碼器的運(yùn)算過(guò)程分別表示為:

        其中,f和g都是激活函數(shù),其中g(shù)函數(shù)一般為softmax函數(shù)。

        Seq2seq模型能夠很好地解決一對(duì)多、多對(duì)多的問(wèn)題,能夠很好地適應(yīng)明文密文的長(zhǎng)度。模型結(jié)構(gòu)如圖3所示。

        圖3 模型結(jié)構(gòu)

        由結(jié)構(gòu)圖圖3可以看出,需要對(duì)現(xiàn)有密文進(jìn)行處理,采用詞嵌入的方式對(duì)其進(jìn)行編碼處理,并在訓(xùn)練過(guò)程中對(duì)其進(jìn)行更新,從而得到合適的詞嵌入矩陣。

        本文所用模型的seq2seq算法過(guò)程如下:

        輸入:已知的密文

        輸出:產(chǎn)生的明文

        1.對(duì)密文進(jìn)行編碼,編碼方式為詞嵌入;

        2.編碼后的數(shù)據(jù)輸入編碼器,得到語(yǔ)義向量C;

        3.對(duì)語(yǔ)義向量進(jìn)行解碼,經(jīng)過(guò)softmax層輸出得到解碼后的明文;

        4.使用負(fù)最大似然求loss,并求出訓(xùn)練過(guò)程的準(zhǔn)確率;

        5.loss.backward()。

        seq2seq算法描述了seq2seq模型的訓(xùn)練過(guò)程。在此過(guò)程中,語(yǔ)義向量C通常為編碼器最后一個(gè)隱藏節(jié)點(diǎn)或者多個(gè)隱藏節(jié)點(diǎn)的加權(quán)和。本文實(shí)驗(yàn)中,采用最后一個(gè)隱藏節(jié)點(diǎn)作為語(yǔ)義向量C。解碼器在t時(shí)刻的隱藏狀態(tài)h(t)由t-1時(shí)刻的隱藏狀態(tài)h(t-1)、輸出y(t-1)以及語(yǔ)義向量C共同決定。在解碼器的輸出端增加softmax層,輸出采用輸出概率最大的方式,有效提高了準(zhǔn)確率。

        3 實(shí)驗(yàn)結(jié)果

        實(shí)驗(yàn)中,編碼器與解碼器中的神經(jīng)網(wǎng)絡(luò)單元都選用GRU,激勵(lì)函數(shù)選用線性整流(Rectified Linear Unit,ReLu)函數(shù)。本文在NVIDIA TITAN X上進(jìn)行實(shí)驗(yàn)。

        在訓(xùn)練網(wǎng)絡(luò)的過(guò)程中,選擇了一種有條件的teacher-forcing訓(xùn)練模式,即達(dá)到一定條件后,使用真實(shí)的目標(biāo)輸出作為下一個(gè)輸入,而不是直接使用解碼器猜測(cè)的結(jié)果作為下一個(gè)輸入。使用teacherforcing能夠使得模型收斂更快,且有限定條件的使用teacher-forcing能夠避免不穩(wěn)定情況的出現(xiàn),從而達(dá)到更好的效果。

        在訓(xùn)練過(guò)程中需要記錄訓(xùn)練的準(zhǔn)確率,對(duì)準(zhǔn)確率的計(jì)算方式定義如下:

        其中,δi表示第i組輸出的明文是否與目標(biāo)值一致,即使僅有一位不相同也不能將其視為一致。若一致記為1,而num_testset表示測(cè)試集的大小。

        3.1 確定節(jié)點(diǎn)數(shù)

        由于實(shí)驗(yàn)所用的訓(xùn)練數(shù)據(jù)較多,本實(shí)驗(yàn)中設(shè)定批量大小為512。在隱藏節(jié)點(diǎn)選取問(wèn)題上,需要通過(guò)大量實(shí)驗(yàn)確定其個(gè)數(shù),實(shí)驗(yàn)結(jié)果如圖4所示,以autokey密碼為例進(jìn)行實(shí)驗(yàn)確定節(jié)點(diǎn)數(shù)。

        由圖4可以看出,在不同節(jié)點(diǎn)數(shù)情況下,準(zhǔn)確率隨迭代次數(shù)的增加而升高,當(dāng)準(zhǔn)確率達(dá)到一定程度時(shí),保持穩(wěn)定;隨著節(jié)點(diǎn)數(shù)的增加,網(wǎng)絡(luò)的收斂速度越來(lái)越快,網(wǎng)絡(luò)的穩(wěn)定性越來(lái)越高;低節(jié)點(diǎn)數(shù)時(shí),訓(xùn)練過(guò)程存在較多波動(dòng);隨著節(jié)點(diǎn)數(shù)的增加,網(wǎng)絡(luò)的訓(xùn)練越來(lái)越穩(wěn)定。在選定節(jié)點(diǎn)數(shù)時(shí),應(yīng)綜合考慮準(zhǔn)確率、穩(wěn)定性以及收斂速度。因此,從仿真結(jié)果可以明顯看出,當(dāng)節(jié)點(diǎn)數(shù)為512時(shí),網(wǎng)絡(luò)的穩(wěn)定性和收斂速度均為最優(yōu),但是其準(zhǔn)確率相較節(jié)點(diǎn)數(shù)位256時(shí)偏低。綜合考慮,選定節(jié)點(diǎn)數(shù)為256最合適。

        3.2 密碼破譯效果實(shí)驗(yàn)

        確定節(jié)點(diǎn)數(shù)后,對(duì)模型進(jìn)行訓(xùn)練。訓(xùn)練過(guò)程中,在不同加密算法下,準(zhǔn)確率、誤差函數(shù)隨迭代次數(shù)的變化圖如圖5、圖6和圖7所示。

        圖5 Autokey數(shù)據(jù)集節(jié)點(diǎn)數(shù)為256時(shí)準(zhǔn)確率、誤差與迭代步數(shù)的關(guān)系

        圖6 Vigenere數(shù)據(jù)集節(jié)點(diǎn)數(shù)為256時(shí)準(zhǔn)確率、誤差與迭代步數(shù)的關(guān)系

        圖7 Enigma數(shù)據(jù)集節(jié)點(diǎn)數(shù)為256時(shí)準(zhǔn)確率、誤差與迭代步數(shù)的關(guān)系

        由圖5、圖6和圖7可以看出,在不同加密算法的情況下,模型的準(zhǔn)確率和誤差函數(shù)的變化是同步的。準(zhǔn)確率隨迭代次數(shù)的增加而升高,誤差函數(shù)的變化則與之相反;訓(xùn)練過(guò)程中,模型具有很高的穩(wěn)定性;訓(xùn)練過(guò)程的準(zhǔn)確率高達(dá)100%。

        表1為在不同加密算法的情況下,測(cè)試階段的破譯準(zhǔn)確率。在訓(xùn)練好的、對(duì)訓(xùn)練數(shù)據(jù)的破譯率高達(dá)100%的模型下,對(duì)未知明文的密文進(jìn)行破譯。

        表1 三種加密算法破譯準(zhǔn)確率

        由表1可以明顯看出,針對(duì)3種不同的加密算法,該模型能夠很好地實(shí)現(xiàn)破譯功能,準(zhǔn)確率高達(dá)99%,說(shuō)明seq2seq模型在字符級(jí)密碼破譯方面有較為優(yōu)異的效果。

        4 結(jié) 語(yǔ)

        信息的安全問(wèn)題受到越來(lái)越多的關(guān)注,信息的加解密問(wèn)題成為當(dāng)今研究的熱點(diǎn)。相較于傳統(tǒng)的密碼破譯方法,基于深度學(xué)習(xí)的密碼破譯方法更高效,且一個(gè)合適的模型可以推廣到更多的加密算法上。因此,本文采用一種基于seq2seq模型的深度學(xué)習(xí)密碼破譯方法,首次將seq2seq模型應(yīng)用于密碼破譯問(wèn)題,將密碼破譯問(wèn)題轉(zhuǎn)換為序列處理問(wèn)題。模型中,采用詞嵌入的方式對(duì)數(shù)據(jù)進(jìn)行處理,摒棄one-hot編碼浪費(fèi)信息、占用大空間的弊端,充分利用密文之間的相互關(guān)系。以3種不同的多表置換密碼對(duì)模型進(jìn)行檢驗(yàn),仿真結(jié)果顯示,該模型在3種多表置換密碼的破譯問(wèn)題中準(zhǔn)確率高達(dá)99%,證明在字符級(jí)密碼破譯方面具有較為優(yōu)異的效果。

        但是,本文采用較為簡(jiǎn)單的加密算法對(duì)模型進(jìn)行檢驗(yàn),為了更好地證明其在字符級(jí)密碼破譯方面的效果,下一步需要對(duì)復(fù)雜的字符級(jí)加密算法進(jìn)行檢驗(yàn),并對(duì)其在字符級(jí)加密算法中進(jìn)行推廣。

        猜你喜歡
        模型
        一半模型
        一種去中心化的域名服務(wù)本地化模型
        適用于BDS-3 PPP的隨機(jī)模型
        提煉模型 突破難點(diǎn)
        函數(shù)模型及應(yīng)用
        p150Glued在帕金森病模型中的表達(dá)及分布
        函數(shù)模型及應(yīng)用
        重要模型『一線三等角』
        重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
        3D打印中的模型分割與打包
        久久亚洲私人国产精品va| 青青草在线免费观看在线| 三区中文字幕在线观看| 一二区成人影院电影网| 日本午夜免费福利视频| 久久99精品久久久66| 国产精品自拍视频免费看| 日韩精品人妻久久久一二三| 一区二区三区人妻无码| 久久成年片色大黄全免费网站 | 国产成人av大片大片在线播放| 亚洲色图视频在线| 女优av福利在线观看| 国产一区二区三区不卡在线观看| 人妻 色综合网站| 欧美激情αv一区二区三区| 国产精品亚洲一区二区三区正片 | 国产免费资源| 国产成人自拍视频在线观看网站| 美腿丝袜在线一区二区| 中文字幕亚洲乱码熟女在线| 国产在线美女| 国产三级一区二区三区在线观看| 女人的精水喷出来视频| 欧美日韩一卡2卡三卡4卡 乱码欧美孕交 | 国产精品久久免费中文字幕| 国产一区二区内射最近更新| 国产精品爆乳在线播放| 亚洲伊人av综合福利| 国产成人精品优优av| 国内精品无码一区二区三区| 久久久调教亚洲| 国产自拍在线视频91| 正在播放东北夫妻内射| 日韩欧美第一区二区三区| 久久精品国产亚洲av豆腐| 乱人伦中文视频在线| 怡春院欧美一区二区三区免费| 初尝人妻少妇中文字幕在线| 极品嫩模大尺度av在线播放| 越猛烈欧美xx00动态图|