999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種基于密文分析的密碼識別技術*

2016-11-12 07:32:00偉,談
通信技術 2016年10期
關鍵詞:分析

丁 偉,談 程

(1.海軍南海艦隊參謀部信息保障處,廣東 湛江 524001;2.中國電子科技集團公司第三十研究所,四川 成都 610041)

一種基于密文分析的密碼識別技術*

丁偉1,談程2

(1.海軍南海艦隊參謀部信息保障處,廣東 湛江 524001;2.中國電子科技集團公司第三十研究所,四川 成都 610041)

密碼分析過程中,密碼分析者往往不知道密碼系統使用了哪一種密碼,導致密碼分析工作困難重重。因此,介紹一種基于密文分析的密碼識別方法。首先介紹建立的密碼識別系統的工作原理和過程,然后利用該系統對5類常見分組密碼(AES、Blowfish、3DES、RC5和DES)進行識別。通過實驗結果分析發現,當訓練密文和測試密文的密鑰一致時,識別率能達到90%左右;而當密鑰不一致時,系統仍能夠以較高的識別率對AES與其他四類密碼進行兩兩識別。

密碼識別系統;密碼識別;SVM分類器;分組密碼;識別率

0 引 言

密 碼分析學專門研究密碼破譯方法,并用于衡量密碼體制安全性。它的一般原理為:密碼分析者在不知道密碼系統使用的密鑰情況下,從截獲得到的密文推斷出明文消息或密鑰。Kerckhoffs對密碼分析的基本假設中,闡述了密碼分析者已知密碼算法及其實現的全部細節,現有的密碼分析技術也幾乎都建立在密碼算法已知的基礎上。但是,實際上密碼分析者通常獲得的大部分都是密文數據,且對應的密碼算法是未知的。密碼算法已知是進行密碼分析的先決條件,如果密碼分析者在不知道密碼算法實現細節的情形下對密碼系統所使用的密碼進行識別,我們稱這一過程為密碼識別。進一步地,如果密碼分析者僅掌握一些密文數據,在這種場景下的分析過程稱之為基于密文分析的密碼識別。

從公開文獻來看,國內外關于密碼識別技術的研究并不多見。就目前來看,大部分對密碼識別技術的研究都是通過逆向分析手段,分析軟硬件中使用的密碼,如國內解放軍信息工程大學蔣烈輝、舒輝教授的團隊[1-3]。此外,國外有少部分學者對基于密文分析的密碼識別技術有一定研究。概括地講,對密碼識別技術的研究主要包括兩個方向:一是利用逆向分析技術進行密碼識別;二是基于唯密文進行密碼識別。本文針對方向二展開研究。相比方向一,方向二不需要掌握包含密碼算法的設備或模塊,僅基于一些密文數據來識別密碼,其研究更符合實際應用場景。

1 技術發展現狀分析

基于密文分析進行密碼識別的思想首先在古典密碼的識別中得到了實現。Pooja M設計了一種分類古典密碼的方案[4],包括置換密碼、代換密碼、維吉利亞密碼以及置換代換密碼。該方案分為四步,通過排除方式進行選擇,并基于字母使用頻率進行分析。從應用角度講,研究古典密碼識別已沒有多大實際意義。Manindra等人在現代密碼識別領域進行了更深入的研究[5-7]。文獻[5]對分組密碼DES和IDEA進行識別研究,利用線性規劃思想構造分類器,將密文分成大小為320 bit的塊,以密文塊為單位輸入進行預處理。先獲得好的分類器,然后根據不同密文情形分別建立四種模型,包括靜態模型、動態模型、拓展動態模型和子文件索引模型,并進行了相關的識別驗證。文獻[6]提出了重復加密模型,但實驗結果并不是很理想,于是提出隨機密鑰解密模型,基本思路是用隨機產生密鑰解密密文,將得到的“明文”作為識別模型的輸入進行密碼算法識別。文獻[7]通過改變各項參數對分類器性能進行優化調整,同時運用支持向量機得到一些較好的分類器。

