李悅++朱光亞 甘楠 王高麗



摘要: 物聯網和RFID等設備的普及給密碼學提出了新的要求,為了能夠在資源受限的傳感節點上實施通信保護和隱私保護,大量輕量級加密算法被提出。mCrypton是明文分組長度為64 bit的輕量級分組密碼算法,共有3種可用密鑰長度:64 bit、96 bit和128 bit。本文提出了針對mCrypton-96的4輪mCrypton不可能差分路徑和7輪mCrypton的不可能差分分析,同時利用了mCryption 的S盒性質和密鑰生成算法的弱點對不可能差分分析進行了改進,實驗結果表明和傳統的差分分析相比,本文提出的不可能差分分析方法降低了攻擊的時間復雜度和數據復雜度。
關鍵詞: 不可能差分分析; 分組密碼算法; 密碼算法分析; mCrypton
中圖分類號:TP309
文獻標志碼:A
文章編號:2095-2163(2017)04-0017-04
0引言
作為當今首要流行的信息保護手段,分組密碼算法的應用范圍也日趨廣泛,同時隨著無線傳感器網絡、物聯網和RFID的高度普及,當這些輕量級硬件需要對安全通信和數據提供保護時就會使用輕量級加密算法,近年來則已陸續推出眾多的輕量級加密算法,諸如:mCrypton、SIMON、LED、Zorro、mCrypton、PRESENT、Piccolo、Klein、XTEA、DESL、HIGHT、CLEFIA、Twine、KATAN 和 KTANTAN等。在此基礎上,也有更多的專家學者轉而致力于展開了對輕量級分組密碼的分析方法的研發設計。除了經典的差分分析,中間相遇攻擊、不可能差分分析、積分分析、相關密鑰攻擊、滑動攻擊和零線性相關分析也開始紛紛應用在各種輕量級分組密碼算法上。本文的分析目標是mCrypton算法,該算法是由Lim等人在2006年提出的一個適用于RFID和小型傳感器節點的輕量級分組密碼算法[1],這是一個分組長度為64 bit的分組密碼算法,根據密鑰長度的分類有3種版本:64 bits、96 bits和128 bits,而將其應用在硬件條件受限制的情況時,可以根據具體場景選擇合適的密鑰長度。例如在RFID的應用中,因其對讀寫速度和信息加解密速度呈現出極高要求,即需依據硬件條件選取一種具有最佳適應性的版本。另需提及,對mCrypton的研究成果可參見文獻[2-7]。
不可能差分攻擊是差分攻擊的變種之一。研究可知,與經典的差分分析利用高概率差分來恢復密鑰的情況相反,不可能差分攻擊是利用排除那些導致概率為0的差分出現的密鑰,重點是基于正確的密鑰加密后的密文不會出現這樣的差分。這一理論是由Knudsen和Biham分別論述并先后提出的[8-9],Knudsen在對DEAL的算法進行安全性分析時,發現該算法存在天然的5輪不可能差分,從而對6輪DEAL算法的安全造成威脅。1999年,Biham等人在研究Skipjack算法時提出了不可能差分這個概念[10],在其中解釋了如何采用中間相遇攻擊尋找不可能差分。輕量級分組密碼出現之后,不可能差分攻擊對該類算法的分析研究也取得了一系列成果進展,例如王慶菊等人在2014年利用不可能差分分析成功地實現了對SIMON32和SIMON48的攻擊[11]。文獻[12]中,Yukiyasu等人使用不可能差分分析探討了CLEFIA算法。文獻[13]中運用不可能差分分析對LBlock、SIMON、CLEFIA和Camellia算法獲得了滿意的研究效果。
綜上論述可知,本文參考4輪AES不可能差分路徑和7輪AES不可能差分分析攻擊,研究提出了4輪mCrypton的不可能差分路徑和7輪mCrypton不可能差分分析,并使用S盒性質和mCrypton的密鑰生成算法的弱點,最終得出的時間復雜度為257次7輪mCrypton加密,空間復雜度為249.3個字節,數據復雜度為254.3個明文。endprint