A. Soni首次提出用Adaboost算法對密碼進行分類[8],通過構建比隨機猜測稍好的弱分類器,對各弱分類器進行訓練,最終得到一個強分類器用于對密碼進行識別,但最終平均識別率僅維持在55%左右。S. Mishra等人將密文數據檢測、熵值分析和字典決策樹法結合使用[9],對AES、DES和Blowfish密碼進行識別。他指出,分組密碼二進制密文中0和1幾乎是均勻分布的,尤其是AES密碼。但在數據量足夠大的情況下,還是能捕獲到DES和Blowfish密文的一些特征。另外,有學者對AES標準的5個候選算法進行識別研究[10-12]。R. Torres等人[10]運用以Calisnki-Harabasz索引作為評價函數的遺傳算法來尋找不同密碼對應的密文中隱藏特征。W. Souza等人[11]運用聚類和分類的思想,雖然在CBC模式下根據訓練得到的特征對密文分類效果不佳,但是仍然可以對密文進行聚類。V. Lomte等人[12]以神經網絡為模型,提出了語言法和信息恢復法對各密文進行識別。

基于密文分析的密碼識別技術雖能夠克服基于逆向分析的密碼識別技術的不足,更符合實際應用場景,但該技術處于起步階段。目前,國內尚無關于這方面的公開研究成果,國外也僅有少數人研究。總體來講,當前基于密文分析的密碼識別工作僅僅做了一些探索性研究,很多實驗密文數據不符合實際情形,如所有密文對應同一密鑰,且沒有嚴格限制測試所用的密文文件大小。在真實密碼分析場景中,截獲的密文數據包大小有限,且多次截獲的密文對應的密鑰很可能不一致。本文充分考慮密文文件大小和加密密鑰一致性等問題,針對AES、Blowfish、3DES、RC5和DES這5種常見的分組密碼進行識別研究。

2 識別模型建立

本文考慮ECB模式下對幾種常見分組密碼進行識別。基于機器學習主流算法之一支持向量機(Support Vector Machine,SVM)構造分類器,從而建立基于密文分析的密碼識別模型和系統,原理如圖1所示。在該密碼識別系統中,按要求輸入密文數據,即可輸出得到識別出的密碼名稱。

圖1 密碼識別系統的基本原理

整個密碼識別過程分為兩個步驟進行。首先,利用已知密碼名稱的密文文件對SVM分類器進行訓練,然后通過這些分類器對未知密碼名稱的密文文件進行識別。我們建立的密碼識別系統的具體工作過程,如圖2所示。

圖2 密碼識別系統的工作過程

首先,分別生成若干基于AES、Blowfish、3DES、RC5和DES密碼算法的密文文件,其中一部分作為訓練文件,剩余部分作為測試文件。通過從訓練密文文件中提取密文特征,進而篩選出關鍵特征構建密文特征匹配庫;結合SVM算法,建立基于密文分析的密碼識別模型。提取測試密文文件的密文特征,然后傳送至識別模型即可進行密碼識別。基于密文分析的密碼識別主要由K個分類器來完成,其中K由密文特征匹配庫中的密碼種類數k決定,具體分為兩種情形。

情形一,一對多。每一個分類器將其中的一類密碼和余下k-1類密碼分開(將余下k-1類密碼看成同一類),則分類器個數K=k。

情形二,一對一。任意兩類密碼之間構造一個分類器,每個分類器識別兩種不同類別的密碼,則分類器個數K=k(k-1)/2。

本文考慮一對一的方式進行密碼識別。計數器用于對分類結果進行統計,從而識別得到測試密文文件所用的密碼。通過產生大量測試密文文件,觀察識別結果的同時,不斷調整識別模型中的算法參數,從而優化密碼識別系統,改善密碼識別效果。

3 實驗結果與分析

根據前面建立的基于密文分析的密碼識別系統,對AES、Blowfish、3DES、RC5和DES密碼進行識別。準備220個相同大小的明文文本文件,對應于上述各密碼算法,在ECB模式下加密得到1 100個密文文件(每種密碼對應220個密文文件)。對應每一種密碼,40個密文文件用于訓練,剩余的180個密文文件按照每組20個進行分組,進行9次測試。顯然,加密密鑰和密文文件大小對識別率會產生較大影響,因此在實驗中需考慮這些因素。

3.1訓練密文和測試密文的密鑰一致

首先考慮訓練密文和測試密文對應的加密密鑰一致的情形。對AES、Blowfish、3DES、RC5和DES密文文件的識別結果如表1所示。

表1 密鑰一致時的識別結果(5類密碼)

第1列表示訓練和測試密文文件的大小,第2列表示9次測試的平均識別率,第3列表示這9個識別率的標準偏差值。從表1中數據可以看出,密文文件越大,識別率越高。當密文文件大小為4 KB時,平均識別率雖然只有29.67%,但仍高于隨機猜測正確率20%。標準差值反映了識別結果的可靠性。一般來說,該值越小,說明識別結果可信程度越高。當密文文件不低于100 KB時,識別率幾乎達到95%以上,且標準差也小于5%,說明提出的識別系統在密文文件較大時能達到一個較好的識別效果。當密文文件大小為20 KB時,雖然平均識別率達到85.11%,但標準差達到了9.75%,說明在此條件下進行識別并不能保證每次都能達到較高的識別率。

對于Blowfish、3DES、RC5和DES密碼,分組長度為64 bit,而AES的分組長度為128 bit,因此考慮對除AES外的其余四種密碼對應的密文文件進行識別。如表2所示,當密文文件大小為100 KB或500 KB時,識別率達到了100%,且標準差為0。

表2 密鑰一致時的識別結果(4類密碼,AES除外)

比較表1和表2的結果,顯然可以發現Blowfish、3DES、RC5和DES比AES更容易被識別。當密文文件為4 KB時,表1中的識別率僅為29.67%,而表2中達到了98.33%。

3.2訓練密文和測試密文的密鑰不一致

當訓練密文和測試密文對應的加密密鑰一致時,只要密文文件足夠大,提出的密碼識別系統能夠以一個較高的識別率識別出上述幾種分組密碼。在現實環境下,我們能夠以任意密鑰生成任意多的訓練密文,而截獲到的密文(即測試密文)對應的密鑰卻是未知的。因此,基本上排除了訓練密文和測試密文對應的加密密鑰一致的可能性,密鑰不一致更符合實際情形。對應于AES、Blowfish、3DES、RC5和DES密碼,各生成9組密文文件,且訓練密文文件和9組密文文件的密鑰均不一致。如表3所示,當密文文件大于20 KB時,平均識別率大概維持在35%~40%范圍。顯然,訓練密文和測試密文的密鑰不一致時的識別效果要比密鑰一致時差很多,但仍高于隨機猜測正確率。

表3 密鑰不一致時的識別結果(5類密碼)

表4為密鑰不一致時,Blowfish、3DES、RC5和DES密文的識別結果。憑直覺認為,識別的密碼種類數減少,平均識別率就應提高。但表4中的最大平均識別率只有24.86%,甚至低于25%的隨機猜測正確率。這表明當訓練密文和測試密文的密鑰不一致時,系統對Blowfish、3DES、RC5和DES這四種密碼的識別是失敗的。在加入AES密文文件后,反而無形中提高了識別率,表明當訓練密文和測試密文的密鑰不一致時,AES的密文特征與其他四種密碼存在較顯著的差異。

表4 密鑰不一致時的識別結果(4類密碼,AES除外)

3.3密碼間兩兩識別

由表3和表4可知,當訓練密文和測試密文的密鑰不一致時,對多類密碼進行識別的效果不太理想。在密鑰不一致的基礎上,考慮對這5類密碼進行兩兩識別,識別結果如表5所示。當密文文件大于20 KB,AES和其他四種密碼進行兩兩識別的識別率總能達到85%以上。而Blowfish、3DES、RC5和DES間進行兩兩識別,識別率維持在50%左右,表明此情形下的密碼識別是不成功的。這些結果也驗證了3.2節給出的結論。

表5 密鑰不一致時的5類密碼間兩兩識別結果/(%)

4 結 語

本文提出一種基于密文分析的密碼識別技術,并建立密碼識別系統,針對AES、Blowfish、3DES、RC5和DES5類常見分組密碼展開識別研究。通過密碼識別實驗發現,當訓練密文和測試密文的加密密鑰一致時,識別效果較好;當加密密鑰不一致時,識別效果較差,但可以很好地對包含AES在內的密碼進行兩兩識別。

[1] 李繼中,蔣烈輝,尹青等.基于Bayes決策的密碼算法識別技術[J].計算機工程,2008,34(20):159-160,163. LI Ji-zhong,JIANG Lie-hui,YIN Qing,et al.Cryptogram Algorithm Recognition Technology based on Bayes Decision-making[J].Computer Engineeri ng,2008,34(20):159-160,163.

[2] 張經緯,舒輝,蔣烈輝等.公鑰密碼算法識別技術研究[J].計算機工程與設計,2011,32(10):3243-3246,3273. ZHANG Jing-wei,SHU Hui,JIANG Lie-hui,et al.Research on Public Key’s Cryptography Algorithm Recognition Technology[J].Computer Engineering and Design,2011,32(10):3243-3246,3273.

[3] 李繼中,蔣烈輝,舒輝等.基于動態循環信息熵的密碼函數篩選技術[J].計算機應用, 2014,34(04):1025-1028,1033. LI Ji-zhong,JIANG Lie-hui,SHU Hui,et al.Technique of Cryptographic Function Filtration based on Dynamic Loop Information Entropy[J].Journal of Computer Applicati-ons,2014,34(04):1025-1028,1033.

[4] Pooja M.Classification of Ciphers[D].Department ofComputer Science and Engineering,Indian Institute of Technology,2001.

[5] Girish C.Classication of Modern Ciphers[D].Department of Computer Science and Engineering,Indian Institute of Technology,2002.

[6] MBrahmaji M.Classication of RSA and Idea Ciphers[D]. Department of Computer Science and Engineering,Indian Institute of Technology,2003.

[7] Saxena G.Classication of Ciphers Using Machine Learning[D].Department of Computer Science and Engineering,Indian Institute of Technology,2008.

[8] Soni A.Learning Encryption Algorithms from Ciphertext[R].BTP report,Department of Computer Science and Engineering,Indian Institute of Technology.

[9] Mishra S,Bhattacharjya A.Pattern Analysis of Cipher Text:A Combined Approach[C].2013 International Conference on Recent Trends in Information Technology:393-398.

[10] Torres R,Oliveira G,Xexéo J,et al.Identification of Keys and Cryptographic Algorithms Using Genetic Algorithm and Graph Theory[J].IEEE LATIN AMERICA TRANSACTIO NS,2011,9(02):178-183.

[11] Souza W,Carvalho L,Xexéo J.Identification of N Block Ciphers[J].IEEE LATIN AMERICA TRANSACTIO NS,2011,9(02):184-191.

[12] Lomte V,Shinde A.Review of a New Distinguishing Attack Using Block Cipher with a Neural Network[J].International Journal of Science and Research,2014,3(08):733-736.

丁 偉(1977—),男,碩士,高級工程師,主要研究方向為密碼對抗、保密通信;

談 程(1988—),男,碩士,工程師,主要研究方向為密碼對抗。

An Approach of Identifying Cipher based on Ciphertext Analysis

DING Wei1, TAN Cheng2
(1.Information Assurance Department of Naval Staff of South Sea Fleet, Zhanjiang Guangdong 524001, China;2.No.30 Institute of CETC, Chengdu Sichuan 610041, China)

In fact, the details about the cryptographic algorithm applied in a cryptosystem are often unknown to one cryptanalyst. When a cryptanalyst works on cryptanalysis, he will have much trouble if he doesn’t know anything about which kind of cipher is used. In this paper, we introduce an approach to identifying cipher with no other information but ciphertext. Firstly, we present the whole implementation architecture of our identification system of cipher. Then we apply our identification system in identifying 5 common block ciphers, namely AES, Blowfish, 3DES, RC5 and DES. Through analyzing the experiment results, we conclude that the identification rate can obtain around 90% if keys are the same for training and testing ciphertexts. When we use different keys for training and testing ciphertexts, we can still identify AES from anyone of the other 4 ciphers with a high identification rate in one to one identification.

identification system of cipher; cipher identification; SVM classifier; block cipher; identification rate

TN919.72

A

1002-0802(2016)-10-1382-05

10.3969/j.issn.1002-0802.2016.10.022

2016-06-22;

2016-09-13

data:2016-06-22;Revised data:2016-09-13

猜你喜歡
分析
禽大腸桿菌病的分析、診斷和防治
隱蔽失效適航要求符合性驗證分析
電力系統不平衡分析
電子制作(2018年18期)2018-11-14 01:48:24
電力系統及其自動化發展趨勢分析
經濟危機下的均衡與非均衡分析
對計劃生育必要性以及其貫徹實施的分析
現代農業(2016年5期)2016-02-28 18:42:46
GB/T 7714-2015 與GB/T 7714-2005對比分析
出版與印刷(2016年3期)2016-02-02 01:20:11
中西醫結合治療抑郁癥100例分析
偽造有價證券罪立法比較分析
在線教育與MOOC的比較分析
主站蜘蛛池模板: 思思99热精品在线| 午夜高清国产拍精品| 欧美三级视频网站| 114级毛片免费观看| 国产成在线观看免费视频| 一级毛片在线免费看| a级毛片在线免费观看| 一级毛片免费观看久| 色欲国产一区二区日韩欧美| 成人免费视频一区二区三区| 国产第二十一页| 色成人综合| 国内自拍久第一页| 亚洲国产中文在线二区三区免| 亚洲成人播放| 666精品国产精品亚洲| 熟妇人妻无乱码中文字幕真矢织江| 国产精品无码翘臀在线看纯欲| 国产在线一区视频| 亚洲妓女综合网995久久| 中国精品久久| 亚洲国产日韩在线观看| 一级毛片视频免费| 在线观看国产小视频| 国产精品自在线天天看片| 亚洲毛片一级带毛片基地| 亚洲天堂成人在线观看| 在线免费无码视频| 粗大猛烈进出高潮视频无码| 亚洲国语自产一区第二页| 亚洲欧美日韩色图| 国产网站黄| 波多野结衣第一页| 无码国内精品人妻少妇蜜桃视频 | 中文无码日韩精品| 国产精品美女自慰喷水| 国产精品自拍合集| 99久久精品免费看国产免费软件 | 亚洲一区黄色| 国产精品太粉嫩高中在线观看 | 91精品国产91欠久久久久| 国产精品香蕉在线| 91小视频在线观看免费版高清| 欧美日韩第二页| 在线看免费无码av天堂的| 91免费国产在线观看尤物| 欧美在线观看不卡| 国产女人在线| 免费99精品国产自在现线| 精品一区二区三区波多野结衣| 色偷偷av男人的天堂不卡| 青青青国产在线播放| 国产第一页第二页| 亚洲第一成年免费网站| 久久综合色视频| 992Tv视频国产精品| 久久婷婷五月综合97色| 亚洲欧美另类专区| 久久久精品无码一区二区三区| 91啦中文字幕| 亚洲欧美综合在线观看| 福利小视频在线播放| 亚洲色图在线观看| 国产成人综合久久| 亚洲性视频网站| 五月婷婷激情四射| 国产一级在线播放| 国产成人综合日韩精品无码首页 | 五月婷婷丁香色| 亚洲黄色成人| 色综合成人| 网友自拍视频精品区| 久久 午夜福利 张柏芝| 欧美在线精品一区二区三区| 日韩欧美视频第一区在线观看| 欧美日韩北条麻妃一区二区| 免费观看国产小粉嫩喷水| 欧美中文字幕无线码视频| 亚洲国模精品一区| 亚洲成网777777国产精品| 精品国产成人高清在线| 一本大道AV人久久综合|